2014-02-24 117 views
9

我已经安装另一个仓库与如何获得git子树diff?

git subtree add -P some/path otherremote otherbranch 

的发展已经与一些地方变化的仓库,还用做合并了几个回合:

git fetch otherremote 
git subtree merge -P some/path otherremote/otherbranch 
git commit 

现在我想在其他远程/其他分支的头部和某些/路径处的树之间获得差异。我怎样才能做到这一点?

回答

6

这应该是你在找什么:

git diff otherremote/otherbranch commit:some/path

你甚至可以与之比较的早期版本,全部采用标准commit命名约定。

例如,我做了一个远程回购u-bootmaster分支之后,在u-boot/我的主仓库的子树。看到我在我的本地主分支上的修改,因为在远程回购的特定版本:

git diff u-boot/master~17 master:u-boot/

使用Git 1.9.0测试,但我敢肯定,这通常与旧版本作品以及。

+0

为了记录,如果遥控器发生了变化,diff将仍然显示过期分支的结果,除非我们再次'git remote update'或'git subtree pull'(后者也合并)。即使我们从同一个子树中推送到远程,也会发生同样的情况。 – Wtower

+1

在你的例子中,〜17代表什么? – SsjCosty