我在git-svn中寻找一个命令,它将向我显示我已经提交给我的git存储库的更改,但尚未提交到中央svn存储库.我正在寻找像svn状态一样的东西,但我正在使用git-svn,不幸的git svn status是,它不是一个有效的命令.
我试过git status但它没有解决这个问题,因为它显示了尚未提交给我的本地git repo的更改.
我也尝试过git svn dcommit --dry-run,但它没有告诉我哪些文件已准备好被提交 - 它只显示存储库URL.
Jos*_*own 22
假设远程Subversion存储库的分支位于remotes/git-svn,请运行以下命令:
git svn fetch
Run Code Online (Sandbox Code Playgroud)
获取将确保remotes/git-svn是最新的.(感谢Mark在评论中指出这一点.)
git diff --name-status remotes/git-svn
Run Code Online (Sandbox Code Playgroud)
这应该显示已经提交给git而不是Subversion的所有文件的名称和状态,就像svn status命令一样.
如果您不确定包含Subversion远程存储库的分支位于何处,您可以运行:
git branch -a
Run Code Online (Sandbox Code Playgroud)
应该产生类似于以下的输出:
* master
remotes/git-svn
Run Code Online (Sandbox Code Playgroud)
您可以从中猜到远程Subversion存储库位于remotes/git-svn中.