Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
优化git多合并到master_Git_Commit_Git Commit - Fatal编程技术网

优化git多合并到master

优化git多合并到master,git,commit,git-commit,Git,Commit,Git Commit,给定分支提示的哈希集合,是否可以构造某种树来确定哪些提示是合并的候选提示,哪些提示不是当前项目的主提示 我不是一个喜欢CI/CD的人,但我试图从诗人物理学的角度来理解,是否有可能构建某种树来确定哪些分支可以合并到主分支,哪些分支不可以合并到主分支 澄清 出于此查询的目的,所讨论的分支提示集合是1与master没有冲突,2已通过所有CI测试的分支。听起来您想要的是某种测试可合并性的方法。一般来说,使用命令行Git二进制文件很难做到这一点。如果git merge-abort退出非零,您可以尝试测试合

给定分支提示的哈希集合,是否可以构造某种树来确定哪些提示是合并的候选提示,哪些提示不是当前项目的主提示

我不是一个喜欢CI/CD的人,但我试图从诗人物理学的角度来理解,是否有可能构建某种树来确定哪些分支可以合并到主分支,哪些分支不可以合并到主分支

澄清
出于此查询的目的,所讨论的分支提示集合是1与master没有冲突,2已通过所有CI测试的分支。

听起来您想要的是某种测试可合并性的方法。一般来说,使用命令行Git二进制文件很难做到这一点。如果git merge-abort退出非零,您可以尝试测试合并并运行git merge-abort,但最好使用libgit2或首选语言的包装器来实现此目的,它提供git_merge_FAIL_ON_CONFLICT标志,可用于检测此情况,而无需修改存储库

至于检查您的CI或CD系统,以查看是否所有测试都已通过,这大概是可能的。您还没有告诉我们您使用的是什么系统,但是许多这样的系统都有一个您可以使用的API


如果您使用的是Git托管平台,比如GitHub,您可以查询它的状态,这样您就不必自己去做了。GitHub有关于如何使用的文档,还有一个可以使用的检查API。

这里有不同的问题要问。Git唯一能自己回答的问题是:我可以/不能自己合并,而不需要帮助修复冲突。不过,这可能不是一个特别好的问题。定义合并的合格和候选对象。例如,它是否引用没有冲突的分支?但是,根据具体情况,某些功能分支需要合并,即使它们存在冲突。还是指CI测试通过的分支?为此,您需要设置在合并请求上运行的CI配置,并标记/标记测试失败的分支。@GinoMempin我更新了我的问题并进行了澄清。