1. 程式人生 > >利用Github、Eclipse進行分散式協同開發

利用Github、Eclipse進行分散式協同開發

        Git是分散式版本控制的一種實現方式,Github提供了Git版本庫託管服務。本文主要介紹利用Github與Eclipse進行團隊分散式協同開發。需要指出的是,任何IDE都可以與Git協作進行開發,Eclipse與Github並無關聯。

Git歷史

         Git由Linux創始人、眾神之神Linus Torvalds開發的,用來進行Linux的版本控制。         1991-2002年,Linux創始人Linus進行Linux程式碼管理以手工的方式進行,通過diff把來自世界各地Linux志願者的原始碼進行合併。在2002-2005年,Linus選擇了一款分散式的商用BitKeeper軟體作為Linux核心的程式碼管理工具。但2005年,Samba作者Andrew Tridgell試圖對BitKeeper進行反向工程,這迫使BitKeeper軟體的所屬公司BitMover收回了Linux社群免費使用BitKeeper的授權。迫不得已,Linus僅僅花了兩週時間自己用C寫了一個分散式版本控制系統——Git!一個月之內,Linux核心原始碼完全由Git管理。         目前,眾多知名的開源軟體都由Git進行版本控制,如:Linux kernel、Android、Jquery、Prototype、PostgreSQL、Ruby on Rails。

利用Github和Eclipse進行分散式開發

Fork專案

        a)  到Github網站,註冊使用者,隨後Fork要協同開發的專案。

        b)  拷貝SSH URL或HTTP URL

檢出專案

        Linux使用者,執行git --version,檢視是否已安裝Git,目前大多數Linux發行版預設都自帶Git。
  •     命令列檢出專案
        執行git clone URL,將專案拷貝到本地,(URL為上一步紅框中,在Github裡拷貝的URL)。         使用git clone前,需要在本地利用ssh生成rsa金鑰,並放到自己的Github賬戶裡,這裡不贅述。
        專案下載到本地後,便可像匯入普通工程那樣,將工程匯入到Eclipse中。
  • Eclipse檢出專案
        a)  在Eclipse中設定SSH
        b)  將公鑰放到自己Githup的賬號裡,不在贅述。         c)  Eclipse新增Git開發者資訊
        d)  從Githup同步程式碼:Import --> Git --> Project from Git

        注:URL地址從自己的Github頁面中獲取

        e)  選擇分支
        f)  選擇本地存放專案路徑

        g)  進行專案下載
    工程下載完畢後,即可編寫程式碼進行開發。

提交程式碼

        程式碼編寫後,進行同步,利用Eclipse提交程式碼到自己的Github倉庫。         a)  Team --> Commit
        b)  提交到自己的github倉庫

        c)  同步到作者倉庫,進入自己的Github頁面,點選Pull Request。
       d)  建立pull request,並填寫註釋

        藍色方框為作者倉庫,綠色方框為本人倉庫,紅色為自動合併
        提交後,需要專案原作者確認,若確認通過,進行合併,程式碼更新到原作者倉庫。

原作者進行合併程式碼

        a)  專案原作者到自己的Github工程頁面,點選pull request
        b)  檢視合併資訊,確認可以合併,點選Merge pull request按鈕

同步程式碼

        保持自己的專案程式碼與原作者同步。         a)  進入自己的Github頁面,點選Pull Request

        :藍色為自己的Github倉庫,黃色為原作者Github倉庫,點選Create pull request。         b)  填寫同步註釋
        c)  點選Merge pull request
        d)  確認合併,Confirm merge
        此時,完成合並原作者程式碼至自己的Github倉庫。         e)  到Eclipse的Git檢視下,進行Fetch
        f)  執行Team --> Pull,此時程式碼同步到本地Eclipse