如果是git的老司机,那么这个问题就很菜了。就是我们日常在本地管理后,推到远程管理,那么有一些文件我们并不想推送到远程,怎么弄?开始天真的自己竟然认为像node_modules这样的文件,git推送的时候是自动忽略的。(当时的想法是,这些文件太大了,git知道不需要)。现在回过头来,才知道多么天真。
其实,需要我们自己定义规则,去考虑git需要忽略那些文件,机器再智能也需要人去操作。
1、.ignore文件
也就是这个文件,起到了很大的作用,首先建立文件(根目录下),最好在编辑器中建立,防止建不起,因为前面的点很重要,这个文件很重要,一般在项目开始前就应该建好,否则一旦push,处理起来就很麻烦
规则很简单
这是项目中用到的一个简单的配置。
上面的node_modules也看到了,排除node_modules下的文件
/dist/* 这个再前端中一般是打包文件,我们也不需要上传,就是根目录下的dist下面所有文件
.idea一般是webstrom编辑器自动生成的文件
总之,使用合理的规则把自己不想上传的文件,在这里忽略。
这样,可以试试,比如对于新的项目,git add ./所有,会发现以上忽略的文件,不会报红,也就是说忽略了。
一切都是人为!
2、index.lock
这个文件是个什么,其实也是在项目中遇到,当自己想要把项目添加到git版本管理的时候,出现说这个文件已经存在
Unable to create './.git/index.lock ' files exists
也就是我commit不行,这个文件存在?不知道什么原因,最后的解决办法,也看stackoverlfow上面解决办法,强制删除这个文件,最后成功!
rm -f .git/index.lock //注意目录的路径
参考文件:
散尽浮华 https://www.cnblogs.com/kevingrace/p/5690241.html