84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
网易云课堂上的一个问题,事实上 使用 git checkout <filename> 也不会有问题。那 -- 到底是用来做什么?搜了好久不知道哪个是正确答案,求解知道的大神~
走同样的路,发现不同的人生
用来做转义的,比如你有个文件恰好叫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 的)文件。