我用Git 管理自己的Android project, 我已经忽略了一些系统自动生成的文件例如:
.gitignore
*.iml.gradle/local.properties.idea/misc.xml.idea/workspace.xml.idea/libraries.DS_Store/build/gradle
.idea/workspace.xml 是 AS 自动生成的
.idea/libraries 是依赖库
但是,我在push的时候。 还是把 build 文件夹给push 到了服务器,别人在pull 的时候,还是有我的build文件夹,这样就会有冲突。
我参考这篇bolg:http://t.hengwei.me/post/gitignore文件不起作用/#
根本原因
.gitignore文件只是ignore没有被staged(cached)文件,对于已经被staged文件,加入ignore文件时一定要先从staged移除。
下面这段话来自github: 因此,要想用gitignore忽略文件,必须先把它们从staged中移除
所以,解决方案:
1 创建 .gitignore file, 将所有的你需要忽略的文件,全部忽略掉。
注意,这时候你有自己的依赖项目的话,也要在自己的依赖项目里,创建
.gitignore file.
2 remove the git cached file
git rm -r -f --cached ./
--cached only remove from the index
-f, --force override the up-to-date check
-r allow recursive removal
. or ./ you want remove index directory
3 git add .
4 git status
you can look this file status
5 git push
or
git push --set-upstream master master
references:
http://stackoverflow.com/questions/11451535/gitignore-not-working
https://help.github.com/articles/ignoring-files/
http://t.hengwei.me/post/gitignore文件不起作用/#
No comments:
Post a Comment