2013-08-09 43 views
5

Tôi có một kho lưu trữ cục bộ mà tôi muốn đẩy tới nhiều kho lưu trữ từ xa (firstremote, secondremote). Điều này có thể được thực hiện đơn giản bằng cách chỉnh sửa .git/config và tạo một remote mới với nhiều url s.git đẩy tới các nhánh khác nhau trên nhiều điều khiển từ xa

Nhưng ngoài ra tôi muốn đẩy chi nhánh địa phương của mình đến các chi nhánh khác có tên từ xa. Ví dụ. đẩy (mybranch) vào chi nhánh có tên firstbranch trên firstremote và đến secondbranch trên secondremote.

Đối với điều này tôi không có ý tưởng làm thế nào để xác định các tên chi nhánh ngược dòng khác nhau.

Lưu ý: Tôi muốn tự động đẩy bằng một đơn git push.

+0

http://stackoverflow.com/questions/520650/how-do-you-make-an-existing-git-branch-track- a-remote-branch? rq = 1 –

+0

Tôi biết cách sử dụng nó cho một dòng đơn, nhưng không phải cách đặt nhiều cho cùng một nhánh – ejoerns

+2

Chỉ cần tạo một bí danh đẩy tới nhiều điều khiển từ xa. –

Trả lời

2

Sử dụng dấu hai chấm! Theo git-push doc:

Định dạng của một tham số là một tùy chọn cộng +, tiếp theo là các nguồn ref, tiếp theo là một dấu hai chấm:, tiếp theo là ref đích. Nó được sử dụng để xác định với đối tượng ref trong kho từ xa sẽ được cập nhật. Nếu không được chỉ định , hành vi của lệnh được kiểm soát bởi biến cấu hình push.default .

Thường là tên chi nhánh bạn muốn đẩy, nhưng nó có thể là bất kỳ "biểu thức SHA-1 tùy ý", chẳng hạn như master ~ 4 hoặc HEAD (xem gitrevisions (7)).

Các thông báo cho biết ref ở phía xa được cập nhật với thao tác này đẩy. Không thể sử dụng các biểu thức tùy ý ở đây, một tham chiếu thực tế phải là được đặt tên. Nếu: bị bỏ qua, cùng ref sẽ được cập nhật.

Vì vậy, điều này sẽ làm các trick:

`git push firstremote mybranch:firstbranch` 
`git push secodremote mybranch:secondbranch` 
+0

Vâng, tôi biết cú pháp này. Có lẽ tôi đã không đề cập đến điều đó một cách rõ ràng nhưng tôi muốn sử dụng một lệnh push đơn với càng ít tùy chọn càng tốt để đơn giản hóa luồng công việc. Không phải là có thể? – ejoerns

+1

Một lần nhấn là một điều khiển từ xa. [Một điều khiển từ xa có thể có nhiều URL] (http://stackoverflow.com/a/4255934/750510), do đó bạn có thể đẩy nhiều url bằng một lệnh, nhưng nó không giải quyết được vấn đề đặt tên các nhánh và IMHO. không đáng để gặp rắc rối. – madhead

+0

Vâng, đó là những gì tôi đã đề cập trong câu hỏi của tôi. Sau đó, tôi phải làm điều đó bằng tay hoặc viết một 2 lót;) Cảm ơn cho đến nay – ejoerns