2012-10-08 22 views
17

Tôi đã tạo kho lưu trữ hg cục bộ cho dự án mới: hg init ; hg addremove, sau đó tôi tạo repo ngược dòng trống và đẩy phiên bản đầu tiên tại đó: hg push https://remoterepo.Cách đặt Mercurial upstream

Bây giờ, tôi muốn đặt rằng https://remoterepo làm luồng ngược mặc định, vì vậy tôi chỉ có thể thực hiện đẩy/kéo hg mà không cần cho nó.

Tôi rất ngạc nhiên khi Google không trả lời thẳng thắn với "thiết lập thượng nguồn", và tôi cũng không tìm thấy câu trả lời trực tiếp tại SO. Vì vậy, vì lợi ích của tất cả những người sử dụng SO như một howto, cách tốt nhất để làm điều này là gì?

Trả lời

23

Bạn có thể làm điều đó bằng cách thêm URL thượng nguồn để /project/.hg/hgrc như thế này:

[paths] 
default = ssh://[email protected]/repos/something 
upstream = ssh://[email protected]/repos/something_else 

và bây giờ upstream là một bí danh cho repo something_else mà sau đó bạn có thể kéo từ hoặc push to:

hg pull upstream 
hg push upstream 

Reference

hg help urls:

URL đều có thể được lưu trữ trong file cấu hình của bạn với con đường bí danh dưới [đường dẫn] phần như sau:

[paths] 
    alias1 = URL1 
    alias2 = URL2 
    ... 

Sau đó bạn có thể sử dụng bí danh cho bất kỳ lệnh rằng sử dụng URL (ví dụ: hg pull alias1 sẽ được coi là hg pull URL1).

Hai bí danh con đường thật đặc biệt vì chúng được sử dụng như mặc định khi bạn không cung cấp các URL cho một lệnh:

  1. mặc định
  2. mặc định đẩy
+0

Thêm chỉ 'default = ...' đã thực hiện thủ thuật cho trường hợp cụ thể của tôi (sử dụng kéo/đẩy hg mà không có bất kỳ đối số thừa nào), cảm ơn. – hyde

+0

@hyde Rất vui được trợ giúp :) –