2011-01-21 37 views
13

IDE của tôi không biết rằng tôi sử dụng Subversion và bất kỳ lúc nào tôi đổi tên một lớp (Java) nó đổi tên tệp mà không thông báo cho hệ thống kiểm soát phiên bản. Tôi sẽ tất nhiên như lịch sử của tập tin được giữ lại. Tôi hiểu rằng trong TortoiseSVN có một tùy chọn gọi là "sửa chữa di chuyển" mà sửa chữa di chuyển, nhưng đó không phải là một lựa chọn kể từ khi tôi đang trên Ubuntu. Có cách nào để sửa chữa di chuyển từ dòng lệnh không?SVN "sửa chữa di chuyển" từ dòng lệnh

+2

tôi nhìn vào mã nguồn TortoiseSVN, nó di chuyển các tập tin trở lại bằng tay và sau đó "svn di chuyển" là nó trở lại đến đích của nó. Tất nhiên, tôi có thể làm điều đó với dòng lệnh, tôi chỉ hỏi nếu có một cách dễ dàng hơn. –

+1

Bạn có thể muốn đề cập đến IDE của bạn là gì - có rất nhiều công cụ dành riêng cho IDE. – shaunmartin

+0

@shaunmartin, có thực sự quan trọng những gì IDE anh đang sử dụng ở đây? –

Trả lời

12

Nếu bạn nhớ tên cũ/vị trí của file:

mv new-filename old-filename 
svn mv old-filename new-filename 

Bạn, tất nhiên, cần client Subversion dòng lệnh cài đặt, mà bạn có thể có. Nếu không, sudo aptitude install subversion subversion-client sẽ thực hiện thủ thuật.

Mỗi bình luận của bạn, không, tôi không biết rằng có một cách dễ dàng hơn thế này. Nếu bạn không chắc chắn tên tệp cũ của mình là gì, svn stat có thể cung cấp cho bạn gợi ý.

+1

+1, điều này có thể được viết cũng như –

+0

Tôi chỉ đang nghiên cứu câu hỏi này cho một đồng nghiệp và tìm thấy [this] (http://www.syntevo.com/smartsvn/documentation.html?page=commands.detect-moves) đó là khá mát mẻ nếu bạn có một tải toàn bộ các tập tin di chuyển. – Benjol

3

Có cách nào để sửa chữa di chuyển khỏi dòng lệnh không?

Không, đây là SVN issue 1802. Nó đã được mở từ năm 2003 do đó, không giữ hơi thở của bạn.

5

Thêm phần này vào .bashrc

svn-repair() { mv -n -- "$2" "$1" && svn mv -- "$1" "$2"; } 

sau đó, bạn có thể gõ

svn-repair old-filename new-filename 
+1

không nên sử dụng 'svn-repair old-filename new-filename'? – chiccodoro

+0

Có! cố định nó ngay bây giờ :) – ndyer

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