このgitコマンドのファイル名の前の二重ダッシュの意味は何ですか?
git checkout --ours -- path/to/file.txt
git checkout --theirs -- path/to/file.txt
それらは必須ですか?それは同等ですか
git checkout --ours path/to/file.txt
git checkout --theirs path/to/file.txt
Gitリポジトリにpath/to/file.txt
という名前のファイルがあり、その変更を元に戻したいとします。
git checkout path/to/file.txt
ここで、ファイルの名前がmaster
...であるとします。
git checkout master
おっと!代わりにブランチが変更されました。 --
は、チェックアウトするファイルとチェックアウトするツリーを分離します。
git checkout -- master
一部のfreakoが-f
という名前のファイルをリポジトリに追加した場合にも役立ちます。
git checkout -f # wrong
git checkout -- -f # right
これは git-checkout:Argument Disambiguation で文書化されています。
二重ダッシュ「-」は「コマンドラインフラグの終わり」を意味します。つまり、コマンドラインオプションの後に来るものを解析しようとしないように先行するコマンドに指示します。