关于项目中.gitignore文件中*.properties一行的思考

在做项目重构过程中发现许多项目为了把dev下的配置文件忽略(因为本地配置经常改动),在.gitignore文件中加入“*.properties”来解决。

这样做固然固然很简单方便,但在思考一下,把所有的properties文件一棒子打死了(尤其是我们的gerrit还不能在线预览文件)。其实有这样一种场景,当其它环境的properties文件中有更新,你(也可能是你的队友)写完后本地测试没问题,然后commit 上去,发现非本地环境就是没有跑通,也许你会很快意识到.gitignore文件的问题,但当你本次提交有很多改动混合在一起的时候,你会首先怀疑自己的代码有问题,然后排查了半天,还是不知所以然。。。然后半天过去了。。。发现自己被很弱智的问题坑了。。。是的这是个很忧伤的故事,蛋蛋的忧伤

所以这个.gitignore文件加东西要慎重,太随意的话,在你忘记了你忽略了什么的时候,它就拐回来坑你,还有你的队友

回到我们的问题场景,我们只是为了忽略dev/下的配置文件,打死的范围不要多也不要少,来吧1,2,3走起
1.在”.gitignore”文件中加入”src/**/dev/”
2.清除git版本对要忽略文件的已有追踪
“`
git rm -r –cached src/**/dev/
“`

这时候执行git status查看发现,dev/下的文件被删除了,像下边这样

图片1

看到这个不必困扰,其实这里只是删除了git版本库中对这些文件的记录(看一下dev目录的这些文件,他们还在)。
3.别忘了最后一步add and commit
“`
git add .
git commit -m ‘fix ignore that only ignore dev/*’
git push origin head:refs/for/master
“`

在gerrit中+2并入分支

 

好了,解决,其它忽略类似

有高度,有深度——有赞测试团队介绍读后感

附链接:有赞测试团队介绍

一、有高度:有赞的测试团队基于“提高产品质量”的立场,参与到产品研发流程各个环节:技术评审后的测试方案制定和评审、测试用例编写驱动开发、codeReview、集成测试、多环境测试,并且积累了一系列高效的工具:QA平台、mock服务、安全扫描工具、性能测试平台、持续集成平台、基于测试历史数据分析的工作台。

二、有深度:深入到跟质量相关的各个层面:RPC接口、http接口、线上服务监控等。

他们的测试团队打破了我对测试团队固有的看法:界面点一点、顶多用工具做一下接口测试和压测,他们能基于自己的使命主动出击,做了很多严格意义上讲并不属于测试职能的工作:codeReview、服务监控等,但这些也确实与产品质量和服务质量息息相关。

还有一点,他们的自研能力很强,能基于测试需求开发自己的工具,达到了可持续测试,并且基于测试数据做产品的宏观质量分析。

最大的感触,测试团队也大有可为!