如何在Bitbucket上将分支合并到主分支

13

我有以下问题。

  1. 我想从我的 master 仓库创建一个 branch,我可以使用 bitbucket dashboard 或者 Terminal 来创建一个分支。如果我使用 Terminal 来创建分支,那么创建的分支就不会显示在 Overview 中。但是如果我在 dashboard 中使用 Create a branch 创建分支,那么它就会显示分支但是内容为空,并要求我使用 git fetch && git checkout branchname 命令来检出分支。
    应该如何正确地创建分支呢?

  2. 接着我的下一个问题是,假设我的 master 发生了变化并且我的 Branch 也发生了变化。那么我如何将我的 branch 变更合并到 master 中呢?使用哪些步骤进行合并最为合适(最好使用命令或者 bitbucket dashboard 合并)?

  3. 最后,如果我们输入 git branch 命令,它会显示 master 和其他分支。那么我如何在终端中切换分支呢?

4个回答

12

1)当您在Bitbucket上创建一个分支时,该分支并不存在于本地。这可能是为什么仪表板建议您执行git fetch的原因。Git fetch将新创建的分支带入您的本地Git。之后,您可以通过git checkout newBranch进行检出。如果您在本地创建了分支,则步骤将相反。具体来说,新分支将存在于您的本地Git中,但在执行git push之前,它不会存在于Bitbucket远程。

根据我的经验,通过git checkout -b在本地创建分支通常是创建分支的方式,因为通常情况下,这是由开发人员在其本地环境中完成的。

2)要将您的分支更改合并到master,您可以尝试以下操作:

git checkout master
git merge yourBranch

请记住,如果您遵循Bitbucket的工作流程,则合并可能实际上是在拉取请求的一部分中发生的。

3) 要在本地切换分支,只需使用git checkout <branch_name>。例如,要从master切换到yourBranch,请键入:

git checkout yourBranch

好的,如果使用终端创建分支,我们如何更改读写权限。因为我是使用终端创建的分支。当我尝试像git push remote master这样推送时,它总是显示“请确保您拥有正确的访问权限并且存储库存在。”为什么会这样呢? - bill
这听起来可能是因为您没有指向正确的代码库。 - Tim Biegeleisen
我很确定我在正确的代码库中。那么“请确保您拥有正确的访问权限”的意义是什么?这个部分如何发生? - bill

2

可以通过以下步骤完成:

  1. 切换到主分支
  2. 合并你的分支

你可以在这里找到完整的指南。


0
  1. 从主分支创建一个新的分支:git checkout -b newbranch。您可能需要推送以使该分支在远程(git bucket)上可用- git push remote master。我会在项目中进行此操作。终端会更好,否则您将“鸽子洞”自己与特定UI一起工作,而不是一致的CLI。

  2. 确保您的主分支是最新的,通过提交和推送任何更改,然后将其他分支合并到主分支。同样,我会使用终端。

  3. git checkout otherbranch会从任何分支更改为otherbranch。请注意,未传递-b标志。这只会更改活动的branch


好的,如果使用终端创建分支,我们如何更改读写权限。因为我是使用终端创建的分支。当我尝试像git push remote master这样推送时,它总是显示“请确保您拥有正确的访问权限并且存储库存在。”为什么会这样呢? - bill

0
你应该创建一个与本地仓库相同名称的远程分支,使该分支在远程仓库中可用。现在你可以执行git push操作了。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接