相关文章推荐
191
165

More than 5 years have passed since last update.

git rev-parse でできること

Posted at

git の記事などを見ていると、よく rev-parse というコマンドが出てきます。
rev-parse単体でググっても使い道がよくわからないので、メモ変わりにrev-parseでできることをここに書いてみます。

git-rev-parse(1) Manual Page
https://www.kernel.org/pub/software/scm/git/docs/git-rev-parse.html

使用可能なリファレンス(ref)を渡すとハッシュを返す
$ git rev-parse 1838ad4786...02cc4e713a
>> 02cc4e713a10dc68bcba40919f0f23eb62b45ec4
>> 1838ad478661d8cdb544c9adf921d08a97f7cc91
>> ^02cc4e713a10dc68bcba40919f0f23eb62b45ec4
$ git rev-parse v0.1.1
>> 4b7688eda62c07ec71f7a9576395861c252bd904
省略ハッシュ
$ git rev-parse 4b7688
>> 4b7688eda62c07ec71f7a9576395861c252bd904
gitリポジトリのディレクトリを返す
$ git rev-parse --git-dir
現在のディレクトリにリポジトリがあるかどうかを確認
$ git rev-parse --is-inside-work-tree
リポジトリが共有リポジトリか確認
$ git rev-parse --is-bare-repository
>> false
トップレベルディレクトリを絶対パスで取得
$ git rev-parse --show-toplevel
>> /path/to/repository
サブディレクトリにいるときにトップレベルのディレクトリからの相対パスを出力
$ git rev-parse --show-cdup
>> path/
使用可能なすべてのリファレンスを出力
$ git rev-parse --all
>> d2c70a0299127fbfa3cb898cb0b1ffd1186a01b4
>> a8a66d65282a22ae93954a468121a66ffc6926a3
>> d8cf577b01c3b52b1d568cf32230cf3537c3a5f5
>> f55abf927a2300831bbffb877a6f6ae8bec701d6
>> 81732ec5d6040da5c1ad9b68022292c97d6d3198
>> 69249bdcb954bb851df9901ed6491119836c2c8d
>> 63c8ebd4f31a1d580b8068f44b547d8418002972
>> b771459c556b79442ef0c5a1569c74a173c9492b
>> 53d65668f327df193637c4150a45fab1eacd138f
>> 4b7688eda62c07ec71f7a9576395861c252bd904
>> d490a6e5c0862bcd49450d79ba81d6d01470c42a
$ git rev-parse --branches
>> d2c70a0299127fbfa3cb898cb0b1ffd1186a01b4
$ git rev-parse --tags
>> d8cf577b01c3b52b1d568cf32230cf3537c3a5f5
>> f55abf927a2300831bbffb877a6f6ae8bec701d6
$ git rev-parse --remotes
>> a8a66d65282a22ae93954a468121a66ffc6926a3

自分が知ってるのはこれくらいです。
もっとあればコメントお願いします!

191
165
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
Sign up Login
191
165
 
推荐文章