2013年10月30日 星期三

Git Submodule 教學

一、新增模組

- git submodule 相關的指令必須要在 project 的根目錄下(就是要有 .git 的地方)才能夠執行。

- <Destination Path>,請勿先建立空的目錄,若該目錄存在就會產生衝突,所以並不需要額外幫 module 建立目錄

git submodule add <Destination URL> <Destination Path>

Destination URL:
ex:gary@hamawill.dsmynas.com:/volume1/homes/gary/git_server/iOS/Module/Categories

Destination Path:
ex:BleLuggage/Categories


- 在目錄底下打入指令 git status,會發現多了兩個檔案需要 commit

# On branch master
# Changes to be committed:
#       (use "git reset HEAD <file>..." to unstage)
#           new file:     .gitmodules
#           new file:     BleLuggage/Categories

- 注意第一個檔案 .gitmodules,裡面記錄 submodule 的對應關係,我們實際打開看內容

[submodule "BleLuggage/Categories"]
      path = BleLuggage/Categories
       url = gary@hamawill.dsmynas.com:/volume1/homes/gary/git_server/iOS/Module/Categories
- 接著就直接 commit 至 project 底下吧
git add .gitmodules
git commit -m " Init submodule"

二、更新模組

CocoaPods

一.簡介
CocoaPods是一個負責管理iOS項目中第三方開源代碼的工具。
我只需要將用到的第三方開源庫放到一個名為Podfile的文件中,然後執行pod install。CocoaPods就會自動將這些第三方開源庫的源碼下載下來,並且為我的工程設置好相應的系統依賴和編譯參數。

二.安裝與使用介紹


安裝

安裝方式異常簡單, Mac下都自帶ruby,使用ruby的gem命令即可下載安裝:

$ gem install cocoapods 
$ pod setup


使用

使用時需要新建一個名為Podfile的文件,以如下格式,將依賴的庫名字依次列在文件中即可。
platform :ios 
pod 'JSONKit', '~> 1.4' 
pod 'Reachability', '~> 3.0.0' 
pod 'ASIHTTPRequest' 
pod 'RegexKitLite'


然後你將編輯好的Podfile文件放到你的項目根目錄中,執行如下命令即可:

cd "your project home" 
pod install

現在,你的所有第三方庫都已經下載完成並且設置好了編譯參數和依賴,你只需要記住如下2點即可:
  1. 使用CocoaPods生成的 .xcworkspace 文件來打開工程,而不是以前的 .xcodeproj 文件。
  2. 每次更改了Podfile文件,你需要重新執行一次pod install命令。

查找第三方程式庫

你如果不知道cocoaPods管理的庫中,是否有你想要的庫,那麼你可以通過pod search命令進行查找,以下是我用pod search json查找到的所有可用的庫:

問題1:當macbook系統升級時,ruby可能會被移除,這樣就不能使用cocoapods的相關指令?
1.先到apple官網下載commendLine tool,並且安裝
2.嘗試使用以下指令
-> rvm get head
-> rvm reload
-> rvm reinstall ruby-2.0.0
ps:過程中系統提示你有缺少一些工具,使用"rvm requirements"將會自動安裝所需要的工具


轉貼文章:
http://blog.devtang.com/blog/2012/12/02/use-cocoapod-to-manage-ios-lib-dependency/

2013年10月4日 星期五

iOS 開發工具

一. 開發
1.xcode
2.git 以及 用Gitosis 架設 Git server
3.bug track system(可連接git)
4.cocoapod

二.測試
1.GHUnit
2.測試日誌email回報

三.紀錄
1.appledoc生成文件