繁体   English   中英

GIT 具有 2 个分支(主、任务)的分支策略 - 如何防止主分支中的代码丢失?

[英]GIT branching strategy with 2 branches (master, task) - how to prevent code loss in master branch?

我正在阅读 GIT 分支策略,其中涉及主、开发、修补程序、发布、功能。

我们有 5 名开发人员在 python 网站上工作。 以下是我想在 GitHub 上使用的分支策略。

  1. 生产代码在 master 分支中。
  2. 我在 master 分支上创建了一个 Task 分支。
  3. 我在 Task 分支上工作,在将代码推送到 git 之前,我切换到 master 并拉取代码,切换到 Task 并与 master 合并。 这是为了让我的代码与远程主机同步
  4. 推送代码
  5. 将 PR 从 Task 分支提升到 master 分支。

如果 master 在我的 Task 分支中获得了我缺少的其他代码并且我忘记运行第 3 步,会发生什么情况?

你不会丢失代码。 如果你的Task分支在没有同步到master的情况下被推送,GitHub 会告诉你是否有任何冲突。

如果发生冲突,您将在 PR 上收到此消息:


在此处输入图像描述


然后您可以在本地拉出master ,修复冲突并将更改推送回Task

如果没有冲突的文件,您可以在不更新Task分支的情况下合并,即使master领先。

如果您使用的是 GitHub,您可以添加一个分支保护规则,该规则要求分支在允许合并到拉取请求中之前与master分支保持同步:

GitHub 的“要求分支在合并之前是最新的”保护规则

在合并之前,分支必须与基本分支保持同步。

请参阅此处的 GitHub 分支保护规则文档。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM