首页 > 解决方案 > 忽略本地而不是远程的文件修改

问题描述

例如,在我们的git存储库中,settings.ini它包含一堆配置数据。当我在本地测试我们的程序时,程序会自动更改文件中的一些值,例如本地目录路径或 IP 地址等,这对上游的任何人都不感兴趣,但当然设置模块的所有者可能会添加新的设置我需要下载。

目前,我们使用Gitflow 模式,所以我在开发一个功能,但是当我尝试这样做时,git flow feature finish my_feature我得到了一个错误:

致命:工作树包含未分级的更改。中止。

当然,git checkout -- settings.ini或者git stash让我解决这个问题,但是有没有办法将文件标记为“忽略本地更改”,这样我就可以停止收到错误并保留我的更改?

标签: gitgit-flow

解决方案


在此处查看此博客文章:

https://www.jimbobbennett.io/hiding-api-keys-from-git/

这有一种从 git 中“隐藏”信息的技术,这基本上需要添加文件,因为您希望它被检入存储库,然后运行命令:

git update-index --assume-unchanged ./<your file name here>

这将告诉 git 忽略对文件的任何未来更改。

显然,如文章中所述,如果您确实想对文件进行实际更改,则需要再次更新文件。


推荐阅读