2

我有一个从未遇到过的奇怪情况。

我刚刚为我的开发和主分支完成了 git fetch 更新:

From remote-host:my_repo
   f3946b5..c3b2d44  develop    -> origin/develop
   72830fe..14d8be6  master     -> origin/master

我的主分支上的 Git 状态正确地报告我落后了。但是,在我的开发分支上,没有迹象表明我落后了:

dumbo:my_repo wade$ git checkout develop
Switched to branch 'develop'
dumbo:my_repo wade$ git status
# On branch develop
nothing to commit (working directory clean)

我确定这是因为我的本地开发分支不再跟踪起源/开发:

dumbo:my_repo wade$ git branch -avv
 * develop                   24f29e2 Updated config
  master                    60d5d8f [origin/master: behind 109] Deploy w/ session_fix
  remotes/origin/HEAD       -> origin/master
  remotes/origin/develop    c3b2d44 Deploy changes
  remotes/origin/master     14d8be6 Deploy changes

现在,我知道我可以用 git branch --set-upstream 修复它,但我的问题是,它是如何被破坏的?我当然没有采取任何有意识的行动来删除远程跟踪关联。

我的正常工作流程是:

  (on branch develop)
  git stash (if necessary)
  git fetch
  git merge or git rebase origin/develop
  git checkout master
  git merge origin/master
  git checkout develop

关于哪些操作会导致跟踪分支关联被破坏的任何想法?

4

1 回答 1

0

从这些信息中真的很难判断。我猜你不小心删除了分支,当你重新创建它时,你没有表示跟踪。

另一种方法是您可能手动编辑了配置并意外删除了该行。

于 2012-04-05T19:27:34.713 回答