[解決済み】gitブランチの出力をツリー状にする
2022-04-13 19:18:13
質問
今、"git branch"と入力すると、quot;git branchが表示されます。
は、私のブランチを任意の順序でリストアップします。
私が望むのは、"git branch" が私の出力をツリー状にリストアップしてくれればいいんですけどね。
master
|-- foo
|-- foo1
|-- foo2
|-- bar
|-- bar4
ここで、fooとbarはmasterから、foo1とfoo2はfooから、bar4はbarからブランチされたものです。
これは簡単に実現できるのでしょうか?
[コマンドラインユーティリティのみ、zsh/vimのワークフローに適合する必要があります。]
解決方法は?
その
回答は以下の通りです。
用途
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-order
デフォルトでは、ブランチとそのコミットは逆年代順で表示されます。
このオプションは、それらをトポロジー順に表示します(つまり、子孫のコミットは親の前に表示されます)。
$ 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 ([email protected]: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
が表示されます。
- トラッキングブランチの場合、自分のブランチとリモートリポジトリの関連性。
- 機能ブランチの場合、非機能ブランチ("version")との関連付け。
- バージョンブランチの場合、そのブランチは機能ブランチとどのような関係にあるのですか?
関連
-
[解決済み] Git で直近のローカルコミットを取り消すには?
-
[解決済み] Gitブランチをローカルやリモートで削除するには?
-
[解決済み] git pull」と「git fetch」の違いは何ですか?
-
[解決済み] コミット前に 'git add' を取り消すにはどうすればよいですか?
-
[解決済み] リモートのGitブランチをチェックアウトするには?
-
[解決済み] 現在のGit作業ツリーからローカル(未追跡)ファイルを削除する方法
-
[解決済み】"git pull" でローカルファイルを強制的に上書きするには?
-
[解決済み] Git で最新のコミットを新しいブランチに移動する
-
[解決済み】ローカルリポジトリのブランチをリセットして、リモートリポジトリのHEADと同じにする
-
[解決済み】ローカルのGitブランチの名前を変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Git, fatal: リモートエンドが予期せずハングアップしました。
-
[解決済み】ローカルにない作業がリモートに含まれているため、アップデートが拒否された
-
[解決済み】fatal: 有効なオブジェクト名ではない: 'master'
-
[解決済み】マージの競合が発生した git stash pop の取り消し
-
[解決済み】Gitマージで「すでに最新」と報告されるが、違いはある
-
[解決済み】git-mergeの-dry-runオプションはありますか?
-
[解決済み】「オリジン/マスターへのプッシュが拒否されました」というエラーが常に発生するのはなぜですか?
-
[解決済み] LFはgitでCRLFに置き換えられます - それは何ですか、そしてそれは重要ですか?[重複]。
-
[解決済み] ターミナルでGitツリーを表示できない
-
[解決済み] Gitブランチの最も近い親を見つける方法