注意:我不确定是否已经提出过这个问题,因为我找不到适合我的背景的任何问题(或者我无法理解现有问题'背景')
这些天我很喜欢Git.特别是,主题分支.我正在开发一个小代码共享应用程序.我有(本地)分支,如"主","认证","书签","评论","鼻子"等...
我的(预期)工作流程如下所示:创建主题分支==>在主题分支上工作==>将文件提交到分支==>将主题分支更改合并到"主"分支.(后来删除主题分支)
我试过为几个分支做同样的事情.它工作正常.但后来当我检查git图时,即使我遵循相同的工作流程,所有机会都发生在"主人"上.没有树线分叉和会聚!它显示了一条带有多个提交的单线.我不知道为什么?我的印象是,我用HEAD指针搞砸了什么?
为了给出实用的观点,这是我的git图:http://github.com/none-da/zeshare/network
以下是我使用的命令:
>> git branch authentication_feature >> git checkout authentication_feature >> # I work with all the files here in "authentication_feature" branch >> git commit -m "Authentication_feature is up" # commiting to the branch >> git branch # just to confirm, which branch I am working on >> git checkout master # trying to shift to master branch >> git merge --no-commit authentication_feature # I merge in two steps. This is step 1 >> git status;git add; git commit -m "Authentication_feature" merged to "master". # This is the step 2 >> git log --graph --pretty=oneline # confirming the graph >> git push origin master # pushing to the remote server(github)
小智.. 7
我敢打赌你正在寻找--no-ff
开关git merge
.默认情况下,如果没有介入提交,merge
只会更新HEAD
到新分支的提示.
如果你想离开合并提交以帮助分组你的提交,请传递--no-ff
.
我敢打赌你正在寻找--no-ff
开关git merge
.默认情况下,如果没有介入提交,merge
只会更新HEAD
到新分支的提示.
如果你想离开合并提交以帮助分组你的提交,请传递--no-ff
.
但后来当我检查git图时,即使我遵循相同的工作流程,所有机会都发生在"主人"上.没有树线分叉和会聚!
嗯......我确实看到了你的一些分支和合并.
您将在此页面中找到所有可能的合并方案
(当时编译 - 2007年底 - 现在SO贡献者:JakubNarębski)
您可能处于快进案例中,这可以解释为什么您的合并将使所有提交在完成后显示为高手:
2 /快进案例; 没有提交A,B,C,我们从以下情况开始:
1---2---3 <-- trunk <-- HEAD \ \-a---b---c <-- branch
2.1 /"
git merge branch
"
1---2---3 /----- trunk <-- HEAD \ v \-a---b---c <-- branch
快进可以简单地移动行李箱的头部.
它不会创建提交,因此:2.2 /"
git merge --no-commit branch
"与2.1一样,因为快速转发不会创建提交.
因此,如果你没有提交master,因为你扩展了,然后在master上进行合并,你所做的只是重置主HEAD ......
分支无法显示的另一个原因是GitHub网络图形可视化工具的演示页面上描述的"待办事项列表效果" (这是您在此处引用的"git图")
但是你只看到每次提交一次.让它沉入一秒钟.
我发现很多编码人员习惯于集中式SCM,他们错过了我们的Graph Visualizer实际显示和连接不同的存储库这一事实.如果我以root身份绘制图形,那么图表会显示一些我尚未进入我的仓库的待办事项列表.
当我想要了解社区在我们的回购分支中所做的事情时,我可以点击图表并立即看到其他人一直在做什么.
如果我要进行Bertg的更改,下次看到图表时,Bertg将不再显示,因为他将不再有任何我不提交的提交.
继续思考待办事项列表,你就会明白图表.
所以,如果是从其他回购分支合并(即你没有看到这些分支了,一旦他们被合并),这可能是从合并真真自己回购分支:合并后,你没有看到他们了你的图形.
但我知道,因为:
我不是该项目的所有者.
我可能想从你的任何分支机构中提取我的回购更改.