Gir分支到分支的改造

时间:2018-10-23 02:26:03

标签: git

我正在编写一个Shell脚本来自动化两个不同的Git分支之间的代码改进。要求是我从一个分支获取一份Git提交列表(已存储在数据库表中),并在另一分支上重放这些更改,为此,我使用了如下的Git Cherry-Pick命令。

git checkout target_branch
<Sql command to get commit list> | xargs git cherry-pick

如果在选择任何提交时发生冲突,以上操作将完全失败,我需要使用单独的参数作为脚本输入来实现以下逻辑

-> if parameter value is Abort, list the files for which conflicts occured while cherry picking and then clean the repo(i am using git reset --merge for cleaning)
-> if parameter value is Overwrite, overwrite the conflicting files with the version of the commit hash

我尝试了很多选项,但是剩下的唯一事情是通过仅选择那些提交来创建虚拟分支,然后将虚拟对象与目标合并,但是我不知道如何仅通过樱桃选择来创建新分支

请提出一种方法。

谢谢。 库玛吉特

1 个答案:

答案 0 :(得分:0)

  

我不知道怎么只用樱桃采摘来创建新分支。

考虑使用cherry-pick is applied on the current branch,您可以:

  • 首先创建新分支

    git checkout -b aNewBranch
    
  • 像往常一样应用樱桃签。