0

电脑A的同事推了一个分支,我在电脑B本地查看。我们愉快的推拉了一个星期。

然后我将分支作为 M403 拉到计算机 C 上,git checkout -b M403 remotes/origin/M403-Some-Feature因此我的理解是这个本地分支跟踪远程。

我和我的同事坐在这台电脑前进行了一次合并,从分支到主控以及反向。然后我需要将 M403 的更改共享到服务器,以便我们可以在我们的普通计算机上恢复它。

当我推开时,我注意到它说[new branch]。Agit branch --all显示遥控器上的另一个分支,简称为 M403。

我再次推送,但这次指定了它来自的远程分支的完整路径,remotes/origin/M403-Some-Feature但它又说[new branch]

从计算机 B 中,当我拉取更改时,它说它都是最新的,但我没有看到更改。

从计算机 C,当我使用短名称或长名称或任何其他名称推送到任何 M403 分支时,它会显示它是最新的。

我添加了一个更改只是为了查看,但即使计算机 C 推动它,它也进入了一个黑洞,从其他任何地方拉动都看不到变化。

发生了什么?

更新

  • 我删除了旧的 repo 文件夹,重新克隆。
  • 使用签出远程分支git checkout -t remotes/origin/Lalalala
  • 合并大师。
  • 由于跟踪git push,它知道如何处理的推送。-t
  • 拉上计算机B,一切都很好。

谁知道第一次出了什么问题。

4

1 回答 1

0

利用git checkout -t remotes/origin/branch_name

我不能确定出了什么问题,我已经能够使用git checkout -b local_name remotes/origin/branch_name几个月来共享一个分支,但是这次它出了问题。

再次执行此操作也再次-b失败,这是一个更奇怪的问题,其中 pull 表示它是最新的,而 push 表示有待拉取的更改。

使用-t工作。在这两种情况下,分支跟踪显然配置正确,状态显示本地和服务器之间的提交差距。

奇怪的。

于 2013-09-25T16:02:36.433 回答