假设我有一个已经被 git 跟踪的工作树。
.
??? parent
? ??? child1
? | ??? file1.txt
? ??? child2
? | ??? file2.txt
? | ??? grandchild
? | ??? file3.txt
? ??? somefile.txt
? ??? anotherfile.txt
|
Run Code Online (Sandbox Code Playgroud)
我想标记其中的每个跟踪文件,parent
以便 git 不再跟踪对它们所做的任何更改,最终将包括somefile.txt
, anotherfile.txt
, file1.txt
, file2.txt
, file3.txt
.
.gitignore
仅适用于未跟踪的文件,所以我使用--skip-worktree
.
我试过:
1.
git update-index --skip-worktree parent/
Run Code Online (Sandbox Code Playgroud)
给了我,Ignoring path parent/
但是当我检查时git ls-files -v
,它仍然显示我想跳过的文件仍在跟踪中。
2.
git update-index --skip-worktree parent/*
Run Code Online (Sandbox Code Playgroud)
它给了我fatal: Unable to mark file …