【问题标题】:Merging Git Database Commits from One Branch to Another without Cherrypicking将 Git 数据库提交从一个分支合并到另一个分支,而不用 Cherrypicking
【发布时间】:2018-07-10 03:35:35
【问题描述】:

我们公司有两个主要的 Git 分支: 在我们的 Sprint 期间,

每个人都有(本地分支机构)

发布分支:包含准备/开发的代码,准备测试,以及

主分支:生产-最终就绪代码

我在 Git 中阅读,樱桃采摘不好。

https://blogs.msdn.microsoft.com/oldnewthing/20180312-00/?p=98215 http://www.draconianoverlord.com/2013/09/07/no-cherry-picking.html

在项目被放置在 master 之后,它们就可以被部署了。 有时,我们没有将所有的 Release 项目都移到 Master 中,原因有很多:延迟进度,进行更多测试,延迟问题。仅将某些项目移动到 Master 中的正确 Git Devops 策略是什么?我们是否应该撤销提交,以便我们可以进行干净的合并?

数据库是不同的,因为我们正在执行更改脚本,而不是覆盖应用程序等二进制文件。

例子:

发布分支------- -------------> Master

提交 A、B、C、D、E -------------> 提交 B、D

Devops Stack

【问题讨论】:

    标签: sql-server database git merge version-control


    【解决方案1】:

    由于您的要求是应用从release 分支到master 分支的非序列提交(如提交B、提交D 而缺少提交C),您可以签出(“复制”)文件版本从release 分支到master 分支。

    如将release 分支上的提交B 的更改应用到master 分支,您可以使用以下命令:

    git checkout master
    git checkout <commit B> -- .
    git commit -m 'get the file version from commit B to master branch'
    

    现在master 分支上的最新提交包含来自提交B 的更改。并且您可以使用相同的方式应用从提交 Dmaster 分支的更改。

    【讨论】:

      猜你喜欢
      • 2016-03-23
      • 2022-08-17
      • 1970-01-01
      • 2011-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-10
      相关资源
      最近更新 更多