2012-08-07 36 views
7

Tôi đã phạm sai lầm trong một số git svn dcommit và muốn hoàn tác cam kết. (Tôi đã thực sự cố gắng để đẩy đến một chi nhánh, nhưng đẩy đến thân cây để thay thế.) Làm thế nào tôi có thể làm điều này với git-svn?Làm cách nào để hoàn tác một git svn dcommit?

+1

thử đây http://stackoverflow.com/questions/2318777/undo-a-particular-commit-in-git – user560079

+4

Vì vậy, ý tưởng sẽ sử dụng '' git trở '' và sau đó '' git svn dcommit''? –

+1

Yep ... viết câu trả lời đó và tôi sẽ bầu cho bạn. –

Trả lời

7

Phiên bản phụ không cung cấp phương tiện để hoàn tác cam kết như Git thực hiện. Gần đây tôi đã học được, rằng bằng cách sử dụng TortoiseSVN bạn có thể sửa đổi hồi tố các thông điệp cam kết Subversion, nhưng Subversion cam kết chính nó là nhiều hơn hoặc ít hơn cuối cùng.

Vì vậy, điều bạn cần làm là cam kết mới sẽ hoàn nguyên thay đổi của bạn bằng cách sử dụng git revert <commit_hash> và sau đó là git svn dcommit như bạn đã chỉ ra trong nhận xét của mình.

Thật không may điều này sẽ không giúp tránh xung đột trong các tệp đã sửa đổi cho người khác, ngay cả khi hai cam kết này không làm gì cả.

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