2013-07-23 79 views
10

我學習的try git by code school手段,並以單位1.17撤消它使用命令行混帳兩個破折號,沒有更多的選擇

git checkout -- octocat.txt 

和octocat.txt是一個文件,那麼,它的兩個解釋虛線是

它只是承諾命令行,' - '後面沒有更多選項 。這樣,如果您碰巧有一個名爲 的分支octocat.txt,它仍然會恢復該文件,而不是切換到 同名的分支。

但我不明白的是,這是什麼意思,沒有選擇? 由於沒有選擇後,爲什麼它可以通過分支文件區分它?

回答

17

--表示停止處理選項,即使看起來像某個選項,例如, --help,應該像平常一樣處理參數,而不是文件名。

使用此語法,您實際上可以添加或刪除名爲「--help」的文件,否則將不可能。

在git語法中,--通常也用於指定受影響的文件。例如,git checkout something可能表示名爲something的結帳分支或名爲something的文件。如果您使用git checkout -- something,它總是意味着文件,而不是分支。