在使用studio開發的項目過程中有時候我們想將項目發布到github上,以前都是用一種比較麻煩的方式(cmd)進行提交,最近發現studio其實是自帶這種功能的,終於可以擺脫命令行了。
因為自己也沒有做很深的研究,這里就先分享一下通過studio將自己的項目上傳到github上的步驟。
兩個相關概念:Git和github
Git是一個開源的分布式版本控制系統,用以有效、高速的處理從很小到非常大的項目版本管理。Git 是 Linus Torvalds 為了幫助管理 Linux 內核開發而開發的一個開放源碼的版本控制軟件。分布式相比於集中式的最大區別在於開發者可以提交到本地,每個開發者通過克隆(git clone),在本地機器上拷貝一個完整的Git倉庫。
github作為開源代碼庫以及版本控制系統,它是一個網站,給用戶提供git服務.這樣你就不用自己部署git系統直接注冊個賬號,就可以用他們提供的git服務。GitHub可以托管各種git庫,並提供一個web界面,GitHub的獨特賣點在於從另外一個項目進行分支的簡易性。為一個項目貢獻代碼非常簡單:首先點擊項目站點的“fork”的按鈕,然后將代碼檢出並將修改加入到剛才分出的代碼庫中,最后通過內建的“pull request”機制向項目負責人申請代碼合並。
准備
安裝Androidstudio並新建一個工程;
安裝git版本控制系統.如Git GUI;
在github網站上注冊一個賬號.
步驟
1 studio的git配置;
安裝好git后啟動Androidstudio,打開如下路徑File->Settings->Version Control(展開)->git
在Path to Git executable后面的輸入框輸入你安裝的git路徑,如下圖所示:

點擊test按鈕如果出現 Git executed successfully 對話框說明配置成功,同時對話框會顯示你安裝的git版本號;如下圖所示

2 配置github登錄信息;
打開如下路徑File->Settings->Version Control(展開)->GitHub,如下圖所示

填入如下信息:
Host:github.com
Login:你的github賬戶名
Password:你的github賬戶密碼
填完之后點擊test按鈕,如果出現如下對話框說明配置成功,注意,新版的git的儲存目錄為 D:\Program Files\Git\cmd

3上傳工程到github
打開你要上傳的工程,頂部菜單選擇VCS->Import into Version Control->Share Project on GitHub,如下圖所示:

如果你是第一次提交該項目會出現如下對話框,提示你這是一個新的存儲庫(repo),可以自定義repo的名字,和添加描述。

填寫完畢點擊share按鈕如果你的工程沒有問題會出現如下界面

這里列出了將要提交的類,以及各種資源配置文件等等,點擊ok按鈕

注意:這一步容易出現上傳失敗,究其原因,是沒有在git-bash中進行配置:
今天博主正在愉快地學習在AndroidStudio中使用Git,結果報了下面這個錯∑(っ°Д°;)っ:
Can't finish GitHub sharing process
Successfully created project 'Demo' on GitHub, but initial commit failed:
*** Please tell me who you are. Run Git config --global user.email "you@example.com" git config --global user.name "Your Name" to set your account's default identity. Omit --global to set the identity only in this repository. fatal: empty ident name (for (null)>) not allowed during executing git -c core.quotepath=false commit -m "Initial commit" --
看了一下錯誤原因:Run git config --global user.email "you@example.com" git config --global user.name "
原來是git沒有配置的原因,找到git安裝目錄下的Git Bash運行后輸入下面兩行代碼即可:
- git config --global user.email "you@example.com"
- git config --global user.name "Your Name"
問題解決接着繼續:
輸入你的Master password點擊ok,如果提交成功studio右上角會提示相關信息

此時打開你的github網站地址在你的repositories中會看到剛剛提交過的工程名稱,點擊進去會看到完整的提交工程,到此提交結束

項目更新
當項目新增了模塊或者模塊修改了如何更新github上的項目,其實也很簡單。
1 如果你的項目新增了一個類,當你創建該類的時候會提示你是否需要加入git,如下圖所示

選擇yes該類就會加入git,同時該類本身的顏色會有改變(Darcula主題下由正常的白色變為綠色)

此時該類右擊->Git->COmmit File... 出現如下對話框

填寫 commit message 后點擊Commit按鈕,有可能會出現如下警告,忽略它點擊Commit

再次右擊->Git->Repository->Push,如下圖所示

點擊Push出現如下對話框,點擊Pust按鈕

此時打開你的github上的該項目源碼,你會發現新增的類已經出現了

2 如果你的項目中某個類進行了修改需要重新提交;
右擊該類->Git-Add

感覺這步沒什么變化?其實不是,這步其實是吧該類加入到git中;
以后的步驟和新增類的操作一樣,這里不再贅述。
讓我們先看看Git 跟 GitHub 是什么關系?
git是一個版本控制工具
Github是一個用git做版本控制的項目托管平台。
如果要想在AndroidStudio將項目發布到Github上, 第一步當然是安裝Git(Git for windows 下載地址)。
在此之前,一定要擁有Github的賬號。
-
安裝Git
在windows安裝Git很簡單。只需要默認安裝就可以。無需過多的配置。
需要教程的同學看這里 Windows下安裝最新版Git -
配置AndroidStudio 中的Git
先創建一個Android測試項目

然后設置AndroidStudio
將git.exe路徑配置好
將創建好的項目分享到Github 點擊后去讓你登陸Github 下圖
登陸后 驗證通過會跳出下個對話框
創建倉庫 點擊Share
點擊OK這時候就可以把項目發布到GitHub上了 稍等一會 到GitHub 上看一下 是不是已經上傳上來了呢?

接下來讓我們創建個新文件
創建后 AndroidStudio會彈出下面對話框 這時候要點擊Yes
在修改一下MainActivity ,作為測試用。 
點擊主面板上的 Commit Changes 按鈕 並填寫 提交信息 點擊commit 。 
繼續點擊commit
這時候 你會跑去GitHub上 看看有沒有上傳成功。 發現項目並沒有改動 
別着急,我們還需要一步操作 
將項目push到 Github
點擊Push 彈出下圖后 在去網頁端看看 ,是不是已經上傳到Github上了

.gitignore
到這兒,已經將項目發布到Github上了,並且已經學會了提交。 此時,聰明的你也可能發現了,有些文檔是沒有必要提交到Github上的。那就要用到.gitignore

來!讓我們腦補一下 Android Studio項目應該提交哪些文件到GitHub上?
#我用的是這份 #built application files *.apk *.ap_ # files for the dex VM *.dex # Java class files *.class # generated files bin/ gen/ # Local configuration file (sdk path, etc) local.properties # Windows thumbnail db Thumbs.db # OSX files .DS_Store # Eclipse project files .classpath .project # Android Studio .idea #.idea/workspace.xml - remove # and delete .idea if it better suit your needs. .gradle build/ # Signing files .signing/ # User-specific configurations .idea/libraries/ .idea/workspace.xml .idea/tasks.xml .idea/.name .idea/compiler.xml .idea/copyright/profiles_settings.xml .idea/encodings.xml .idea/misc.xml .idea/modules.xml .idea/scopes/scope_settings.xml .idea/vcs.xml *.iml

下次再提交的時候 AndroidStudio 會自動忽略掉不需要上傳的文件。
刪除GitHub倉庫
如何刪除Github倉庫呢 ? 很簡單 
點擊setting 
