18

我仍在学习 git,不确定一些基本的东西是如何工作的。我通过执行以下操作创建了一个本地分支:

git branch AppStore

我不记得我是如何将此分支推送到 github.com,但我可以在存储库中看到 MyBranch。当我做

git branch -a

我看到这个:

  ARC
* AppStore
  Refactoring
  Release3
  master
  remotes/origin/AppStore
  remotes/origin/HEAD -> origin/master

还列出了更多遥控器。因此,在我创建分支的计算机上,我看到了 AppStore 分支。但是,我的同事没有一个可以。当我们尝试

git pull origin AppStore

它抓住了变化。但是当我们尝试

git checkout AppStore 
or
git checkout origin AppStore

我们没能做到。我们缺少什么?谢谢!

编辑:

我确实根据 VonC 的回答尝试了这个:

git push --set-upstream origin AppStore

输入我的凭据后,我得到:

Branch AppStore set up to track remote branch AppStore from origin.
Everything up-to-date

但是我的同事仍然看不到分支:-。

4

2 回答 2

28

您需要在上游存储库上发布您的分支,同时在本地跟踪它(确保您的本地分支与新的远程分支保持同步:请参阅“什么是跟踪分支”)

git push --set-upstream origin AppStore

如评论中所述,其他开发人员需要获取已推送的内容(包括新分支)。
git fetch origin 是一种方法,但如果您不确定远程 repo 的名称,agit remote update就可以了。

这将更新他们的远程分支,但不会创建同名的本地分支,详见“将所有远程 git 分支跟踪为本地分支”。

于 2012-10-04T15:18:51.743 回答
14

当您执行时,它会在您的本地计算机上git branch xyz创建一个分支。xyz通常,您创建一个新分支,master branch以便它具有master's code. 创建分支后xyz,您进行更改,然后您必须git push origin xyz使分支可见github

这样做git branch -a会在你的机器上显示你的分支。直到你push的分支你无法在远程仓库中找到它。

于 2012-10-04T15:16:18.127 回答