在不更改 gitignore 项目的情况下忽略本地的一些文件 [重复]
Posted
技术标签:
【中文标题】在不更改 gitignore 项目的情况下忽略本地的一些文件 [重复]【英文标题】:ignore some files in locally without change gitignore project [duplicate] 【发布时间】:2020-07-18 00:03:12 【问题描述】:我并不是真正的 GIT 专家,我一直只在 git 中使用 git add
、git commit -m
和 bla bla(基本),
我已经从克隆项目中获得了一个文件.gitignore
,并且它已经由团队设置。但是为了运行项目,我有另一种方法可以在 Makefile
中添加一些语法,因为我不能使用该项目的默认 Makefile
,我有自己的设置。
所以在这里我更改了Makefile
的文件,但是每次我想git status
时Makefile
的状态是unstaged for commit
,所以我必须手动执行git checkout -- Makefile
,它会像以前一样恢复那个文件并且不会添加到 git 中,因为我的主要问题是:
我想在本地忽略该文件,如何在命令行中执行该操作?
【问题讨论】:
是的,也许可以,你能举个例子吗 ***.com/search?q=%5Bgit%5D+track+file+ignore+changes 您可以在git add
步骤中排除它,如there 所述:git add --all -- :!main/dontcheckmein.txt
【参考方案1】:
Git 无法忽略对跟踪文件的更改。
来自git update-index documentation:
用户经常尝试使用假设不变和跳过工作树位来告诉 Git 忽略对跟踪文件的更改。这不能按预期工作,因为 Git 在执行某些操作时可能仍会根据索引检查工作树文件。一般来说,Git 不提供忽略跟踪文件更改的方法,因此建议使用替代解决方案。
您最好创建一个您在本地忽略的文件(例如,Makefile.local
)(在 .git/info/exclude
中),其中包含以下内容:
# Variable overrides here.
-include Makefile
# Other overrides here.
然后运行make -f Makefile.local
。如果您只想在变量中进行更改(例如,您想为程序使用不同的位置),您可以在命令行中添加变量:make CC=clang
。
【讨论】:
以上是关于在不更改 gitignore 项目的情况下忽略本地的一些文件 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
git学习.gitignore文件忽略和删除本地以及远程文件
[转]Git忽略提交规则 - .gitignore配置运维总结