Tôi chỉ có một câu hỏi nhanh về git - làm thế nào tương thích ngược là kho git? Ví dụ, tôi đã tạo một kho lưu trữ bằng cách sử dụng git 1.6.4 và kịch bản lệnh svn2git ruby, nhưng tôi muốn đặt nó trên một máy đang chạy Debian Lenny, có git 1.5.6.5. Tôi vẫn có thể tương tác với kho lưu trữ đúng cách?Git kho lưu trữ tương thích ngược
Trả lời
Tính năng lưu trữ thông tin thực sự cực kỳ lạc hậu về điều này, đó là tất cả những gì bạn lo lắng trong trường hợp này. Tôi không phải là một chuyên gia toàn diện, nhưng tôi nghi ngờ điều đó đã thay đổi kể từ lần phát hành ổn định đầu tiên.
Vấn đề tương thích duy nhất tôi có thể nghĩ đến là nếu hai phiên bản git đang làm việc trên cùng một repo (không phải bản sao) và có các tùy chọn/bí danh được đặt trong .git/config hoạt động trong phiên bản mới hơn phiên bản nhưng không hoàn toàn được triển khai trong phiên bản cũ ... nhưng ngay cả khi đó bạn cũng phải thử khá nhiều với phiên bản này. Và một lần nữa, điều này không liên quan gì đến thông tin thực tế trong repo, chỉ là các lệnh bạn sử dụng để quản lý nó. Đó là nơi mà sự phát triển của git đang diễn ra.
Có rất ít thay đổi không tương thích trong bố cục kho git; không tương thích theo nghĩa là phiên bản cũ hơn không thể xử lý kho lưu trữ được tạo bằng phiên bản mới hơn hoặc thực hiện trao đổi (tìm nạp hoặc đẩy) với máy chủ mới hơn.
Bạn nên kiểm tra RelNotes (ví dụ: here) để tìm xem có sự thay đổi không tương thích nào giữa các phiên bản bạn sử dụng hay không.
Một số (có thể là tất cả) những thay đổi incompatibile là:
- submodules hỗ trợ: phiên bản git trước hỗ trợ submodule đã được giới thiệu trong lõi git sẽ không thể để xử lý các kho lưu trữ trong đó sử dụng các môđun con (nó không hiểu các mục nhập subtree/gitlink)
- refs được đóng gói: phiên bản git cũ sẽ không thể tìm nạp qua HTTP từ kho lưu trữ mới hơn sử dụng refs được đóng gói (
.git/packed-refs
). Tương tự với git cũ bằng cách sử dụng cùng một kho lưu trữ như git mới đã được đóng gói refs - bù đắp đồng bằng packfiles: cũ git không hiểu phiên bản mới hơn (nhỏ gọn hơn) của git packfile (ofs-delta). Đây không phải là vấn đề khi tìm nạp và đẩy, vì có sự khám phá các tính năng mà máy khách hỗ trợ bởi máy chủ.
Không ai trong số đó nằm trong khoảng từ 1.6.4 đến 1.5.6, tôi nghĩ vậy.
- 1. git kho lưu trữ nhân bản kho
- 2. Git, xóa kho lưu trữ
- 3. Tạo kho lưu trữ git chứa một kho git khác
- 4. Các kho lưu trữ git lồng nhau?
- 5. Quản lý nhiều kho lưu trữ git
- 6. Biểu tượng kho lưu trữ Git
- 7. đặt kho lưu trữ ftp bằng git
- 8. Xóa kho lưu trữ git trên Bitbucket?
- 9. git khi thay đổi kho lưu trữ
- 10. BackupAgent tương thích ngược
- 11. Ghi đè kho lưu trữ git từ xa với kho lưu trữ của tôi
- 12. Sử dụng kho lưu trữ Git cục bộ với kho lưu trữ Subversion chính
- 13. Git "dường như không phải là kho lưu trữ git"
- 14. Deserialization tương thích ngược
- 15. Nhiều kho lưu trữ Git cho từng dự án Eclipse hoặc một kho Git
- 16. Tự động phản chiếu kho lưu trữ git
- 17. git xuất từ kho lưu trữ từ xa github
- 18. git hợp nhất các kho lưu trữ khác nhau?
- 19. Tìm kiếm kho lưu trữ khóa-giá trị tương thích với bộ nhớ trong java
- 20. Gọi một Kho lưu trữ từ Kho lưu trữ
- 21. Lưu trữ kho lưu trữ OSGI OBR?
- 22. Công tắc tương thích ngược
- 23. Chuyển đổi kho lưu trữ từ git thành subversion
- 24. Nhiều dự án svn vào một kho lưu trữ git?
- 25. Cách chia sẻ tệp trên các kho lưu trữ git?
- 26. Xóa git hỏng blob khỏi kho lưu trữ
- 27. Cách chọn lọc sao chép kho lưu trữ git
- 28. Không thể đẩy tới kho lưu trữ Git
- 29. git đẩy lỗi masteroku: Kho lưu trữ không tìm thấy
- 30. Git reset --hard và một kho lưu trữ từ xa
Vâng, tôi biết rằng trong bản phát hành đầu 1.5, định dạng kho lưu trữ đã được thay đổi, nhưng tôi đoán vậy thôi. Cảm ơn, tôi có thể tiến hành công việc của mình. Tôi tự hỏi, liệu gitosis có vấn đề với các phiên bản cũ hơn không? Tôi muốn thiết lập gitosis trên máy chủ Lenny mới này. Tôi đoán nó sẽ có thể nhận được đẩy và các công cụ tốt. – Ibrahim
Một số thay đổi với 1,5, nhưng hãy xem tại đây mức độ thận trọng của chúng: http://www.kernel.org/pub/software/scm/git/docs/RelNotes-1.5.0.txt Những thứ đã thay đổi mặc định thiết lập, làm việc từ phiên bản 1.4.3 (ít nhất). – u0b34a0f6ae
Ha! Phá hủy danh tiếng hoàn toàn độc ác của bạn với 666 với +1! – Bombe