Thứ Ba, 9 tháng 4, 2019

Khác Biệt Giữa "git fetch" và "git pull"


Khác Biệt Giữa "git fetch" và "git pull"

Trong bài viết này chúng ta sẽ tìm hiểu về sự khác biệt giữa git fetch và git pull. Tuy nhiên trước khi bắt đầu thì tôi xin phép lưu ý với các bạn về cấu trúc của một Git repository trên máy local sẽ gồm có 3 phần:
  • Working copy: Chứa các file ở commit hiện tại (hay HEAD).
  • Staging index: Chứa các thay đổi đã được thêm vào.
  • Repository: Chứa các commit version với các file tương ứng
Khác Biệt Giữa

Câu lệnh  git fetch

Khi chạy câu lệnh git fetch $remote_origin, Git sẽ tải về dữ liệu của tất cả các branch của repository trên remote server nằm tại địa chỉ quy định bởi $remote_origin và cập nhật dữ liệu này với dữ liệu của cách branch phía dưới máy local.
Tuy nhiên git fetch không cập nhật dữ liệu của working copy. Điều này có nghĩa là nếu như có bất cứ thay đổi (commit) nào trên remote server thì chúng cũng không ảnh hưởng tới các tập tin, thư mục của bạn. Tuy nhiên nếu bạn chạy checkout một nhánh nào đó và chạy câu lệnh:
$ git status
Thì lúc này Git sẽ hiển thị cho bạn biết dữ liệu tại working copy có gì khác so với dữ liệu trên remote server hay không.

Không có nhận xét nào:

Đăng nhận xét