2010-07-08 28 views
5

Tôi đã sao chép các nguồn của dự án bằng Git, được chuyển đổi trên máy chủ từ một repo SVN. Vấn đề với kho Git này là nó thiếu thẻ, nhánh và một số sửa đổi bị thiếu. Số lượng bản sửa đổi rất lớn (~ 20000) cho tôi sử dụng bản sao git-svn, và nó sẽ lãng phí băng thông và thời gian vì tôi đã có hầu hết các đối tượng trong repo cục bộ của mình. Vì lý do này, tôi muốn biết:Sử dụng git-svn với một repo hiện có thiếu .git/svn/

  • Làm cách nào tôi có thể chuyển kho lưu trữ Git thành repo git-svn để cập nhật trực tiếp từ repo SVN thay vì repo Git bị hỏng.
  • Tôi có thể tìm nạp các bản sửa đổi còn thiếu mà không phải sao chép mọi thứ không?
  • Có thể tải xuống thẻ trực tiếp bằng Git không?
  • Các nhánh đó có phải là vấn đề phụ không?

Trả lời

8
  • Cho phép git-SVN tiếp quản bản sao của bạn thật dễ dàng; chỉ cần chạy git svn init với cùng các đối số bạn đã sử dụng trong repo gốc và sau đó git svn fetch của bạn sẽ tìm thấy các cam kết hiện có trong repo.

  • Không thể thực hiện thêm các nhánh mà không cần phẫu thuật repo nghiêm túc: bạn phải viết lại phần lớn lịch sử của mình để bao gồm các hợp nhất chéo.

  • Kéo thẻ vào thật dễ dàng và tôi tin rằng có thể được thực hiện sau bản sao repo ban đầu.

Các vấn đề liên quan