2012-01-02 18 views

Trả lời

7

Có vẻ như bạn cần git trở lại :) Ngoài ra, nếu bạn muốn loại bỏ tất cả các bằng chứng cho thấy rằng cam kết từng xảy ra, bạn có thể làm một git rebase để loại bỏ nó. Nhưng hãy cẩn thận nếu bạn đã xuất bản mà cam kết một nơi nào đó có thể nhìn thấy như bạn có thể tạo ra vấn đề cho người khác.

Dưới đây là một liên kết nói về Revert:

http://gitready.com/intermediate/2009/03/16/rolling-back-changes-with-revert.html

Ngoài ra, chỉ cần Google cho các tài liệu bằng tay.

+2

tôi thích duckduckgoing qua googling. –

+0

Lol không thấy lý do tại sao không :) –

+3

Có một thay thế cho 'git rebase' nếu bạn muốn loại bỏ hoàn toàn n commit từ đầu:' git reset --hard HEAD ~ n' – fge

12

Để trở lại một số cụ thể cam kết bạn có thể sử dụng:

git revert <commit_hash> 

này sẽ thêm một mới cam kết rằng trở lại trạng commit_hash cam kết.

Nếu bạn muốn xóa một cam kết cụ thể bằng cách lịch sử viết lại, bạn có thể làm:

git rebase -i <commit_hash>^ 

này sẽ mở ra một biên tập viên. Chỉ cần xóa dòng có chứa commit_hash bạn muốn xóa, lưu tệp và thoát khỏi trình chỉnh sửa. Việc rebase sẽ xóa cam kết commit_hash.

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