LoginSignup
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

tag

$ git rev-parse v0.1.1
>> 4b7688eda62c07ec71f7a9576395861c252bd904

省略ハッシュ

$ git rev-parse 4b7688
>> 4b7688eda62c07ec71f7a9576395861c252bd904

gitリポジトリのディレクトリを返す

$ git rev-parse --git-dir
 >> .git

現在のディレクトリにリポジトリがあるかどうかを確認

$ git rev-parse --is-inside-work-tree
>> true

リポジトリが共有リポジトリか確認

$ 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
191
165