git:如何将某个特定作者的所有提交重新绑定到一个单独的分支中?

Tob*_*ler 9 git version-control branch git-rebase

我正在使用一些没有使用SCM的代码+并且以所有项目文件的形式偶尔接收更新,尽管其中只有一些已经被更改了一些.到目前为止,我只是将我自己的更改放在一个git repo中,并通过手动git add -p会话解决了这些"更新",随着我自己的更改量(那些尚未确定要发布的更改)越来越多,幸运的是,我做git commit --author "the others"了上述"补丁",我想知道:

如何将一位作者提交的所有提交分成新的分支?

(我不介意在这种情况下改写历史记录,回购只用于我)

理想的解决方案包括在每个"补丁"之后将其他分支合并到我的分支中,但是现在最后的合并可能就足够了.


+是的,绝地确实觉得你在那里畏缩

Ada*_*ruk 7

我最近为某人这样做了:

git checkout -b other_work <sha1_of_where_to_rebase>
git log --reverse --author=others --format=%H <sha1_range> | xargs -n 1 git cherry-pick
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助

  • @cheshirekow:`git rev-list --reverse --author = others <start..end> | xargs -n1 git cherry-pick`应该可以解决问题 (2认同)