Câu trả lời ngắn gọn là không.
Câu trả lời dài là, các chi nhánh Mercurial là tên được đính kèm với changesets. Nếu bạn có một số thay đổi cam kết với chi nhánh zelda và được cung cấp (ví dụ: được đẩy tới kho trung tâm), không có cách nào bạn có thể đổi tên nhánh đó mà không tạo lại các thay đổi này, có nghĩa là viết lại lịch sử.
Thậm chí nếu bạn tách những changesets cả bạn repo và trong repo trung ương, sau đó tái tạo chúng như thuộc chi nhánh Triforce, và đẩy “đổi tên thành” chi nhánh một lần nữa, tất cả các cộng tác viên của bạn sẽ kết thúc có hai bản sao của các bộ thay đổi, một bộ trên chi nhánh zelda, một bản sao khác trên chi nhánh triforce.
Vì vậy, có, những gì bạn nên làm được mô tả trong https://stackoverflow.com/a/7245187/67988. Để báo giá từ đó, được điều chỉnh theo tên chi nhánh của bạn, tức là zelda là chi nhánh cũ cần đóng và triforce là chi nhánh mới sẽ được tạo.
hg update zelda
hg commit --close-branch -m "mgmt: Close branch zelda"
hg branch triforce
hg commit -m "mgmt: Create branch triforce"
hg push --new-branch
P.S. Nếu chưa có ai khác lấy từ kho trung tâm, bạn có thể thử tước zelda từ đó. Hoặc, nếu bạn có quyền truy cập vào tất cả các máy tính cá nhân khác (giả sử một môi trường được kiểm soát), và thực sự muốn đi một con đường rất nguy hiểm, bạn có thể loại bỏ nhánh này khỏi tất cả các repos. Điều này chắc chắn không được coi là thực hành tốt, và chỉ có thể được sử dụng như một biện pháp cuối cùng.
Có thể câu trả lời của chuỗi này phù hợp: http://stackoverflow.com/questions/4378684/mercurial-can-i-rename-a-branch – birryree