如何将一个分支的所有内容合并到另一个分支?

Ste*_*ven 5 git atlassian-sourcetree

我是 git 世界的新手,也是Atlassian和 的新手SourceTree,所以我对此非常基本。我想要实现的是:

假设我有一个名为 的分支master,我使用所有新功能和错误修复来开发我的应用程序,另一个名为 的分支release,我想做的是将master分支的所有内容合并到该release分支。

到目前为止我做了什么:

  1. 选择左侧视图上的master分支branchesSourceTree

  2. 单击join的标题上的按钮SourceTree,然后单击Ok

  3. 单击Send了标题上的按钮SourceTree

在第 3 步之后,什么也没有发生,在我的BitBucket存储库中我没有看到任何Release分支,我实际上SourceTree只是在上面创建了这个分支。有人可以告诉我我做错了什么吗?

谢谢。

Mik*_*kaS 12

对我来说,听起来您没有将正确的(或所有)分支推送到 BitBucket。这是一个完整的例子,说明它是如何完成的:

  1. 假设您有一个包含两个分支的存储库:master 和 release。您在 master 分支上进行开发,并且只在 release 分支上进行发布。然后它看起来像这样:

    SourceTree - 合并分支

    当您想将 master 分支合并到 release 分支时,请检出 release 分支(右键单击它并选择Checkout release...)。然后右键单击要合并到发布分支(master)的分支并选择Merge master into current branch。结果是这样的:

    SourceTree - master 分支合并到 release 分支

  2. 您现在必须将更改推送到 BitBucket。单击工具栏中的“推送”按钮。将弹出以下对话框:

    SourceTree - 推送更改对话框

    您现在必须选择要推送的分支。如果你不推送一个分支,它就不会出现在 BitBucket 上。在这种情况下,我希望我的两个分支都在那里,所以我会勾选Push?复选框。在 BitBucket 上,它现在在 Branches 页面上看起来像这样:

    BitBucket - 分支页面

    您还将在远程下拉菜单下的 SourceTree 中看到远程分支。

您最有可能做错的是您没有将发布分支推送到 BitBucket。