Thỉnh thoảng tôi cam kết một số mã vào kho lưu trữ, thêm nhận xét/tóm tắt, sau đó đọc tóm tắt lại và nhận ra tôi đã mắc sai lầm hoặc nên có thêm một chút thông tin. Có thể chỉnh sửa tóm tắt sau khi cam kết trong TortoiseHg? Tôi đang sử dụng phiên bản 1.1Có thể chỉnh sửa bản tóm tắt sau khi cam kết sử dụng TortoiseHg không?
Trả lời
Nếu đó là lần commit cuối cùng, bạn có thể nhấn nút "Hoàn tác" trong hộp thoại cam kết (nó là một giao diện để hg rollback
) và sau đó cam kết các tập tin tương tự một lần nữa với một tin nhắn mới. Nếu đây là một cam kết ở giữa cây, bạn cần sử dụng phần mở rộng mq
để xóa tất cả các cam kết sau đó và áp dụng lại chúng. Và nếu các cam kết với một bản tóm tắt không chính xác được đẩy đến một repo công cộng, bạn nên chấp nhận và sống với điều đó, bởi vì bạn không nên thay đổi cam kết được công bố.
Nếu bạn cam kết, nhưng không đẩy, bạn có thể rollback cam kết cuối cùng sử dụng
hg rollback
Tôi không chắc chắn rằng chức năng này được thực hiện trong TortoiseHG, nhưng bạn luôn có thể mở giao diện điều khiển, đi đến repo và gõ lệnh này bằng cách tự.
Đánh giá bởi câu trả lời .. vì vậy câu trả lời tổng hợp là,
Có, có thể nếu hành động cuối cùng là cam kết của changeset trong câu hỏi (trong trường hợp này, hãy thực hiện rollback lệnh), và
không, nó không phải là có thể, không ra khỏi hộp (không có phần mở rộng mq và rất nhiều gruntwork), nếu changeset trong câu hỏi đã được đẩy hoặc sau check-in có được làm.
Tôi đăng câu trả lời này bởi vì các câu trả lời khác không thừa nhận 'không', chỉ 'nếu'. :) Cảm thấy tự do bỏ phiếu, tôi chỉ muốn đánh vần các suy luận ở đây.
Phil - Tôi sẽ gửi câu trả lời cùng tôi chỉ được đăng trên this question (hỏi sau của bạn):
Một cách thích hợp để làm điều này là sử dụng histedit. Histedit cho phép bạn loại bỏ, sửa đổi, kết hợp hoặc sửa đổi các cam kết trước đó của bạn.
Histedit không tàu với Mercurial và nó không thể được sử dụng với TortoiseHg, nhưng việc sử dụng dòng lệnh rất đơn giản:
> hg histedit <rev>
nơi là phiên bản bạn muốn thay đổi những nhận xét trên. Histedit sẽ tạo ra một danh sách các thay đổi và hiển thị cho bạn SHA1 của chúng. Bên cạnh mỗi changeset có một từ chỉ ra những gì histedit sẽ làm với mỗi changeset một khi bạn đóng cửa sổ văn bản. Bên cạnh changeset bạn muốn sửa đổi - thay thế 'pick' bằng 'edit'. Đóng cửa sổ văn bản và sau đó thực hiện lệnh này:
> hg histedit --continue
và một cửa sổ văn bản sẽ xuất hiện có chứa nội dung log. Thay đổi tin nhắn thành bất cứ điều gì bạn muốn. Bạn có thể làm điều này cho nhiều thay đổi trong một lần, miễn là các tệp chưa được chia sẻ. Đây là một sử dụng khá khiêm tốn của histedit, sử dụng phức tạp hơn liên quan đến việc kết hợp các cam kết hoặc loại bỏ một phần của một số cam kết.
+1 cho thông tin. Cảm ơn –
Bạn cũng có thể thay đổi 'pick' thành' mess' (thay vì 'edit') và nó sẽ cho phép bạn chỉnh sửa thông báo tóm tắt. – wfaulk
Sử dụng hàng đợi thủy ngân để chuyển đổi bộ đổi thành bản vá, sau đó loại bỏ các bộ thay đổi đó và áp dụng lại các bản vá lại cho kho lưu trữ của bạn.
Khi các bản vá được tạo, chúng được lưu trữ trong thư mục .hg/patches trong kho lưu trữ của bạn và bạn có thể chỉnh sửa chúng (bao gồm cả thông báo cam kết) trước khi áp dụng lại chúng.
- Enabled các phần mở rộng Mercurial Queues (MQ)
- Nhấp chuột phải và chọn nhập Revision để MQ cho mỗi thay đổi thiết lập để chuyển đổi chúng thành các bản vá lỗi trong hàng đợi vá
- Enable cửa sổ hàng đợi vá từ giao diện menu
- Chọn Un-áp dụng Tất cả Patches mũi tên trong hàng đợi vá tước đổi bộ đi
- chỉnh sửa các tập tin vá trong .hg/pa tches
- Chọn Apply All Patches
- Nhấp chuột phải vào các bản vá và chọn Hoàn Applied để đóng xuống hàng đợi
Điều này hoạt động độc đáo. Như với các đề xuất khác, nó phải được thực hiện trước khi đẩy –
hg 2.2 vừa mới thêm tùy chọn git
-like --amend
. (Xem hg 2.2 release notes.)
Vì vậy, bạn có thể làm điều này trên dòng lệnh:
hg commit --amend
Xem thêm Mercurial: how to amend the last commit?
tôi đã không tìm ra cách để làm điều này trong TortoiseHg.
TortoiseHG miễn là bạn đã không đẩy:
Đánh dấu phiên bản mới nhất (mà là để được ammended),
nhấp vào đánh dấu màu xanh lá cây trên đầu như thể bạn muốn cam kết.
Mở tam giác menu ngay từ nút "cam kết" ở bên phải và chọn "phiên bản hiện tại" thay vì "thay đổi cam kết".
Đây là bạn.
- 1. git không thể chỉnh sửa cam kết
- 2. Làm cách nào để chỉnh sửa thông báo cam kết không chính xác trong TortoiseHG Mercurial?
- 3. Bản ghi Git - tóm tắt tóm tắt của chi nhánh
- 4. Làm thế nào để chỉnh sửa thông báo cam kết Mercurial sau khi phân nhánh?
- 5. Mẫu thư cam kết trong TortoiseHG
- 6. sử dụng móc git sau khi cam kết
- 7. Bỏ qua cam kết trong TortoiseHg
- 8. Tùy chỉnh Bản tóm tắt Xây dựng TFS 2010
- 9. Tôi có thể chỉnh sửa Asp.net Mvc cshtml sau khi xuất bản không?
- 10. Thiết kế lớp C# - tôi có thể sử dụng gì thay vì "tóm tắt tĩnh"? không
- 11. TortoiseHg không thể cam kết - "Hệ thống không thể tìm thấy tệp được chỉ định"
- 12. Có thể sử dụng chỉnh sửa komodo dưới dạng git core.editor (tức là không forking) không?
- 13. gitignore sau khi cam kết
- 14. Có thể chỉnh sửa để chỉnh sửa liên kết. Giúp
- 15. Trạng thái Git không hiển thị 'trước' sau khi chỉnh sửa và cam kết với repo cục bộ
- 16. Sử dụng chính xác lớp Tóm tắt
- 17. PDOStatement :: rowCount kết quả khi được sử dụng sau khi PDO :: cam kết?
- 18. Chỉnh sửa thông báo cam kết git trong GitHub
- 19. Phím tắt hoàn thành mã tóm tắt
- 20. Hg TortoiseHg cam kết lỗi trên cửa sổ 7
- 21. Sử dụng chỉnh sửa - hợp nhất - cam kết quy trình làm việc trong TFS Source Control
- 22. Có thể sử dụng maven-release-plugin với bản sửa đổi cụ thể không?
- 23. Có thể maven in một bản tóm tắt lò phản ứng ngắn hơn không?
- 24. TortoiseSVN cam kết phím tắt
- 25. Tính khả dụng của trình soạn thảo tóm tắt
- 26. Thống kê tóm tắt bằng cách sử dụng ddply
- 27. phonegap localstorage có thể lưu sau khi tắt nguồn không?
- 28. Sử dụng emacsclient -t khi cam kết trong Git
- 29. Xóa tất cả các cam kết trong một chi nhánh sau khi cam kết nhất định
- 30. Mô tả NSObject và tóm tắt tùy chỉnh trong Xcode
Xem câu hỏi này để có câu trả lời cập nhật về cách thực hiện việc này trong TortoiseHg: [Làm cách nào để chỉnh sửa thông báo cam kết không đúng trong TortoiseHG Mercurial?] (Http://stackoverflow.com/questions/18192569/how-do-i -edit-an-wrong-cam-tin-trong-tortoisehg-mercurial) – User