git update-index --skip-worktree会影响上游仓库吗?

9
我已经在使用git工具一段时间了,现在为我们的团队建立一个代码库。我们正在开发一款电商平台。
有一些目录和文件需要忽略,例如上传目录和环境特定配置文件。
虽然已在.gitignore文件中添加了配置文件,但我希望使用--skip-worktree或--assume-unchanged来忽略uploads目录。
我的问题是 - 我无法找到明确的答案 - 在上游库中是否会推送--assume-unchanged或--skip-worktree的内容?
如果不是,那么确保在所有仓库实例中git不会操作uploads目录的内容,最佳方式是什么?
1个回答

7
不,--assume-unchaged--skip-worktree都只用于标记您本地仓库中想要避免提交或在扫描更改时跳过的文件。如果您想在所有存储库中全局忽略文件,则最好的方法是将掩码放入.gitignore中:
*.class         # will ignore all class files anywhere
/tmp/           # will ignore tmp directory but only in top directory
/config/prod/*  # will ignore all configuration files in /config/prod path

感谢@kvr000。但是这样怎么办——我理解git不会尊重.gitignore中定义的目录内容。这意味着git在检出和类似操作期间可能会清除这些目录的内容。我的理解正确吗? - jgangso
1
@jgangso:不确定我是否正确理解了问题。但是当提交和从远程仓库拉取时,git会忽略.gitignore中的文件。这些文件将始终保持不变。 - Zbynek Vyskovsky - kvr000
是的,你理解得没错。我试图找到我读过的资源,看看.gitignore是否会像我上面描述的那样行事,以确定我是否有什么误解,但现在找不到了。我将使用.gitignore进行设置,这听起来对我来说是正确的。 - jgangso
12
如果在代码库中已经存在该文件,.gitignore 将不起作用。而 --assumed-unchanged--skip-worktree 不适用于所有的代码库。我们是否有解决方案可以解决这两个问题? - Swaroop

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接