我有两个彼此非常不同的分支,但是一个分支包含一些有用的代码,我想将其添加到另一个分支中。 分支很久以前就分道扬镳了,以至于我无法合并它们,因为它们的许多功能都不同,合并是不可行的。
来自捐赠者分支的有用代码是在连续提交中添加的,我有我想挑选的提交的哈希值。当我git cherry-pick hash1 hash2
下达命令时,我被告知nothing to commit, working tree clean. The previous cherry pick ous now empty, possibly due to conflict resolution.
有没有办法运行所有的樱桃选择,允许任何不会产生任何更改的提交自动通过?我宁愿不坐在这里,不得不手动继续每个空的樱桃采摘。
这应该意味着,正如这里所详述的,该提交引入的所有更改都是由当前分支上的某个提交引入的。
首先,仔细检查您已经首先签出了目标分支,并且您还没有在源分支(带有hash1 hash2
的分支)上
然后,您可以使用 git rev-list 跳过空提交,如下所示:
git rev-list --reverse something-begin..something-end . | git cherry-pick --stdin