在Android Studio中取得GitHub專案

作者 | 2016-05-09

Git版本控制系統

Git是一個分散式版本控制系統,起初是用在管理複雜且龐大的Linux核心原始碼,它可以保存原始碼在特定時期的的狀態,並指定版本與註解文字,也可以讓開發人員將目前的原始碼回復到特定的版本狀態。

Git使用檔案庫(Repository)來記錄檔案的狀態與資料,可在檔案庫中管理、儲存與修改版本資料,並可在檔案庫中建立開發的分支(Branch),進行實驗功能的開發,未來成功後可以與主幹(trunk)版本合併,成為一個新版本。

GitHub網站

GitHub(http://github.com)是一個使用Git版本控制,並用來存放軟體原始碼的共享虛擬主機服務,由GitHub公司所提供。使用者可申請免費或付費帳號,建立公開的始碼檔案庫,目前,GitHub已有超過9百萬註冊使用者與二千多萬個檔案庫,成為最大的開發原始碼聚集的部落。

筆者在設計本書的範例時,已將每個範例專案的重要階段的原始碼狀態送交至GitHub網站中,因此,使用git工具即可取得專案在每個時期的狀態,可觀察其差異,並協助讀者找到問題並解決。GitHub上的網址為:

https://github.com/android66

GitHub範例專案

本書的範例專案都可以由github網站上取得,Android Studio已支援Git版本管理,唯需要先在本機中安裝Git工具執行程式。

Git工具軟體安裝

請依以下步驟安裝Git工具軟體

1.以瀏覽器打開「Git for Windows」官方網址:

https://git-scm.com/download/,請點擊欲安裝的作業系統類型,如下圖Windows:

A5148

2.再點擊64位元或32位元的安裝檔下載,如下圖「64-bit Git for Windows Setup」:

A5149

3.安裝檔案

請依照預設方式執行檔案安裝即可,64位元版本的安裝資料夾為「C:\Program Files\Git\」,若安裝的是32位元則是「C:\Program Files(x86)\Git\」,執行檔都放置在安裝位置的「bin」與「cmd」子資料夾下,如下圖:

A5150

4.在Andorid Studio中設定

再打開Android Studio,點擊功能表中的「File/Settings」,左方選擇「Version Control/Git」,在右方的Git執行檔路徑「Path to Git executable」中開啟檔案瀏覽指向git.exe的位置,如下圖:

A5152

上圖指向的路徑為「C:\Program Files\Git\cmd\git.exe」,選擇完成後,可按下右方的「Test」測試鈕,測試是否能夠正常執行,如下圖:

A5153

測試成功後,請按下「OK」完成環境設定。

由Github網站取得專案

專案網址為 https://github.com/android66,請以瀏覽器開啟,如下圖:

A5154

在「Repositories」檔案庫中點擊其中一個專案,如「Bmi」,顯示Bmi檔案庫的內容,如下圖:

A5161

上方HTTPS 右方即是Bmi檔案庫的取得網址,為:

https://github.com/android66/Bmi.git

請複製此檔案庫網址,使用這個網址即可取得Bmi完整專案原始碼。

取得Bmi範例專案

在Android Studio中點擊功能表「File/New/Project from Version Control/GitHub」由GitHub版本控制取得專案,顯示如下登入畫面::

A6011

若已有GitHub帳號請填入帳號與密碼,若無,則請點擊上圖的「Sign up」可開啟瀏覽器在github.com申請帳號,如下圖:

A6012

點擊網頁右上方的「Sign up」連結申請一個帳號,再輸入想要使用的帳號名稱(Username)、電子郵件(Email Address)與要使用的密碼(Password),如下圖:

A6013

完成後請按下「Create an account」建立帳號,並收信驗證後,日後即可使用該帳號名稱(Username)與密碼登入GitHub取得檔案庫的專案資料。

帳號申請成功後,請回到Android Studio,在對話框中輸入帳號與密碼,並勾選儲存密碼(Save password),並按下「Login」登入,如下圖:

A6014

在對話框中輸入或貼上Github中的檔案庫網址,如Bmi專案的檔案庫網址:

https://github.com/android66/Bmi.git

再指定下載專案回來的資料夾,請在本機中建立一個或指定一個已存在儲存專案的位置,如「D:\android\project2」,在該資料夾中不可有Bmi的資料夾,如下圖:

A5156

在開始取得專案複本前,請按下右上方的「Test」鈕測試一下是否能夠正確連線,如下圖:

A5157

測試成功後,請按下「Clone」取得複本,可下載GitHub上的檔案庫,在本機中建立一套複本,完成後會出現詢問視窗,要將專案在目前的Android Stduio視窗中開啟,或是為Bmi專案複本另開一個新視窗,如下圖:

A5158

若選擇「This Window」本視窗,會在原視窗開啟Bmi專案,如下圖:

A5159

這個複本就是本書最後完成的Bmi專案範例,可執行、測試本書所實作的應用程式功能。

提示:

若開啟專案後出現「Build Tools」版本錯誤時,請按下藍色建立處理「Install Build Tools 24.0.0.rc2 and sync project」,進行更新與同步專案,如下圖:

A6015

切換至特定版本

版本控制的特色是能夠讓開發人員將每次階段的變動訂定其版本,並記錄專案在當下階段的程式碼,假如讀者想從某章節開始練習,但又不想從頭建立專案,可以先取得該專案的複本後,切換到專案的某一特定階段版本。

以Bmi專案為例,先由GitHub中取得最新版本的專案複本後,按下「Alt+9」在Android Studio下方開啟「Version Control」視窗,再點擊視窗上緣的「Log」,如下圖:

A5162

上圖中的黃色「HEAD」字樣代表目前專案複本是最新的版本,該版本的資訊註名為「SnackBar練習」,由上圖可看到Bmi專案複本目前有幾個階段:

  1. Initial commit
  2. Builder
  3. 多國語言-zh
  4. 匿名類別實作按鈕事件
  5. 第二個Activity與資料傳遞
  6. Activity生命週期
  7. SnackBar練習

假設想練習「匿名類別實作」,可以將Bmi專案複本切換至它的前一個版本「多國語言-zh」,這個名稱上按下滑鼠右鍵,選擇「Checkout Revision」,如下圖:

A5163

Bmi專案複本馬上會切換至「多國語言-zh」所完成的狀態版本下,如下圖的HEAD標示:

A5164

此時專案中的程式碼就是該版本的樣貌,如MainActivity的部份程式碼如下:

A5165

若切換到「Initial commit」初版送交版本後或是關閉專案後再開啟時,原版本控制視窗會消失,原因是因為專案複本中的設定跑掉了,請再設定一下Bmi專案的版本控制,點擊功能表中的「VCS/Enable Version Control Integration」,再選擇「Git」,如下圖:

A5166

A5167

即可再按下「Alt+9」開啟版本控制視窗了。

缷離檔案庫

由GitHub下載回來的Bmi專案是一份與版本控制系統連結的複本,在複本上的修改或新增功能假如沒有正確的帳號與密碼,是無法將修改的專案送交至檔案庫上的,因為你並不是GitHub該檔案庫的擁有者。

假設從GitHub中取得複本後,想要卸離檔案庫並成為一般的獨立本機專案,請點擊功能表中的「File/Settings」,再選擇左方的「Version Control」,如下圖:

A5168

在右方點擊目前連結的專案「D:\android\project2\Bmi」,它的右方使用的是「Git」版本控制,再點擊一下右邊的減號卸離,如下圖:

A5169

成為離線狀態,如下圖:

A5170

再點擊對話框的「Apply」套用按鈕後,再按下「OK」完成設定。

完成後,本專案即成為一般的本機專案,讀者可以自由在這個專案中新增或修改功能,未來也可以將專案送至另一個版本控制系統中。

相關文章:

Category: Android 標籤:, , ,

關於 Hank Tom

專長為程式語言、雲端服務開發,Linux系統管理, 任職:利拓科技 技術長,海林行動科技 技術總監 輔仁大學 兼任助理教授 ,為 Android高效入門>深度學習、CentOS 7建置、管理與伺服器架設實戰、Java網路程式設計、雲端網頁程式設計-Google App Engine應用實作 等書作者

使用Facebook直接回應

發表迴響

你的電子郵件位址並不會被公開。 必要欄位標記為 *