如何使用已经发布的代码合并分支?

时间:2019-06-11 08:22:09

标签: git github github-release

我有一个修补程序,需要将其应用于已经发布的代码。我可以使用发布主版本,但是当我尝试合并分支时,GitHub会自动将默认分支更改为master。我不确定如何从GitHub UI进行操作。有人可以帮忙吗?

我正在尝试做的事情:

  1. 我要发布了

enter image description here

  1. 我做了一个修复程序,但是我当前的母版比Test12版本要早。 我只需要将此修补程序添加到Test12版本中。

1 个答案:

答案 0 :(得分:2)

首先,您不想将其添加到Test12版本中,您想创建一个新版本。释放代码后,您就不应该更改它,因为那样会造成一种情况,即您以相同的名称使用不同的代码,这只会造成混乱。如果在发布下一个版本之后Test12变得完全不相关,并且您不希望人们使用它(完全损坏,安全漏洞等),则可以删除该版本。

听起来好像只有一个分支master

发布修补程序的快速解决方案可能是:

  1. 返回与您的发行版匹配的提交,并基于该版本创建一个新分支(该分支将具有关联的标签,在您的屏幕快照中似乎被称为“ 1”)git checkout -b hotfix-branch 1
  2. Cherry-pick your hotfix来自mastergit cherry-pick <commit of hotfix>
  3. 在该分支git tag -a 1.0.1 -m "Hotfix for issue..."上创建一个新标签
  4. 从该标签创建新版本。

工作流程说明:

我注意到您的版本只是一个数字。您应该查看semantic versioning,这是最常用的三进制版本系统,该系统使用每个数字来传达特定的含义,主要是向后兼容。

如果我的猜测是正确的,并且您只有一个分支,则还应该签出git flow,这是使发布修补程序之类的操作变得容易的最常用的工作流程。