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

问题描述 投票:0回答:2

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

谢谢!

git-svn
2个回答
1
投票
因此,从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


0
投票
在git 2.23.0中对我也不起作用

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

© www.soinside.com 2019 - 2024. All rights reserved.