1. 問題
原本在建立工程時AS會自動產生.gitignore檔案,忽略掉不需要進行track的檔案,比如.idea檔案夾、build檔案夾等,但是我在一開始建立項目的時候沒有意識到要忽略檔案,把所有檔案都track了,此時如果只添加.gitignore就不會生效。
即gitignore只對未track的檔案生效,對已經track的檔案不生效。對於已經track的檔案,直接添加gitignore檔案是不夠的,還需要額外的操作。
2. 解決方案
按以下步驟解決:
【step1】 在項目的Git bash執行以下命令
git rm -r -f --cache .
(加 -f 表示強制 )清除對所有檔案的追蹤,最後的點代表操作對象是所有檔案。
【step2】在項目根目錄下和App目錄下添加.gitignore檔案:
.gitignore的內容如下,這個檔案可以在github上下載,網上隨便一搜就能找
到了。
#built application files*.apk*.ap_# files for the dex VM*.dex# Java class files*.class# generated filesbin/gen/out/build/# Local configuration file (sdk path, etc)local.properties# Windows thumbnail dbThumbs.db# OSX files.DS_Store# Eclipse project files.classpath.project# Android Studio*.iml.idea/gradle/# Local IDEA workspace# Gradle cache.gradle#NDKobj/
添加之後的檔案結構圖:
建立項目的時候,可以在File->Settings->IgnoreFiles下面指定要忽略的檔案,可以自動產生.gitignore檔案,如果直接
添加.gitignore檔案則不需要這一步。
【step3】在git bash中執行
git add .
1 1
此時gitignore會生效,不會把那些需要忽略的檔案進行add進來。
【step4】在git bash中執行
git commit -m "add gitignore"
1 1
提交修改即可。
原文是從處看來的。 http://m.blog.csdn.net/u011916937/article/details/75426661