84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
網易雲課堂上的一個問題,事實上 使用 git checkout 也不會有問題。那 -- 到底是用來做什麼?搜了好久不知道哪個是正確答案,求解知道的大神~
走同样的路,发现不同的人生
用來做轉義的,例如你有個文件剛好叫master,你如果
git checkout master
那明顯只會去拉master這個分支的程式碼,與你所要的不符,當你執行
git checkout -- master
就是真正去拉master文件了
-- 代表「 無論如何,將其之後的 argument 視為一個檔案名稱(filename)」這是 Unix 通用慣例(而非 git 僅有),如:
--
rm -f # 不造成任何影响 rm -- -f # 删除一个名为 "-f" 的文件
如果你要操作的檔名前有-,就可以執行git checkout -- -file-,就可以执行 git checkout -- -file如果你要操作的文件名恰好也属于一个分支名,就可以执行 git checkout -- branch如果你要操作的檔名剛好也屬於一個分支名,就可以執行git checkout -- branch 以確保操作的是該(名為branch 的)檔案。
-
git checkout -- -file
git checkout -- branch
用來做轉義的,例如你有個文件剛好叫master,你如果
那明顯只會去拉master這個分支的程式碼,與你所要的不符,當你執行
就是真正去拉master文件了
--
代表「 無論如何,將其之後的 argument 視為一個檔案名稱(filename)」這是 Unix 通用慣例(而非 git 僅有),如:
如果你要操作的檔名前有
-
,就可以執行git checkout -- -file
-
,就可以执行git checkout -- -file
如果你要操作的文件名恰好也属于一个分支名,就可以执行
git checkout -- branch
如果你要操作的檔名剛好也屬於一個分支名,就可以執行git checkout -- branch
以確保操作的是該(名為branch 的)檔案。