Các phương pháp và mẹo tốt nhất để sử dụng git để giao tiếp với kho lưu trữ CVS là gì?Các phương pháp hay nhất để sử dụng git với CVS
Trả lời
Tôi đã viết câu trả lời cho một câu hỏi tương tự here.
Điều này hoạt động đáng ngạc nhiên khi bạn buộc phải tiếp tục đẩy các thay đổi vào một kho lưu trữ CVS trung tâm.
Tôi chỉ làm việc với các tương tác Git-CVS để giới thiệu Git cho một người bạn, nhưng nó rất đơn giản.
- Bạn cần cài đặt bản sao hiện tại
cvsps
.Git cvsimport
sử dụng quyền này để truy cập lịch sử CVS. Chúng tôi nhận thấy rằng, đối với một dự án lớn, inital thiết lập là nhiều nhanh hơn bằng cách lấy một bản sao đầy đủ của repo CVS vào máy tính của bạn, và làm
git cvsimport
địa phương:$ rsync rsync://yourprojecthost.com/cvsroot/yourproject/* $ mkdir myproject.git $ cd myproject.git $ git cvsimport -p -x -v -d :local:/path/to/cvsroot/yourproject
Lưu ý rằng -x sau -p là rất quan trọng. Điều này vượt qua -x để cvsps. Để biết thêm thông tin, vui lòng xem cvsps man page.
Tôi nghĩ rằng có một sai lầm/trong bước 3. –
@PeterBurns: Đó là ... Nó phải là 'git cvsimport -p -x -v -d: địa phương:/path/to/cvsroot yourproject' – Archenoth
Trả lời siêu nhẹ. Nếu bạn buộc phải sử dụng git 'guerilla style', tức là công ty của bạn bị mắc kẹt bằng cách sử dụng cv để kiểm soát phiên bản và bạn sử dụng git trên máy trạm để làm cho cuộc sống dễ dàng hơn, bạn có thể cân nhắc thực hiện một việc như thế này;
CVS=realCvsPath
# commit to the git first
if ($ARGV[0] && $ARGV[0] eq "commit")
{
system 'git commit -a';
}
# execute the appropriate cvs program
# ===================================
exec "$CVS", @ARGV
Gọi tệp này là 'cvs' và bao gồm đường dẫn trước lệnh CVS thực. Nếu không, bạn có thể có git cam kết lớn hơn những người cvs, mà không phải là hữu ích ...
tôi đã viết lên các chi tiết của tôi riêng workflow for remote CVS, local Git
bạn" don 't tin tưởng' 'cvsimport' vì những lý do không xác định (cũng có các công cụ khác để làm điều này), vì vậy bạn quảng cáo ném ra tất cả thông tin sửa đổi trước đó? Đó là một giải pháp khủng khiếp. –
Điều gì thật khủng khiếp về nó? Nếu tôi đang đẩy các thay đổi của mình trở lại vào CVS, thì không có lịch sử sửa đổi nào bị "loại bỏ". Và nếu tôi muốn xem lịch sử sửa đổi, tôi luôn có thể sử dụng lệnh CVS để thực hiện điều đó. –
Lợi ích nào bạn nhận được bằng cách thêm 'CVS' vào' .gitignore', thay vì cam kết nó thành git? Nó không làm cho kho git của bạn không đầy đủ? Xem http://stackoverflow.com/a/37585092/1122270 và http://stackoverflow.com/q/37585385/1122270 cho những gì tôi muốn nói. – cnst
Nếu thượng nguồn là 100% trong CVS (ví dụ, OpenBSD , hoặc nhiều tiểu dự án của nó như mdocml hoặc ports-readmes) và đặc biệt nếu cây đó bị gỉ như cây CVS OpenBSD (ví dụ, đôi khi thậm chí có ghi đè lịch sử), tôi thấy hữu ích khi chỉ cần thực hiện trực tiếp các tệp CVS/{Entries,Repository,Root}
bên dưới vào git
của mình kho.
Điều này giúp bạn không cần phải có nhiều không gian làm việc độc lập, có thể thanh toán với git
trên bất kỳ máy nào và sau đó cvs up
tại chỗ hoặc cvs diff
để tạo các bản vá CVS chính xác để gửi thư đến người bảo trì git-less Thượng nguồn.
- 1. Các phương pháp hay nhất để sử dụng AngularJS với Django
- 2. Các phương pháp hay nhất về iFrame
- 3. Các phương pháp hay nhất về Javascript
- 4. Các phương pháp hay nhất để sử dụng các vùng sẵn có EC2 là gì?
- 5. Các phương pháp hay nhất với STDIN trong Ruby?
- 6. Các phương pháp hay nhất để sử dụng các tệp tiêu đề C++
- 7. Các phương pháp hay nhất để tạo thư viện sử dụng các không gian tên .NET
- 8. Chỉ thị AngularJS - các phương pháp hay nhất khi sử dụng ngModel với tiện ích jQuery
- 9. Các phương pháp hay nhất để ký hợp đồng .NET?
- 10. Các phương pháp hay nhất để tương thích ngược API
- 11. Các phương pháp hay nhất của MySQL để sử dụng SQL_CACHE và SQL_NO_CACHE
- 12. Các phương pháp hay nhất cho kho lưu trữ git trên các dự án nguồn mở
- 13. Các phương pháp hay nhất để sử dụng lại nhúng C?
- 14. Các phương pháp hay nhất để sử dụng yêu cầu trong Ruby là gì?
- 15. Chuỗi Python để liệt kê các phương pháp hay nhất
- 16. Là git với cvs nhanh hơn cvs một mình?
- 17. Các phương pháp hay nhất để liên kết dữ liệu với các đối tượng HTMLElement?
- 18. Các phương pháp hay nhất của Google App Engine và Git
- 19. Danh sách SharePoint Các phương pháp hay nhất
- 20. Các phương pháp hay nhất về Chẩn đoán mạng?
- 21. Các phương pháp hay nhất cho pubnub trên android
- 22. Các phương pháp hay nhất về xây dựng một trang web bằng cách sử dụng Node.js
- 23. Các phương pháp hay nhất để tự cập nhật các ứng dụng PHP + MySQL là gì?
- 24. Các phương pháp hay nhất về Webrequest Webrequest
- 25. Các phương pháp hay nhất về lược đồ SQL Server
- 26. Zend Framework: Sử dụng Mô hình và Chế độ xem, các phương pháp hay nhất
- 27. Tiêu chuẩn mã hóa Python/các phương pháp hay nhất
- 28. Powershell cmdlets phát triển các phương pháp hay nhất
- 29. Chỉ mục MySQL - các phương pháp hay nhất là gì?
- 30. Các phương pháp hay nhất để phát triển các ứng dụng lớn hơn trên Android
Tôi muốn bị cám dỗ khi đặt cùng một câu hỏi cho SourceSafe, nhưng tôi thực sự không muốn xua đuổi sự chối bỏ (hoàn toàn nhắm mục tiêu). –