上傳代碼到github
Android Studio 里集成了上傳代碼到 github 的功能,所以使用上還是很簡單的,設(shè)置里添加賬號并測試,之后就可以很方便地上傳代碼到 github 了
如果你的項目是使用Android Studio新建的,那么關(guān)于 github 基本就沒什么問題了。Android Studio新建項目是自帶 .ignore 文件的,也就是說默認(rèn)是使用了忽略規(guī)則上傳。默認(rèn)忽略的是
*.iml
.gradle
/local.properties
/.idea/workspace.xml
/.idea/libraries
.DS_Store
/build
/captures
但是如果你的項目是之前從 eclipse 導(dǎo)入的,這里你就要注意了,按照上述操作,在 github 上新建項目后,在接下來的同步選項中,你會看到項目里的所有文件都會被上傳,包括apk、iml、idea文件夾、gradle文件夾等。
很明顯,我并不需要把每次編譯就發(fā)生變動的文件(例如debug的apk文件)都上傳,我需要有所忽略的上傳,這也正是.ignore文件的作用。為了使用忽略規(guī)則,我拷貝了.ignore文件進(jìn)項目,再重復(fù)上傳操作,文件并沒有起作用,后來進(jìn)過一番探索,發(fā)現(xiàn)要這樣操作:
-
移除已有的版本控制:移除版本控制
關(guān)閉Android Studio,進(jìn)入項目的文件夾中刪除 .git 文件夾(如果沒有看到該文件夾請打開顯示隱藏文件選項)
復(fù)制一份 .gitignore 文件到項目根目錄(可使用 AS 新建項目,其根目錄就有該文件,或使用插件.gitignore生成,插件在 AS 里搜索就有)附上我使用的忽略規(guī)則:
*.iml
.gradle
/local.properties
/.idea/workspace.xml
/.idea/libraries
.DS_Store
/build
/captures
# OSX
*.DS_Store
# Gradle files
build/
.gradle/
*/build/
# Intellij project files
*.iml
*.ipr
*.iws
.idea/
# Built application files
*.apk
*.ap_
# Files for the Dalvik VM
*.dex
# Java class files
*.class
# Eclipse project files
.classpath
.project
# Generated files
antLauncher/bin
antLauncher/gen
# generated files
bin/
gen/
# Local configuration file (sdk path, etc)
local.properties
# Log Files
*.log
- 啟動 AS,將項目加入版本控制
再重復(fù)之前的操作,import into Version Control--share Project onGithub,這樣就使用上了忽略規(guī)則上傳代碼到github。
之后每次 commit 只需要右鍵項目,先點擊 add 添加版本,再點擊 commit 上傳
以及查看歷史、對比版本等,使用都比較簡單,不必贅述。
如果更改.ignore文件后沒有效果,則執(zhí)行清除緩存操作(操作之前建議commit保存一下)
//清空緩存
git rm -r --cached . //將倉庫中的index遞歸刪除
git add . //重新添加倉庫索引
git commit -m 'update git.ignore' //提交
導(dǎo)入github上的項目
除了上傳自己的代碼到 github,方便進(jìn)行版本控制外,我們還經(jīng)常需要導(dǎo)入 github 上別人的優(yōu)秀項目進(jìn)行學(xué)習(xí),在 Android Studio 新建項目時就可以很方便的從 github 上直接導(dǎo)入項目
然并卵。。理想很美好,現(xiàn)實很殘酷。因為國內(nèi)網(wǎng)絡(luò)環(huán)境的問題,使用這種方式導(dǎo)入 github 的項目,十有八九會因為 gradle 版本不同而被各種 gradle 錯誤搞得生不如死,這里分享一些快速而又愉快的離線導(dǎo)入 github項目的方法:
從 github 上下載項目,舉個栗子,項目名字為 Test
修改第一個文件,位置位于根目錄,即
Test\build.gradle
將紅框所示的地方改成你的 gradle 版本,如果不知道自己的 gradle 版本,很簡單,新建一個項目看它的
gradle 版本是多少。如果不知道自己當(dāng)前 gradle 的版本是多少,和1中解決方法一樣,新建一個項目并進(jìn)入該項目下的 gradle\wrapper\gradle-wrapper.properties
文件夾中查看版本號
- 修改第二個文件,位置位于目錄
Test\gradle\wrapper\gradle-wrapper.properties
將紅框所示的地方改成你的 gradle 版本
修改第三個文件,位置位于目錄
Test\app\build.gradle
,修改項目的 buildToolsVersion 版本號。(老生常談,如果不知道本地的 buildToosVersion,新建個項目看看)如果項目中還帶有 module,則 module 下的 build.gradle 中的 buildToolsVersion 也要記得一起改
就我所遇到的情況,一般修改這些文件后就可以正常導(dǎo)入項目了。再也不會被 gradle 的問題困擾。
離線下載 Gradle
如果因為某些情況,必須要使用指定的 gradle 版本呢?國內(nèi)下載 gradle 又特別的慢,很容易就一直卡在Gradle Build Running。這里分享一下離線安裝 gradle 版本的方法:
查看
項目\gradle\wrapper\gradle-wrapper.properties
文件,獲得需要下載的 gradle 的版本號。到 Gradle Distributions 下載對應(yīng)的 gradle 版本,下載后得到格式為zip的壓縮包。比如下載的版本是:gradle-4.0-milestone-1-all.zip
進(jìn)入文件夾,Mac 上是:
user/.gradle/wrapper/dists
。Windows 上是:C:\Users\Administrator\.gradle\wrapper\dists
。該文件夾下存儲著本地所有的 gradle 版本。不出意外的話在文件夾里會看到正在下載中的 gradle 版本文件夾,即 gradle-4.0-milestone-1-all 文件夾,進(jìn)入該文件夾會看到還有一個文件夾,命名是一串類似于 6r4uqcc6ovnq6ac6s0txzcpc0 的字符串。關(guān)閉卡在 Gradle Build Running 的 Android Studio,并將下載好的zip包不解壓直接拷貝到 6r4uqcc6ovnq6ac6s0txzcpc0 文件夾中。重啟 Android Studio,仍然會提示 Gradle Build Running ,不過我們可以看到剛剛拷貝進(jìn)入的zip包已經(jīng)被自動解壓縮,稍等片刻 Gradle 就安裝完成啦。
以上。