[英]Why do excluded files keep reappearing in my git sparse checkout?
[英]git checkout . adds directories excluded by sparse checkout
在稀疏結賬場景中,命令git checkout .
恢復應該忽略的目錄。 這是設計,還是Git中的潛在問題? 我正在使用git checkout .
放棄我對我的工作副本所做的任何更改 - 是否有另一個命令可以執行相同的操作而不會遇到此問題?
這是一個可重復的例子:
rm -rf test
git init test
cd test
for f in a b c; do
mkdir $f
touch $f/$f
git add $f/$f
git commit -m "added $f"
done
git config core.sparsecheckout true
echo a > .git/info/sparse-checkout
echo b >> .git/info/sparse-checkout
git read-tree -m -u HEAD
ls
ab
到現在為止還挺好。 這是問題所在:
git checkout .
ls
abc
順便說說:
git --version
git version 1.7.10.4
問題為什么被排除的文件會繼續出現在我的git稀疏結賬中? 是相關的,但更老,並沒有完全描述我所看到的。
這不是設計。 Git 1.8.3中的行為發生了變化 。
我很確定這是設計的。 您正在積極訂購git以創建所有這些文件,因此它就是這樣做的。 返回上次提交狀態的正確命令是:
git reset --hard
這也應該考慮您的稀疏結帳設置。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.