git - 如何创建子分支?

标签 git github

我已经创建了主分支的子分支。我很困惑这是否是正确的方法。

command : git checkout -b master-website-delete-parent-menu-ras odoo/master

它还显示了一些消息

Branch 'master-website-delete-parent-menu-ras' set up to track remote branch 'master' from 
'odoo'.
Switched to a new branch 'master-website-delete-parent-menu-ras'

最佳答案

当你这样做时:

git checkout -b branch2 origin/master

这意味着:

  • origin/master 创建一个新分支 branch2
  • 同时,将 origin/master 设置为 branch2 的跟踪分支。因此 git push 将推送到 origin/master

这有点不传统,但它可以工作。但我认为您正在寻找功能分支工作流程:

功能分支工作流程

通过此工作流程,您将从分支主控中为每个功能(错误修复也是此处的功能)创建一个新分支。

设置

首先,建议设置推送默认值:

git config --global push.default current

这将使推送变得更容易,因为不需要指定推送到哪里。 (分支 X 将推送到 origin/X - 见下文)

创建分支

如何从master创建branch2:

git checkout master # switch to master
git pull master # update local master
git checkout -b branch2 # create new branch from current branch

推送分支

完成所有提交后,您可以像这样推送它:

git push -u

仅在第一次推送此新分支时需要 -u。这会将跟踪分支设置为 origin/branch2(因为 push.default current)。

注意:git 命令中有许多其他方法来创建和推送分支。我认为这是一个很好的方法,但请随意使用其他命令。

更多内容请阅读 Gitflow workflow

希望这有帮助!

关于git - 如何创建子分支?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59045526/

相关文章:

python - 如何使用 ssh 为 bitbucket/github 从私有(private)仓库下载文件?

javascript - 如何使用.ajax查询多个GitHub url,然后对结果进行排序?

Github "Squash and Merge"- 显示所有先前更改的后续 pull 请求

git - 如果你不能提交到他们的分支,你怎么能将提交到另一个人的 github pull request 添加到你的 repo?

git - 更聪明的 rebase 避免冗余工作?

git - 我安装了 Github Desktop,是否需要安装 Git 才能使用命令行?

git - 更改推送提交的 git 注释

git - 如何使 HEAD 和 origin/master 指向相同(最新)修订版。 (HEAD 指向最新版本,而 origin/master 指向过去版本)

混帐配置 : locations of git configuration files

2 个分支的 Github 比较 View 不正确?