Git pull và Git fetch tương tự như đính hôn và kết hôn tài sản thuộc về ai?

Nội dung bài viết

Video học lập trình mỗi ngày

Em ơi pull về đi... À khoan fetch đi em? Cẩn thận chắc cú hơn. Giọng ông anh dõng dạc và lớn tiếng hơn mọi hôm, làm tôi cũng e dè và sợ hãi. Mé có chuyện gì đây...

Tôi âm thầm nghĩ bụng chắc là có chuyện gì đó nên đại ca mới bảo nên chạy lệnh git fetch. Chứ có đâu hôm nào mà Đại ca bảo zậy đâu.

Khuyến nghị: Fix nhanh gọn: Please commit your changes or stash them before you merge

Ở đây có bạn nào chưa biết về git pullgit fetch thì nhân tiện tôi xin nói qua một chút. Phương châm của tips javascript là biến các điều phức tạp thành đơn giản. Cho nên phần này không ngoại lệ.

Đơn giản để hiểu là thế này. Hai khái niệm git pullgit fetch giống như đám hỏi và đám cưới vậy. git fetch kiểu như đám hỏi (đính hôn), nghĩa là chưa có cưới (merge), còn nếu dùng git pull nghĩa là đã làm đám cưới (kết hôn), không thể uống thuốc hối hận. Đi sâu hơn một chút thế này.

Git Fetch - Đính hôn

Đối với Lập trình viên thì việc đính hôn giờ đây là xa xỉ, há há... Cho nên chỉ có tưởng tượng là bạn chuẩn bị giai đoạn đính hôn. Thời gian đính hôn là thời gian để thu thập thông tin, tìm hiểu sở thích của một ai đó (source của ai đó) và chuẩn bị cho ngày trọng đại. Tương tự, git fetch giống như một sự tương tác trong thế giới Git. Khi bạn thực thi lệnh git fetch, Git sẽ truy xuất các thay đổi mới nhất từ một kho lưu trữ từ xa, cho phép bạn xem những người khác đang làm gì. Nó cập nhật bản sao local của kho lưu trữ mà không hợp nhất bất kỳ thay đổi nào với nhánh hiện tại của bạn. Hoạt động này hoàn toàn không sửa đổi thư mục làm việc của chúng ta. Có nghĩa là tài sản chúng ta vẫn đang riêng chưa đưa cho vợ.

Git Pull - Kết hôn

Bây giờ, hãy chuyển trọng tâm sang đám cưới (kết hôn). Đám cưới tượng trưng cho sự kết hợp của hai cá nhân (merge), nơi họ chính thức merge cuộc sống của mình với nhau. Trong Git, git pull tương đương với một đám cưới. Khi bạn thực hiện git pull, Git không chỉ tìm nạp những thay đổi mới nhất từ kho lưu trữ từ xa mà còn hợp nhất những thay đổi đó vào nhánh hiện tại của bạn.

Nó tập hợp các thay đổi local của chúng ta và thao tác này sửa đổi thư mục làm việc của chính bạn, phản ánh trạng thái đã merge. Và điều này tương đương là tài sản chúng ta đã bị vợ tịch thu.

Anh em hãy cẩn thận... về pull và fetch.

Có thể bạn đã bị missing