Git Branch更改不会显示在Master之外

时间:2015-08-10 19:31:26

标签: git

我对git很新。我创建了一个分支。该分支显示在远程仓库所在的BitBucket中。但是,我不应该看到我的更改的单独开发路径?我的变化似乎在主线上。

在右侧,您可以看到每次办理登机手续的分行标记。

enter image description here

2 个答案:

答案 0 :(得分:1)

很难习惯分支日志的“一维”视图。如果打开Git Bash(本地),请在存储库中运行以下命令:

$ git branch -vv

您应该看到差异分支及其最后提交(以及提交消息)。这将为您提供证明/验证每个分支处于不同的提交状态。

此外,一个令人惊讶的好GUI就是gitk

$ gitk --all

对我来说,这个图形更容易看到分支。

很难在bitbucket上看到那个图片,但你的分支有一点点缩进。如果你在创建了前一个分支后在master分支上提交了,那么在更加引人注目的分支上会更明显,因为master分支会提交不在你的其他分支中的提交

答案 1 :(得分:1)

  

但我不应该为我的变化看到一个单独的发展路径吗?

是的,您的更改位于不同的分支中。 Git并没有像你期望的那样展示它。

你期待这样的事情......

o [mybranch]
|
o
|
o
 \
  o [master]
  |

但BitBucket已经向您展示了这一点。

o [mybranch]
|
o
|
o
|
o [master]
|

如果mastermybranch之间没有不同的变化,Git将不会做任何特别的事情。如果有人对master提交了提交,那么您就会看到一个分支。

o [mybranch]
|
o
|
o o [master]
 \|
  o
  |

这可能看起来很奇怪,但它对Git分支的工作方式有意义。分支机构不是真正的分支机构,它们只是提交标签。如果提交没有两个父母,那么它就不会在图表中显示扭结。

这似乎是学术性的,但理解快速转发,合并和转换在Git中的工作方式变得非常重要。例如,如果您要将mybranch合并到master,Git就不会合并;它会将master分支移动到与mybranch相同的提交。这被称为快进。

o [mybranch] [master]
|
o
|
o
|
o
|