以下の答えは以下を使用しますgit log
:
2009年に「ターミナルでGitツリーを表示できません」で同様のアプローチを述べました:
git log --graph --pretty=oneline --abbrev-commit
しかし、私が使用してきた完全なものは、「git log --graphを使用してタグ名とブランチ名を表示する方法」(2011)にあります。
git config --global alias.lgb "log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset%n' --abbrev-commit --date=relative --branches"
git lgb
元の回答(2010)
git show-branch --list
あなたが探しているものに近づきます(topo注文で)
--topo-order
デフォルトでは、ブランチとそのコミットは新しい順に表示されます。
このオプションは、それらをトポロジー順に表示します(つまり、子孫コミットは親の前に表示されます)。
しかし、ツールgit wtfも役立ちます。例:
$ git wtf
Local branch: master
[ ] NOT in sync with remote (needs push)
- Add before-search hook, for shortcuts for custom search queries. [4430d1b] (edwardzyang@...; 7 days ago)
Remote branch: origin/master (git@gitorious.org:sup/mainline.git)
[x] in sync with local
Feature branches:
{ } origin/release-0.8.1 is NOT merged in (1 commit ahead)
- bump to 0.8.1 [dab43fb] (wmorgan-sup@...; 2 days ago)
[ ] labels-before-subj is NOT merged in (1 commit ahead)
- put labels before subject in thread index view [790b64d] (marka@...; 4 weeks ago)
{x} origin/enclosed-message-display-tweaks merged in
(x) experiment merged in (only locally)
NOTE: working directory contains modified files
git-wtf
あなたを示しています:
- 追跡ブランチの場合、ブランチとリモートリポジトリの関係。
- 機能ブランチの場合、ブランチが非機能(「バージョン」)ブランチにどのように関連しているか。
- バージョンブランチの場合、ブランチと機能ブランチの関係
git_tree
。これは、次のように出力arc flow
します:stackoverflow.com/questions/54227968/…。多分いつか私はそれをgit自体にマージすることさえできます。