Cách phân nhánh với TortoiseHG


218

Tôi đã tải xuống TortoiseHg 1.0 để đánh giá. Đối với cuộc sống của tôi, tôi không thể tìm ra cách tạo ra một nhánh. Nó dường như hiểu các nhánh (ví dụ trong trình duyệt kho lưu trữ của nó) nhưng tôi dường như không thể tìm ra cách để tạo một nhánh. Đây có vẻ như là một khả năng cơ bản như vậy vì trong số những lợi ích thường được chào hàng của DVC là phân nhánh nhẹ.

Tôi đã đi vòng quanh và không thể tìm thấy nhiều cuộc thảo luận về chủ đề này (ít nhất là cho các phiên bản gần đây) vì vậy tôi phải cho rằng tôi đang thiếu một cái gì đó, phải không?

Cập nhật: Vì vậy, tôi đã gắn cờ câu trả lời của Chad Birch bên dưới để trả lời vấn đề "chi nhánh mới". Khi anh ta chỉ ra một cách chính xác, bạn thực hiện một cam kết và sau đó nhấp vào nút nhánh để hiển thị hộp thoại bảo trì chi nhánh, nơi bạn tạo các nhánh mới. Tôi ước gì họ đã cho chúng tôi một tùy chọn menu ngữ cảnh cho việc này. Khi bạn đã phân nhánh, câu hỏi tự nhiên tiếp theo là làm thế nào để hợp nhất và điều này cũng không rõ ràng. Nó chỉ ra rằng tùy chọn được chôn trong kho thám hiểm. Bạn cần chọn người đứng đầu chi nhánh khác, nhấp chuột phải và sau đó chọn "Hợp nhất với ...".


Sự phân nhánh bị chôn vùi nghiêm trọng trong một khía cạnh hoàn toàn không trực quan của quy trình làm việc. Phân nhánh và cam kết là hai hoạt động rất khác biệt và không có ý nghĩa gì để chôn sâu nhánh trong giao diện người dùng cam kết. Như tôi thường cam kết trước khi phân nhánh, tôi không thấy giao diện người dùng cam kết. Sự phân nhánh vẫn còn hiệu quả không có giấy tờ kể từ giữa năm 2016 ; Chad Birch chỉ ra những gì vượt qua cho tài liệu phân nhánh; nó vẫn còn khủng khiếp, nhưng như anh ấy lưu ý, anh ấy chỉ là người đưa tin ...
sáng

Câu trả lời:


213

Như được hiển thị trong các tài liệu , tất cả những gì bạn cần làm chỉ là nhấp vào branch: defaultnút gần đầu hộp thoại cam kết và thay đổi thành tên chi nhánh mới.


30
Ah, tôi thấy nơi nó nói "nhấn nút này sẽ mở ra hộp thoại bảo trì chi nhánh". Điều đó thực sự mở một hộp thoại, như nó bật ra, cho phép các nhánh được tạo nhưng tôi gặp vấn đề với câu lệnh "Như được hiển thị trong các tài liệu" vì không có đề cập rõ ràng về cách tạo một nhánh ở bất cứ đâu trên trang đó Tôi có thể tìm thấy. Tôi tự hỏi việc phân nhánh đã làm gì để xứng đáng được đối xử với lớp thứ hai trong TortoiseHg (so với các công cụ Rùa * khác trong đó là tùy chọn trình đơn ngữ cảnh hạng nhất). :-)
Michael Tiller

31
Ồ, tôi đã không cố gắng lăng mạ theo cách "RTFM" hoặc bất cứ điều gì tương tự, tôi chỉ cần một số cụm từ để liên kết đến trang có liên quan. Có lẽ "như mơ hồ ngụ ý trong các tài liệu" sẽ phù hợp hơn trong tình huống này.
Chad Birch

1
Nhạt toẹt. Tôi cũng không cố gắng lăng mạ. Tôi chỉ muốn làm rõ cho bất kỳ ai đi cùng để xem liên kết mà bạn thực sự phải đọc giữa các dòng trong tài liệu để có câu trả lời vì nó không được đề cập rõ ràng.
Michael Tiller

8
Với các phiên bản gần đây của Mercurial, bạn cần thực hiện hg push --new-branchđể đẩy một nhánh mới đến một kho lưu trữ từ xa. Xem stackoverflow.com/questions/2365483 để biết cách thực hiện điều này trong TortoiseHg.
Peter Graham

26

Để bắt đầu chi nhánh mới với TortoiseHg, nhấn Commit ... sau đó, phía trên thông báo Cam kết nhấn Chi nhánh, sau đó "Mở chi nhánh mới có tên:"


9

Chỉ muốn thêm rằng để đẩy chi nhánh mới vào kho lưu trữ từ xa, có một hộp kiểm trên tab Đồng bộ hóa trong Tùy chọn "Cho phép đẩy chi nhánh mới" - bạn phải nhớ tắt lại ngay sau đó.


8

Hầu hết thời gian trong đồng bóng, bạn clonelưu trữ để tạo một chi nhánh.

Sau đó, bạn có thể hợp nhất các kho riêng biệt sau khi bạn thực hiện các chỉnh sửa và cam kết.

Điều này nghe có vẻ như sẽ chiếm rất nhiều dung lượng đĩa nhưng trên hầu hết các hệ điều hành, mercurial sẽ tạo các liên kết cứng thay vì sao chép các tệp. Dù sao, dung lượng ổ đĩa thường rẻ, và vì nó cục bộ nên nó khá nhanh.

Nếu bạn nghĩ về nó, mọi "kiểm tra" (theo thuật ngữ svn) hoặc "nhân bản" (theo thuật ngữ đồng bóng) thực sự là một nhánh có thể sẽ được hợp nhất trở lại vì vậy rất có ý nghĩa rằng nhân bản là cách phổ biến để tạo ra các nhánh.


11
Nó không thuận tiện cho các nhánh tính năng.
Tháp

Đã đồng ý. Nếu bạn có các nhánh hoạt động lâu dài (bán cố định), chẳng hạn như nhánh ổn định phiên bản 1 và nhánh ổn định phiên bản 2, bạn sẽ muốn sử dụng các nhánh có tên . Xem thêm các tài liệu chi nhánh đồng bóng .
blo ở

11
-1. Đây là tốt nhất một hack. Nhân bản để phân nhánh hoàn toàn không hoạt động nếu bạn đang theo dõi một kho lưu trữ từ xa, vì bạn không thể thúc đẩy các thay đổi cục bộ của mình. Điều này có nghĩa là bạn không thể chia sẻ chi nhánh của mình với các nhà phát triển khác mà bạn đang làm việc. Cách chính xác để phân nhánh là tạo một nhánh có tên trong kho lưu trữ của bạn.
Peter Graham

8
Nhân bản vẫn là cách mà cuốn sách đồng bóng chính thức đề xuất các chi nhánh 'bức tranh lớn' hgbook.red-bean.com/read/ không Đừng bắn tin nhắn.
blode

0

Trước khi cam kết, nhấp vào nút Chi nhánh (xem hình ảnh), sau đó chọn một chi nhánh hoặc tạo một chi nhánh mới (bằng cách nhập vào nơi bạn chọn các chi nhánh).

Xem hình ảnh tại đây

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.