如何在一次操作中git获取svn fetch + rebase?

l0b*_*0b0 8 git git-svn

我刚刚发现即使该rebase部分git help svn

这将从当前HEAD的SVN父级获取修订,并针对它重新定义当前(未提交到SVN)的工作.

(我的重点)并不意味着rebase 包含一个git svn fetch.除了命名,是否有一些方法可以运行单个git svn命令来执行这两个操作

我想这样做的原因是我只在一个分支上写,所以我想要rebase那个,我经常阅读其他分支,所以我想要fetch那些.

me_*_*and 21

我认为你是混乱git rebasegit svn rebase.前一个移动会将您当前的HEAD提交到您指定的某个修订版,而后者会将您当前的HEAD移动到您所在的Subversion分支的顶端.

git svn rebase 确实包含a git svn fetch --parent,即它将在你当前所在的分支上获得任何新的Subversion提交,但不会从任何其他分支获得任何Subversion提交(与git svn fetch从所有分支获取的普通对比).

我怀疑你不想做一个完整git svn fetchgit svn rebase,因为这意味着你得到一个可用的工作副本之前会更长.如果你想要常规的git svn fetches,我建议你设置一个cron作业,在后台为你做取件.


Mat*_*nry 8

听到这实际上是它的表现方式,我也有点惊讶.但是,要回答您的问题,您只需要定义一个别名:

git config --global alias.refetch '!git svn fetch && git svn rebase'

然后git refetch应该做你想要的.