2010-05-12 28 views
11

Có một kho lưu trữ lật đổ chính mà tôi đã sao chép một repo git từ đó. Tôi đã có rất nhiều tập tin bị bỏ qua trong .gitignore của tôi mà tôi muốn kho svn để biết về.Làm thế nào bạn có thể chỉ ra các tập tin để bỏ qua trong svn khi sử dụng git và git-svn bridge?

Tôi biết rằng tôi có thể sử dụng git svn show-ignore để kéo danh sách bị bỏ qua khỏi lật đổ, nhưng làm cách nào tôi có thể làm ngược lại? Gửi một danh sách các tập tin được bỏ qua trở lại repo svn?

Git phiên bản (và git-svn là tại cùng một phiên bản):

git --version 
git version 1.7.0.5 

Trả lời

5

Ok, vì vậy một phương pháp (gây phiền nhiễu) mà tôi đã tìm thấy là:

(bước tiện lợi) thêm tệp gitignore vào kho lưu trữ để nó được theo dõi.

Thực hiện svn checkout.

svn propedit svn:ignore ./

Thêm vào tất cả nội dung trong tệp gitignore được theo dõi.

Điều này khá xấu xí, tuy nhiên, và ai thích thực sự chạm vào & checkout svn khi bạn đang làm việc với git? Bất cứ ai có một lựa chọn tốt hơn?

1

Git svn không hỗ trợ điều này, vì vậy bạn phải tự mình thực hiện việc thanh toán svn riêng biệt. Từ hướng dẫn:

Chúng tôi bỏ qua tất cả các thuộc tính SVN trừ svn: thực thi

Nó sẽ thực sự thoải mái mặc dù nếu đây không phải là câu trả lời ...

+0

"Vì vậy, bạn phải tự viết kịch bản" nghĩa là gì? – Kzqai

+0

@Tchalvak, điều đó có nghĩa là bạn phải làm những gì bạn nói (có thể được viết hay không). Tôi sẽ chỉnh sửa điều đó vì nó không thêm giá trị cho câu trả lời. – iwein

0

Vâng, nó có thể . Chỉ cần cài đặt SubGit vào kho lưu trữ SVN của bạn. Nó hoạt động như một cầu nối an toàn đồng thời và thực hiện dịch hai chiều (được kích hoạt bởi móc). Nó dịch các thẻ SVN sang các thẻ Git, các nhánh thành các nhánh, svn: bỏ qua thành .gitignore, svn: eol-style thành thuộc tính "eol" và "text" của .gitattirbutes, hoàn toàn sáp nhập các nhánh SVN vào Git merge-commits; và ngược lại.

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