gpt4 book ai didi

git - 防止分支在 PR 完成时被删除

转载 作者:行者123 更新时间:2023-12-05 01:40:29 24 4
gpt4 key购买 nike

在 Azure Devops 中,我有一个带有开发分支的 git 存储库。我们从该分支创建多个功能分支,并通过 pull 请求将代码 merge 到开发中。一旦我们完成 pull 请求,功能分支就会被删除。

我想防止这种情况发生。我想保留这些功能分支。我该怎么做?

最佳答案

Prevent branches from being deleted on PR completion

事实上,取消选中 merge 后删除选项是最直接的解决方案。

但是,我们有时会在频繁的 PR 中忽略勾选这个选项。目前,这个选项对我们来说还不够。

要解决此问题,解决方法是为目标分支设置分支安全性(根据您的情况设置多个功能分支):

在 Azure Devops Branches 选项卡中 -> 单击 ... Feature 分支的按钮 -> Branch security ->将 Force push (rewrite history, delete branches and tags) 更改为 Deny for the users and groups -> Save changes.

enter image description here

那么, merge 后删除选项将不可用:

enter image description here

注意:

  • PR完成窗口中 merge 选项后删除源分支默认不勾选/选择,而是基于上次的设置。比如现在取消勾选,下次打开PR完成窗口时, merge 后删除源分支选项会被取消勾选。
  • 就像大牛说的,retain feature branches不是一个正常的操作,我们必须知道它可能带来的一些问题。比如,如果我们选择 merge 类型是 squash commit 并在第一个 PR 保留特性分支,那么当我们第二次 PR 时就会发生冲突。因为我们保留了功能分支上的提交。

希望这对您有所帮助。

关于git - 防止分支在 PR 完成时被删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56566170/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com