git如何让文件只提交一次,之后对文件改动都不进行提交,且所有分支起效
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git如何让文件只提交一次,之后对文件改动都不进行提交,且所有分支起效相关的知识,希望对你有一定的参考价值。
参考技术A 有一个配置文件git上保存一份可发布状态的
但是本地测试需要对配置文件进行改动
这些改动并不想提交到git
之前做法
1
git update-index --assume-unchanged
让本地不对文件进行追踪
但是这个做法对其他分支并没有效果
有什么命令可以达到我想要的效果?
git-extras 提供了一个命令 git lock,可以实现这个功能,提交文件以后用 git lock 命令把配置文件锁住。
当然这个 git lock 命令的实现很简单,包装了 git 自带的功能:
有同样的效果。
.gitignore文件不知道能不能满足,提交一次之后把配置文件填加入.gitignore文件中,之后就不会提交了
仅与文件一起使用,不与目录一起使用。 我认为,更快的方法之一:
恢复跟踪
git update-index --no-assume-unchanged sp_edaijia/protected/controllers/ApiController.php //恢复跟踪
如果忽略的文件多了,可以使用以下命令查看忽略列表
git uls-files -v | grep '^h '
提取文件路径,方法如下
git ls-files -v | grep '^h ' | awk 'print $2'
所有被忽略的文件,取消忽略的方法,如下
git ls-files -v | grep '^h' | awk 'print $2' |xargs git update-index --no-assume-unchanged
这样的话,这个文件的改动就不会在git status的时候显示。
以上是关于git如何让文件只提交一次,之后对文件改动都不进行提交,且所有分支起效的主要内容,如果未能解决你的问题,请参考以下文章