私たちは皆git status
、コマンドとその出力の始まりを知っています:
$ git status
On branch add_multiple_items_to_set__to_master
Changes not staged for commit:
(use "git add/rm <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
最後に述べた行は、--
最後のコミットを参照するために使用する必要があることを示唆しています- HEAD
。
私はいつもこれがどこから来たのか疑問に思いました。考え出しにそれは私が使用できることを、私はしばらく時間がかかったgit checkout HEAD <file>...
し、これと同じ結果を期待して、ということgit log -1 --
とgit log -1 HEAD
もこれと同じです。
どのステートメントで--
構文がより自然ですか?---
など、他に複数のダッシュのショートカットはありますか?
--
はGitに固有のものではなく、を参照していませんHEAD
。
これは、オプションの終わりを示すUnixコマンドラインツールで一般的に使用される引数です。基本的に、「-
またはで始まっていても、私に続くものはすべて通常の引数であり、オプションではありません」と書かれています--
。
これは、ツールを次のようなファイルで動作させる方法です--foo
。
git checkout --foo
# Um... I don't have an option called --foo. Time to bail out!
git checkout -- --foo
# Ooh, look! I'll operate on this perfectly valid file called --foo
Gitは、デフォルトHEAD
で多くのコマンドに使用することになります。
も参照してください
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加