如何正确地可视化我的git仓库?

4

我目前正在我的远程 Git 仓库中进行提交并使用分支。但是,每当我使用:

git log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative

它只显示了我提交历史的一行 - 没有分支,尽管分支被命名为“origin/API”,“origin/dev”和“origin/master”。

我的终端输出截图

如果您查看Showing Git branch structure(我从中获取了命令),屏幕截图显示了“分支”和“合并”

你们能帮我吗?我希望以树形方式查看我的repo(这有助于我更好地进行可视化)而不是一个beanstalk...


如果你还传递了 --all,你会看到什么? - user456814
此外,无论你当前在图片中处于哪个分支,看起来它都没有任何合并提交(这不一定是一件坏事)。 - user456814
1
你在什么系统上使用哪个版本的Git?它“对我有效”。 - mnagel
告诉你,如果你在问题中添加 git log --oneline --graph --all --decorate 的输出,也许我们可以找出问题所在。如果需要,你可以从输出中删除敏感信息。 - user456814
给未来的编辑一个提示,应该编辑这个问题的标题,使得其他人更容易理解实际问题所在,并且更容易搜索到。 - user456814
显示剩余2条评论
4个回答

4
尝试使用这个工具查看您的代码库随时间变化的图表。
git log --oneline --graph --all --decorate

请注意,decorate选项将显示各合并分支的头部位置。而oneline选项则将所有内容都显示在一行中,以便更容易地导航。

谢谢您的建议,不幸的是,它没有改变任何东西...仍然显示一系列提交而没有分支 :( - thisispiers
我认为“问题”可能是祖先分支尚未与其子分支分歧,因此子分支出现在祖先的同一行,这并不是错误。 - user456814

2

来自原帖:

如果您查看Showing Git branch structure(我从中获取了命令),屏幕截图显示“分支”和“合并”

其他日志输出的屏幕截图,其中包含合并提交

如果您想在日志输出中查看不同的分支,则必须具有合并提交。 您尚未执行任何非快进合并(这将产生合并提交),因此您看到的确实是所有分支,其中masterdev的上游父级,而devAPI的上游父级。

原始帖子的日志输出

例如,如果您将APIdev分支进行非快进式合并,则会开始看到合并提交:

# From the dev branch
$ git merge --no-ff API

$ git log --oneline --graph --decorate
* 419eadf (HEAD, dev, API)
|\ 
| * 1b6ebed where API used to be
|/ 
* 51464fc where dev used to be
|
* asdfhsdf (master)

1
你可以尝试下面给出的命令。 对我来说有效。
git log --oneline --graph --all --decorate

0

使用 gitk,这是一个与 git 捆绑在一起的图形化历史记录查看器。

您可以从命令行运行它,它接受许多选项,其中大多数选项都会传递给 git log
$ gitk [git log 选项]

源代码


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