1

我试图找出我的分支是否与远程主分支是最新的而没有实际运行git pull,我在其他地方读到

git branch -r --no-merged | grep master

应该告诉你。

但是,如果我运行它,我不会在输出中获得远程主机(但是我确实在输出中获得它--merged)。

所以我试着做一个提取(不是拉动),然后运行它。在这一点上,它决定事实上,我确实需要一个合并,

git branch -r --no-merged HEAD | grep master

  remotes/origin/HEAD -> origin/master
  remotes/origin/master

但有趣的是,如果我执行 -a,则本地 master 不会出现在列表中。但它确实出现在--merged列表中。

我找到了一种方法来解决我是否需要进行提取,但是这些方法的工作方式让我有些困惑。我想知道我错过了什么。

git branch -r不是真的要去远程仓库?或者我错过了什么让它这样做?还是上面的顺序是我实际需要做的?

4

1 回答 1

1

所有(正常)git 命令除了fetch并且pull只会查看本地状态。因此,他们只会告诉您有关您上次获取遥控器状态的信息。如果您真的想知道是否应该拉动,请先获取。

如果由于某种原因您不想进行提取(我想不出一个好的),请查看git ls-remote.

于 2013-04-29T17:42:39.917 回答