git show コマンド
特定のコミットの時点でのファイルを確認する。
$ git show 1234abc:path/to/file
オプション
-p
/--patch
:差分を出力する (デフォルト)-s
/--no-patch
:差分の出力を抑制する
ドキュメント:
git-show | Git Documentation [Official]
参考:
git-show | Git コマンドリファレンス (tracpath.com)
How to get the commit info of a changeset – Stack Overflow
How can I view an old version of a file? – Stack Overflow
How do I list all the files in a commit? – Stack Overflow
git am コマンド
ドキュメント:
git-am | Git Documentation [Official]
参考:
git am で他人のコミットをパッチとして当てる方法 – Qiita
git rev-parse コマンド
短縮ハッシュを得る
$ git rev-parse --short HEAD
ドキュメント:
git-rev-parse | Git Documentation [Official]
参考:
git rev-parse でできること | 長生村本郷 Engineers’ Blog
git rev-parse (kenzo0107) – GitHub Gist
What does git rev-parse do? – Stack Overflow
現在のブランチ名を取得する
$ git rev-parse --abbrev-ref HEAD
参考:
git rev-parse コマンド | 酒と涙とRubyとRailsと
シェルスクリプトで現在のブランチ名を取得する | ペンギン村 Tech Blog
リポジトリのカレントブランチ名を取得する | blog: takahiro okumura
git current-branch で現在のブランチ名を返す | There’s an echo in my head
How to get the current branch name? – Stack Overflow
git show-branch コマンド
参考:
git describe コマンド
$ git describe --all HEAD
参考:
git-describe Documentation | Git [Official]
git name-rev コマンド
HEAD
が属するブランチを表示する
$ git name-rev --name-only HEAD
master
からの相対位置を表示する
$ git name-rev --refs master commit
ドキュメント:
git-name-rev | Git Documentation [Official]
参考:
指定したコミットがどのブランチに属するか知りたい | QA@IT
コミットの親子関係を master からの相対距離で調べる方法 | @kyanny’s blog
What does git name-rev do? – Stack Overflow
Print symbolic name for HEAD – Stack Overflow
How to get the current branch name in Git? – Stack Overflow
git cherry コマンド
ドキュメント:
git-cherry | Git Documentation [Official]
参考:
git cherry でブランチ間のコミットの diff を/色もつけて | ゆるよろ日記
git symbolic-ref コマンド
$ git symbolic-ref --short HEAD
ドキュメント:
git-symbolic-ref Documentation | Git [Official]
参考:
リポジトリのカレントブランチ名を取得する | blog: takahiro okumura
ブランチに対して別名をつけることができて墓ドル | ゆるよろ日記
symbolic-ref – ブランチに別名をつける | 誰得UNIX
リモートリポジトリの HEAD のブランチを変更する – Qiita
git rev-list コマンド
$ git rev-list --format=%s --max-count=10 HEAD
ドキュメント:
git-rev-list | Git Documentation [Official]
参考:
Print commit message of a given commit in git – Stack Overflow
git diff-tree コマンド
ドキュメント:
git-diff-tree | Git Documentation [Official]
参考:
How do I list all the files in a commit? – Stack Overflow
git diff-tree and copy or xargs to a folder – Stack Overflow
リモートリポジトリから特定のコミットを取得する
参考:
リモートブランチから特定のコミットだけを取得する – Qiita
Retrieve specific commit from a remote Git repository – Stack Overflow
コミットメッセージを取得する
git show
コマンドを使う
$ git show -s --format=%s HEAD
git log
コマンドを使う
$ git log -1 --format=%s | cat
参考:
Print commit message of a given commit – Stack Overflow
How to read last commit comment? – Stack Overflow
git stripspace コマンド
ドキュメント:
git-stripspace | Git Documentation [Official]
コマンド補完
参考:
入力補完を設定して、Git をより高速に利用しよう | YoheiM .NET
git-completion / git-prompt – 「Git 補完をしらない」「git status を1日100回は使う」そんなあなたに朗報 – Qiita
Git コマンドをタブキーで補完できるようにする | mawatari.jp
Bash で Git を使う | Pro Git book [Official]
Why ‘git ls-files’ is not shown on tab completion? – Stack Overflow
ドキュメント
まとめ
git-completion.bash
Homebrew で Git をインストールすると $(brew --prefix)/etc/bash_completion.d
ディレクトリ内に git-completion.bash
へのシンボリックリンクが作成される。
Homebrew で bash-completion@2
をインストールする。(Bash 4 以降が必要。Bash 3 以前を使用の場合は v1 をインストールする。)
$ brew install bash-completion@2
.profile_bash
で bash_completion.sh
を読み込む。BASH_COMPLETION_COMPAT_DIR
を定義して$(brew --prefix)/etc/bash_completion.d
以下にある v1 互換の補完スクリプトを読み込ませる。
export BASH_COMPLETION_COMPAT_DIR="$(brew --prefix)/etc/bash_completion.d" if [ -r "$(brew --prefix)/etc/profile.d/bash_completion.sh" ]; then source "$(brew --prefix)/etc/profile.d/bash_completion.sh" fi
コード:
参考:
git-completion.bash を使ってブランチ名やコマンドの補完を可能にする | 極上の人生
macOS で bash-completion を有効にする/ついでに git-completion も – Qiita
git-completion.bash 利用時にエラーが出るため、Homebrew での Git を利用するようにする – Qiita
How to Enable Git Tab Completion in Bash on Mac OS X | SpinDance
How to configure Git Bash command line completion? – Stack Overflow
git-prompt.sh
コード: