2010-02-07 30 views

Trả lời

2

Vì vậy mà không có một câu trả lời tốt hơn, đây là cơ chế tốt nhất mà tôi đã đi lên với:

# file was added 
touch a 
svn add a 
svn ci 

# file was moved without versioning 
mv a b 

# file versioning is added 
mv b a 
svn mv a b 

Giữ trong tâm trí bạn không thể svn cp a b, như svn sẽ hoàn toàn từ chối sao chép vào một mục tiêu mà tồn tại trừ khi nó là một thư mục.

+3

Không bao giờ ngừng làm tôi ngạc nhiên như thế nào SVN không thể đối phó với các trường hợp sử dụng cơ bản như vậy. –

2

Bạn không thể chỉ ghi lại.

Việc bạn có thể làm là sao chép lại và ghi đè mục tiêu sao chép cũ.

+0

ý của bạn là gì với "mục tiêu sao chép cũ"? –

+0

Bạn đã nói, hoạt động đã xảy ra. Với "mục tiêu sao chép cũ" tôi đề cập đến đích của thao tác sao chép đó. – tangens

+0

Bạn có nghĩ rằng bạn có thể thêm một số công cụ dòng lệnh để làm rõ những gì bạn có ý nghĩa? Afaict đây là câu trả lời hay nhất, nhưng rất mơ hồ. –

0

Phiên bản phụ chỉ hỗ trợ ghi hợp nhất sau khi thực tế, không phải bản sao và/hoặc di chuyển ...

0

Thẳng thắn, không, không có cách nào để thực hiện việc này trong Subversion. Giả sử bạn không thực hiện thay đổi nào khác, những gì bạn có thể muốn làm là svn revert và sau đó thực hiện svn copy để Subversion biết bạn đã sao chép tệp. Hoặc nếu bạn không thực sự quan tâm đến lịch sử cho tệp được sao chép, chỉ cần svn add vị trí mới.

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