如何比较分支与故意未知的上游?

时间:2013-12-26 22:58:21

标签: git git-track

当我不希望牢记哪个远程分支是其上游时,如何将本地分支与其远程上游进行比较?

换句话说,我想在下面的第二行中删除origin/bar

git branch --set-upstream master origin/bar
git log origin/bar..

1 个答案:

答案 0 :(得分:1)

origin/bar只是对历史中该分支的最高版本的方便引用,当您从上游获取更改时,该分支会更新。

如果你关心那个分支的完整内容,某个地方必须有一个引用(或者它最终会被垃圾收集),你必须找出顶部的修订版本的哈希值。科。

如果您不关心更新的更改,那么您可以使用git tag在某个时刻标记上游分支的顶部,然后使用标记来区分更改。或者,您可以在origin/bar的顶部创建本地分支,并使用本地分支进行区分。或者你可以使用最顶层修订版origin/bar的git哈希。

或者您可以设置符号链接refs/remotes/origin/bar -> .git/refs/foo,然后对foo进行差异处理。这实际上会指向最新origin/bar,而不会被称为origin/...

但是,我不太确定你为什么要那样做。