質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

Q&A

解決済

2回答

381閲覧

git log の `--` オプションについて

yhkrtkk

総合スコア29

Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

0グッド

2クリップ

投稿2022/09/11 04:58

前提

git log <path>git log -- <path>の違いは何なのでしょうか。
--をつける、つけないで何が変わるのでしょうか。
マニュアルには--は以下のように説明されていますが、よくわからなかったので質問です。

Paths may need to be prefixed with -- to separate them from options or the revision range, when confusion arises.

混乱が生じた場合、オプションまたはリビジョン範囲からパスを分離するために、パスの前に -- を付ける必要がある場合があります。

ちなみにこのコマンドは指定したファイルの変更コミット履歴を確認することができます。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

miyabi-sun

2022/09/11 07:45

> 「混乱が生じた場合」 これはコマンドライン引数のオプションを沢山付与して、コマンド実行者やGitコマンド自体が「混乱した場合」の事を指しているのだと思います。
guest

回答2

0

オプションまたはリビジョン範囲からパスを分離するため

この文章が示す内容としては、例えば「--graph」や「HEAD^」といった名前のパスがある場合に--が必要になるということでしょう。
試しに「HEAD^」という名のファイルを置いてgit log HEAD^を実行してみたところ以下のエラーとなりました。(リビジョン優先じゃないんですね)

$ git log HEAD^ fatal: ambiguous argument 'HEAD^': both revision and filename Use '--' to separate paths from revisions, like this: 'git <command> [<revision>...] -- [<file>...]'

投稿2022/09/11 12:15

ikadzuchi

総合スコア3047

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

ファイルパスを指定した場合でも、ファイルが存在しない場合、与えられた引数が <path> なのかそれ以外なのかを判断することができず混乱してしまいます。

続く引数が <path> であることを明示するために -- を用います。削除済みのファイルに対して git log を参照したい場合などに利用します。

投稿2022/09/11 09:36

arcxor

総合スコア2859

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問