git忽略某一行
git通过.gitignore来忽略某一组或者某一个文件,但是如何忽略某一行代码嘞?
这种场景多出现在开发环境与生产环境所需的配置根据项目中config中定义的关键字来切换时遇到的麻烦。
当你在调试代码时是dev环境,发布到线上又要手动改成pro环境,甚是麻烦,所以可以这样做。
1、首先创建一个gitattributes 文件
- <project root>/.gitattributes (会被提交到库中)
或者
- <project root>/.git/info/attributes (不会被提交到库中)
2、添加一个过滤定义
- config.js filter=gitignore
3、定义gitignore 过滤到gitconfig文件中
$ git config --global filter.gitignore.clean "sed '/ //#gitignore$/'d"
$ git config --global filter.gitignore.smudge cat
这样在config.js文件中某一行代码是以 //#gitignore 结尾的将不会被更改
7 回复
这个貌似很有用…
@magicdawn 恩恩 省了不少时间
学习了
学习了👍
原来还能这样~
奇怪,为毛,我们都是dev一个配置pro一个配置 读取 NODE_ENV来决定哪个配置的。 是不是我的打开方式不对
git"黑魔法"很赞! 但pro的配置 还是不要提交到git上比较好吧。。