我想在本地提交的更改和SVN提交的最后一次更改之间进行差异。即HEAD和SVN Master trunk上的内容。
什么是合适的命令?
干杯
答案 0 :(得分:7)
我假设你在谈论git-svn:
$ git-svn fetch # get the latest from svn, without merging yet
$ git diff ..remotes/git-svn # or <treeish>..remotes/git-svn
我不知道remotes/git-svn
是否可以在其他地方。查看git branch -a
。
答案 1 :(得分:6)
git diff trunk
为我工作了!
答案 2 :(得分:1)
最简单的方法是在HEAD
和trunk
导入git仓库之间进行差异化处理。
但是如果你不能在你当前的仓库上做git svn rebase
,因为你不想导入任何东西(但只看到与SVN仓库的区别),你可以将你的仓库克隆到第二个仓库,你可以在那里随时使用SVN trunk
刷新其内容。
然后,您声明一个跟踪分支并在当前仓库中获取该repo2:
master/HEAD
svn_trunk # tracks repo2/trunk/HEAD, refreshed by a git svn rebase
你可以差异:
git diff svn_trunk..HEAD
答案 3 :(得分:1)
我试过了:
git diff HEAD~3 HEAD
它起作用,因为我想看到3个本地提交的更改和主干上的HEAD之间的差异。
但这是正确的方法吗?虽然有用! :)