git忽略某一行
发布于 10 年前 作者 p412726700 6583 次浏览 最后一次编辑是 8 年前 来自 分享

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上比较好吧。。

回到顶部