2010-07-17 53 views
8

我通过终端来到git,而不是GitHub,我想知道如何在两者之间建立连接。将git分支连接到GitHub fork

从结账我有,我创建了终端的一个分支运行以下命令: git checkout -b newbranchname

从我的理解,GitHub上称此为“分叉”。如何将我的箱子上的分支连接到GitHub上的结账叉子?

(提前对您有所帮助谢谢。我的背景是1年半的颠覆。)

回答

11

你在混合几件事。

首先,SVN中的结帐与git中的结帐不同。 SVN中所谓的结账在git中称为克隆。你不检出一个存储库,你克隆它。 “检出”意味着切换到与svn switch差不多相同的特定分支,但是您也可以在同一步骤中创建新分支(这就是-b所做的)。

所以我假设你已经在本地使用git,现在已经在github上创建了一个项目,并且想要将你的更改推送到github仓库。

fork是github上现有第三方回购的副本。您可以点击“分支”按钮来获取您自己的该存储库副本,从而允许您进行自己的更改。然后另一个人可以将您对自己的存储库所做的任何更改引入其中。

为了您的GitHub库与您当地的回购联想你这样做(本地):

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

把你的变化:

git push origin master 

你可以找到混帐这里一些伟大的文档:http://git-scm.com/documentation

+0

您的回答更倾向于帮助SVN用户,而不是我的回答。 +1 – VonC 2010-07-17 22:54:23

+0

非常感谢你的澄清。我感谢您的帮助! – jackiekazil 2010-07-25 15:42:18

3

A /不,不分叉。
您已经在本地回购中创建了一个分支。
你可以把它推到你的GitHub仓库,它将作为一个分支生活。

GitHub manual page

若要推动本地分行建立远程,你只需要使用

git push REMOTENAME BRANCHNAME 

如果你不想使用相同的您可以使用远程分支上的名称

git push REMOTENAME LOCALBRANCHNAME:REMOTEBRANCHNAME. 

B/a fork是在GitHub上侧的仓库克隆(你可以在你的桌面本地侧依次克隆)

C /如果你想再次比较在GitHub上侧不同叉分支之间(因为, ,叉只存在于GitHub端;在你身边,你只是克隆远程回购),你可以!
(呃...你可以在2天前,2010年7月15日):
Cross-Repository Compare View:跨存储库比较分支的能力。


请记住,一个DVCS,你有一个extra dimension to branching: publication(推/拉从/到远程仓库)

创建分支并不意味它在GitHub上所有其他可见。
它只是在您自己的回购本地创建。出版部分留给你。