ローカルのgitリポジトリを監視し、すべてのコミット/チェックアウト-b/push/状態で "git log"を実行するbashスクリプトをどのように生成しますか?

ローカルのgitリポジトリを監視し、すべてのコミット/チェックアウト-b/push/状態で

コーディング時には通常、VSCodeに2つの端末タブが開きます。タブgitコマンドに使用されます。タブ正しい常にgit log --all --graph --decorate --onelineすべてのブランチとコミットを表示してください。

ラベルを作成しようとしています。正しいgit logブランチをチェックアウトし、新しいブランチをチェックアウト、コミット、プッシュ、プルすると、コマンドが再実行されます。

私はこれを試しました:

# watchgit.sh
inotifywait -m .git/refs -m .git/HEAD |
    while read dir action file; do
        git log
    done

しかしそれは真実ではありません更新する。あちこちでいくつかの追加リフレッシュがあっても大丈夫です。

助けてください。

ありがとうございます! マイVSCode端末設定

ベストアンサー1

右下を見てください。(END)これはgitで使用されているページネーターからのものです。

--no-pagerこの問題は回避できます

その後、while周囲のすべてのイベントに反応しますinotifywait

while inotifywait .git/refs .git/HEAD ; do                                                             
 git --no-pager log --decorate=short --pretty=oneline
done

おすすめ記事