Git-svn:确定前面或后面的提交数量

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git-svn:确定前面或后面的提交数量相关的知识,希望对你有一定的参考价值。

git-svn是否可以确定我之前或之后有多少个提交?

谢谢!

答案
因此,从git svn fetch开始使您的本地存储库保持最新状态,然后从那里开始。

要找出您当前在分支中有多少个提交但尚未提交到Subversion服务器的提交,有很多技巧,但是最明显的是运行git svn dcommit --dry-run,并查看列出了多少提交要推送到Subversion。

短版:运行git svn dcommit --dry-run | grep diff-tree | wc -l

要计算出Subversion信息库中有多少个提交,而不是您正在处理的分支中的提交,您需要先计算出或知道要使用的Subversion分支的名称。您可能可以从git svn dcommit --dry-run的第一行或git log -1 --grep git-svn-id进行计算。

说您的分支为master,而父Subversion分支为remotes/svn/trunk。然后,您可以运行git svn rev-list master..remotes/svn/trunk | wc -l来计算远程干线中而不是分支中的所有提交。

作为上述替代方法,创建分支时,请将其指定为跟踪Subversion分支。例如,当我基于远程干线创建本地分支时,将其创建如下:

git checkout -b new-branch-name -t remotes/svn/trunk

[现在,每当我执行git statusgit checkout new-branch-name时,输出将包括一行,告诉我每个分支相对于另一个分支领先或落后多远。

对于已经存在的分支,可以将其设置为跟踪Subversion分支,如下所示:

git branch --set-upstream existing-branch remotes/svn/trunk

另一答案
在git 2.23.0中对我也不起作用

解决方法是手动修改.gitconfig:how-to-set-upstream-branch-in-git-svn

以上是关于Git-svn:确定前面或后面的提交数量的主要内容,如果未能解决你的问题,请参考以下文章

git-svn 的钩子

我如何使用 codeanywhere 片段

C# 按指定数量从前面或者后面删除字符串

Git-svn

git-svn 使用啥 svn 客户端?

如何解决与 git-svn 的冲突?