从另一个分支在Git中创建一个分支
我有两个分支: master和dev
我想从开发分支创建一个“功能分支”。
目前在分支机构上,我这样做:
$ git checkout -b myfeature dev
... (一些工作)
$ git commit -am "blablabla"
$ git push origin myfeature
但是,在形象化我的分支之后,我得到了:
--**master**
------0-----0-----0-----0-----0
------------------------**dev**----**myfeature**
我的意思是分支似乎被合并,我不明白为什么......
我做错了什么?
你能解释一下我如何从另一个分支分支并推回到功能分支的远程仓库?
所有在分支模型,如这里描述的。
如果您喜欢您发布的链接中的方法,请查看Git Flow。
这是他为该工作流创建的一组脚本。
但要回答你的问题:
$ git checkout -b myFeature dev
创建MyFeature分支关闭开发。 做你的工作,然后
$ git commit -am "Your message"
现在将您的更改合并到开发中,无需快进
$ git checkout dev
$ git merge --no-ff myFeature
编辑
现在将更改推送到服务器
$ git push origin dev
$ git push origin myFeature
你会看到你想要它。
如果您想从Git中的任何现有分支创建新分支,请按照选项进行操作。
首先从您想要创建新分支的分支中更改/结帐。 例如,如果您有以下分支:
所以,如果你想创建一个名为“subbranch_of_b1”命名的分支下的新分支“BRANCH1”遵循的步骤:
结帐或更改为“branch1”
git checkout branch1
现在,根据“BRANCH1”使用下面的命令创建名为“subbranch_of_b1”新的分支。
git checkout -b subbranch_of_b1 branch1
上面的代码将创建一个名为分支BRANCH1下subbranch_of_b1新的分支(注意branch1
上面的命令是不是强制性的,因为头是目前指向它,你可以精确的,如果你是在一个不同的分支,虽然)。
现在在使用subbranch_of_b1之后,您可以在本地或远程提交并推送或合并它。
创建一个分支
$ git branch branch1
$ git branch branch2
结账分行
git checkout命令切换分支或恢复工作树文件
$ git checkout branchname
重命名分支
$ git branch -m branch1 newbranchname
删除分支
$ git branch -d branch-to-delete
$ git branch -D branch-to-delete
(强制删除而不检查合并状态) 创建并切换分支
$ git checkout -b branchname
完全包含的分支
$ git branch --merged
************************** 分支差异 [git diff branch1..branch2] ************** **********
多线差异$ git diff master..branch1
$ git diff --color-words branch1..branch2