假设这个场景
.gitignore
个文件。.gitignore
文件,因此构建后,我无法git fetch
或git pull
,因为git会宣传changes not committed
所以我想解决这个问题,但我不能只用.gitignore
制作一个*.elf
,因为有一些elf文件是用git服务器发布的。
当然我不能告诉.gitignore
不要忽略git服务器发布的这些elf文件,因为将来可能会有一些新的elf二进制文件添加到git服务器
那么,如果我创建忽略自身的.gitignore
,那么它将不会被推送到git服务器,但会影响我的git fetch
进程吗?如果服务器和本地计算机中存在两个不同的.gitignore
规则,哪个规则git fetch
会遵守?
我怎样才能解决我的问题?
答案 0 :(得分:3)
首先,停止在存储库中存储二进制文件。 Git旨在跟踪源代码更改,而不是二进制文件中的更改。
其次,实际上有三个位置被忽略要跟踪的文件:.gitignore
(本地项目),.git/info/exclude
(本地项目,不公开),以及全局排除文件,适用于所有Git项目。您的个人.git
文件夹中的任何内容都不会在上游共享,因此您可以随意在该文件中添加您喜欢的任何排除项,以便它们不会在其他任何位置传播。
您似乎不希望创建.gitignore
文件,因为您希望避免删除ELF文件的风险,但欢迎您将此排除添加到您的本地{ {1}}档案。