2013-07-30 38 views
6

Tôi đang sử dụng svn để làm việc trên một dự án được lưu trữ trên GitHub và gặp phải sự cố lạ. Bất cứ khi nào tôi đổi tên một gói và cố gắng để thực hiện các thư mục src (hoặc bất kỳ thư mục cao hơn so với thư mục đổi tên) Tôi nhận được một thông điệp: "svn: hoạt động COPY chỉ được hỗ trợ ở cấp chi nhánh"Đối mặt với vấn đề svn: Các thao tác COPY chỉ được hỗ trợ ở cấp chi nhánh

Ví dụ:
Tôi có gói com.mydomain.projectname.some.package.
Khi tôi đổi tên thành com.mydomain.projectname.some.another.package và cố gắng cam kết, tôi nhận được thông báo này.

Dự án nằm trong nhánh chính của repo GitHub, tôi kiểm tra thân cây trong khi sử dụng svn. Tôi đã thử tạo một nhánh giống hệt nhau và lặp lại quy trình nhưng vẫn không có may mắn. Tôi có thiếu một số quy tắc svn cơ bản ở đây?

+0

chỉ cần sử dụng một cái gì đó như xp-dev.com cho dịch vụ lật đổ thông thường lưu trữ – Fattie

Trả lời

8

Không, đó là hạn chế (hiện tại) cầu Git-SVN Github của - bạn làm việc với Git repo trên backend nào

+0

Cảm ơn! Tôi đoán tôi không thể ngừng học git nữa .. –

+0

@JitB - bạn có thể. Sau khi SVN di chuyển sang Mercurial là cách trơn tru hơn: học Hg, sử dụng BitBucket làm mã lưu trữ –

+0

Đối mặt với cùng một vấn đề, @LazyBadger bạn có tham chiếu gì để đọc thêm về giới hạn này không? – Restuta

2

Một cách giải quyết mà không giữ gìn lịch sử là để sao chép các tập tin với tên mới, sau đó svn delete [oldname]svn add [newname].

Điều này thật kinh khủng từ phối cảnh kho lưu trữ nguồn được chia sẻ, vì không có chi nhánh nào khác sẽ hợp nhất thêm nữa nếu chúng đã thực hiện các thay đổi của riêng chúng đối với các tệp đó. Nhưng nó có lợi thế thực sự làm việc, và nếu bạn là người duy nhất làm việc với các tập tin trong câu hỏi, có thể là đủ cho nhu cầu của bạn.