Tin tức và phân tích của tất cả các thiết bị di động

Cách lấy kho lưu trữ Git trên Linux

Git định nghĩa một quy trình kiểm soát phiên bản để chia sẻ các dự án như thế nào. Có nhiều trang web cho phép bạn lưu trữ các dự án Git của mình. GitHub là lựa chọn phổ biến nhất, Bitbucket là một lựa chọn thay thế phổ biến khác, cả hai đều cho phép các tài khoản miễn phí có thể tạo kho lưu trữ công cộng hoặc riêng tư không giới hạn. GitLab cung cấp một giải pháp thay thế tự lưu trữ cho phép phát triển riêng tư mà không cần dựa vào lưu trữ của bên thứ ba.

Quá trình tải xuống kho lưu trữ Git lần đầu tiên được gọi là nhân bản. Nhân bản bao gồm tất cả thông tin về kho lưu trữ tại thời điểm này, tuy nhiên, để giữ cho kho lưu trữ được cập nhật theo thời gian, bạn phải tải xuống các phiên bản mới. Để thực hiện việc này, chỉ cần mở một cửa sổ đầu cuối trong thư mục có phiên bản cục bộ của kho lưu trữ và gõ lệnh “git pull”.

Thao tác của lệnh này đặc biệt đơn giản nếu bạn chỉ muốn tải xuống phiên bản cập nhật từ kho lưu trữ; phiên bản cục bộ sẽ được cập nhật để phù hợp với phiên bản từ xa. Tuy nhiên, bạn có thể nhận thấy rằng sự cố có thể xảy ra nếu bạn đã thực hiện các thay đổi đối với phiên bản cục bộ của mình.

Lệnh “git pull” thực sự thực thi hai lệnh riêng biệt “git fetch” và “git merge FETCH HEAD”. Lệnh con “git fetch” đặc biệt kéo phiên bản mới nhất từ ​​kho lưu trữ trực tuyến và lưu trữ tạm thời. Sau đó, lệnh con “git merge FETCH HEAD” sẽ hợp nhất các thay đổi cục bộ vào phiên bản đã tải xuống, ưu tiên các cam kết gần đây nhất.

Xung đột giữa các phiên bản cục bộ và từ xa

Lý tưởng nhất là trong một kịch bản hợp nhất, sẽ không có xung đột và quá trình hợp nhất sẽ tự động hoàn thành. Việc hợp nhất có thể đặc biệt dễ dàng nếu một số thay đổi đã được thực hiện hoặc nếu các thay đổi cục bộ không ảnh hưởng đến các thay đổi từ xa. Tuy nhiên, nếu có những thay đổi phức tạp xung đột trong cùng một phần của mã, Git sẽ tạo ra một lỗi hợp nhất.

Tại thời điểm này, bạn có thể hủy hợp nhất bằng lệnh “git merge –abort” hoặc cố gắng giải quyết xung đột theo cách thủ công. Các lệnh “git mergetool” và “git diff” cung cấp một ví dụ đồ họa về sự khác biệt sẽ giúp bạn dễ dàng xem những thay đổi nào cần được áp dụng theo cách thủ công để cho phép quá trình hợp nhất hoàn tất. Sau khi tất cả các xung đột được giải quyết, hãy gõ lệnh “git merge –continue” để hoàn tất việc hợp nhất.

Lệnh “git mergetool” sẽ mở một công cụ đồ họa như thế này để giúp bạn giải quyết xung đột theo cách thủ công.