2011年12月23日 星期五

Xcode 4 建立你的 git 專案

版本控管對於個人開發或是 Team work 都非常非常重要,開發常遇到下面的情況
  1. 不小心刪除掉了 class
  2. 需要救回以前的檔案
  3. 需要做版本比對
  4. Team work 時需要同步每個人的 source code
  5. 還有很多,不過這篇不是介紹版本控管好處的
xcode 4 支援 subversion and git 兩種版本控管軟體,個人覺得整合的算是不錯,只是有時候難免需要到 Terminal 打一下指令。

教學案例情節
今天就寫一篇簡單的入門文章介紹一下 git 使用方式,情節很簡單:建立local repository > 將專案新增進去 > 建立 local repository 跟 remote repository 連結 > push 到 remote repository。

情節設計概念
這個情節是針對一個新的開發人員設計的,進入一個專案 > 拿到 source code > 建立環境 > 開始工作。所以這裡沒有太深奧的概念,只想給入門者一個快速地學習方式,然後在自己深入研究,我也會找時間介紹 git 的設計概念與應用實例。

基本上所有動作可以全部透過 xcode 作,當然也全部都可以透過指令去做。不過步驟就以我覺得最順的方式去做。

git 基本觀念概述
git 的概念是將 source control 區分為本地端跟 server 端,在本地端開發者可以自行控管自己的版本然後在"push"到伺服器端集中控管,

踏出開工的第一步
1.建立專案目錄
justinlin$ mkdir projects/ios_ebook
justinlin$ cd projects/ios_ebook
2.設定 git 賬號
justinlin$ git config --global user.name "justin"
jstinlin$ git config --global user.email "sunny.justin@gmail.com"
3.從 git server 複製專案目錄到 local
justinlin$ git clone gitolite@git.object2.com:ios_ebook
4.使用 xocde 4 打開專案檔案

5.打開 Organizer 切換到 Repositories,左側會出現剛才 clone 的專案,專案目錄下會出現 Branches (local 的 branch list), Remotes ( branch list on the remote server), ios_ebook (專案資源)

6.在 xcode 裡頭編輯 source code 後檔案右側會出現 M 的字樣,這代表的是檔案被修改過,這時候點選滑鼠右鍵 > source control 就會出現 Commit Selected Files 與 Discard Changes兩個選項。如果點選 Commit Selected Files 的話就會將檔案同步到 Local repository。

7.點選 File > Source Control > Push 後會把 Local repository 裡的修改 Push 到 Remote repository 中進行同步

8.這是一個從 git 主機複製出檔案到修改檔案後 commit 到 local repository,再 push 到 remote repository 的基本流程。
補充說明
git 與 subversion 的概念最大不同在於,subversion 只有一個 repository而且是大家共用,這沒甚麼不好,只是因為是共用所以需要好的規劃以防止發生錯誤造成版本問題。
git 將 repository 分離,開發人員擁有自己完整的 repository,你可以自行管理跟規劃 local repository,當一切開發確認後在 push 到 git server。
不過不管那一套,還是需要良好的規劃管理跟版本控管知識,否則不斷地亂 Push 問題依然會發生的。


2 則留言:

  1. 今天被問到如何在意個現有的專案裡建立 GIT Repositry,很簡單:
    1) 開啟 terminal 切換目錄到專案目錄下
    2) 開始下指令
    3) git init
    4) git add .
    5) git commit -m "init project repository"
    6) 重開 xcode 就可以在 xcode 裡使用 git 操作了

    回覆刪除