如果你希望本地修改 src/local
文件夹中的内容而不影响远端仓库中的文件,同时保持这些文件在远端仓库中存在,你可以使用 Git 的 assume-unchanged
或 skip-worktree
属性来实现。
使用 assume-unchanged
assume-unchanged
命令告诉 Git 假设文件没有变化,从而忽略本地对这些文件的修改。
-
设置
assume-unchanged
:git update-index --assume-unchanged src/local/*
这将告诉 Git 假设
src/local
文件夹中的所有文件没有变化。 -
取消
assume-unchanged
(如果需要):如果以后你想让 Git 开始跟踪这些文件的变化,可以使用以下命令:
git update-index --no-assume-unchanged src/local/*
使用 skip-worktree
skip-worktree
属性与 assume-unchanged
类似,但更适合用于忽略本地修改而不影响远端的情况。
-
设置
skip-worktree
:git update-index --skip-worktree src/local/*
这将告诉 Git 跳过
src/local
文件夹中的所有文件的工作树检查。 -
取消
skip-worktree
(如果需要):如果以后你想让 Git 开始跟踪这些文件的变化,可以使用以下命令:
git update-index --no-skip-worktree src/local/*
示例操作
假设你有一个文件 src/local/config.js
,你希望本地修改这个文件但不上传到远端:
-
设置
skip-worktree
:git update-index --skip-worktree src/local/config.js
-
验证设置:
你可以用以下命令来验证:
git ls-files -v | grep '^S'
这将列出所有被标记为
skip-worktree
的文件。 -
取消
skip-worktree
(如果需要):git update-index --no-skip-worktree src/local/config.js
通过以上步骤,你可以在本地修改 src/local
文件夹中的文件,而不影响远端仓库中的文件。