2010-07-17 39 views
8

Tôi đến git qua thiết bị đầu cuối, chứ không phải GitHub và tôi tự hỏi làm cách nào để tạo kết nối giữa hai thiết bị.Kết nối chi nhánh git với GitHub fork

Từ một thanh toán tôi có, tôi tạo ra một chi nhánh tại thiết bị đầu cuối bằng cách chạy lệnh này: git checkout -b newbranchname

Từ hiểu biết của tôi, GitHub gọi đây là "forking". Làm cách nào để kết nối chi nhánh trên hộp của tôi với một nhánh của thanh toán trên GitHub?

(Cảm ơn trước thời hạn để được giúp đỡ của bạn. Bản thân tôi là khoảng 1,5 năm lật đổ.)

Trả lời

11

Bạn đang trộn một vài thứ.

Trước hết, thanh toán trong SVN không giống như thanh toán trong git. Cái gọi là thanh toán trong SVN được gọi là bản sao trong git. Bạn không kiểm tra một kho lưu trữ, bạn sao chép nó. "Kiểm tra" có nghĩa là chuyển sang một chi nhánh cụ thể, ít nhiều giống với svn switch, nhưng bạn cũng có khả năng tạo chi nhánh mới trong cùng một bước (đó là những gì -b thực hiện).

Vì vậy, tôi giả định rằng bạn đã sử dụng git cục bộ, hiện đã tạo một dự án trên github và muốn đẩy các thay đổi của bạn vào repo github.

Một ngã ba là bản sao của repo bên thứ ba hiện có trên github.Bạn có thể nhấn nút "ngã ba" để có được bản sao của riêng bạn của kho lưu trữ đó, cho phép bạn thực hiện thay đổi của riêng bạn. Người kia sau đó có thể kéo bất kỳ thay đổi nào bạn thực hiện vào kho lưu trữ của riêng mình.

Gắn repo github của bạn với repo địa phương của bạn, bạn làm gì (địa phương):

git remote add origin [email protected]:<username>/<repo>.git 

Để đẩy những thay đổi của bạn:

git push origin master 

Bạn có thể tìm thấy một số tài liệu tuyệt vời cho git ở đây: http://git-scm.com/documentation

+0

Câu trả lời của bạn được định hướng nhiều hơn để giúp người dùng SVN hơn câu trả lời của tôi. +1 – VonC

+0

Cảm ơn bạn rất nhiều vì đã làm rõ. Tôi đánh giá cao sự giúp đỡ của bạn! – jackiekazil

3

a/không, đó là không forking.
Bạn đã tạo một chi nhánh trong repo địa phương của mình.
Bạn có thể đẩy nó vào repo GitHub của bạn, nơi nó sẽ hoạt động như một chi nhánh.

Từ GitHub manual page:

Để đẩy một chi nhánh địa phương với một điều khiển từ xa được thiết lập, bạn chỉ cần sử dụng

git push REMOTENAME BRANCHNAME 

Nếu bạn không muốn sử dụng cùng một tên trên nhánh từ xa, bạn có thể sử dụng

git push REMOTENAME LOCALBRANCHNAME:REMOTEBRANCHNAME. 

b/a fork là một clone kho ở phía GitHub (mà bạn có thể biến bản sao trên máy tính để bàn của bạn phía địa phương)

c/Nếu bạn muốn so sánh chi nhánh giữa dĩa khác nhau ở phía bên GitHub (Kể từ đó, một lần nữa , dĩa chỉ tồn tại ở phía GitHub; về phía bạn, bạn chỉ là nhân bản repo từ xa), bạn có thể!
(Vâng ... bạn có thể từ 2 ngày trước, ngày 15 tháng 7 năm 2010):
Cross-Repository Compare View: khả năng so sánh các chi nhánh trên các kho lưu trữ.


Hãy nhớ rằng với một DVCS, bạn có một extra dimension to branching: publication (push/pull từ/đến một kho lưu trữ từ xa)

Tạo một chi nhánh không có nghĩa là có thể nhìn thấy nó cho tất cả những người khác trên GitHub.
Nó chỉ được tạo cục bộ trên repo của riêng bạn. Phần xuất bản còn lại cho bạn.

Các vấn đề liên quan