2014年5月8日 星期四

Xcode強大的Source Control

iOS App學習筆記





相信剛從PC轉移到Mac上的開發者都擁有相同的困擾──找不到一套好用的Source Control工具!到底有沒有像小烏龜(TortoiseSVN)一樣強大的軟體呢?經過搜尋的結果,找到了像「SmartSVN」或「Versions」這樣的答案,雖然免費,但功能遠不及小烏龜;另有一款「Cornerstone」號稱能與小烏龜匹敵,然而一套要價NT$1,790令人望之卻步。在與長官的一次談話中,偶然得知Xcode似乎有內建Source Control,激起了我對它的興趣,一試之下驚為天人,原來這麼強大的工具近在咫尺,接下來就由我替各位一一介紹它的各項功能。

1.   Check Out


如果第一次使用XcodeCheck Out,有些人可能會無法成功,甚至使得Xcode不斷Crash,因此我建議可以先用Command LineCheck Out(圖一),然後記得要Source Control的功能打開(圖二),就能享受Xcode強大的功能囉!

圖一

圖二

2.   Update
同一般的Update功能,故略。

3.   Commit

與小烏龜相同,可以選擇自己想要Commit的檔案,在左方列中勾選與反勾選,名稱後面有「M」字的是修改過的檔案,刪除、新增的檔案則標註「D」和「A」,點選該檔就可以看到前後版本改了什麼東西,預設會跳到第一個修改處,倘若不小心跑掉了或者想看第二個修改處該怎麼辦呢?別擔心、只需滑鼠點擊中間灰色長條,然後利用「上」、「下」方向鍵就能輕鬆切換了,連WinMerge都整合進去了,是不是很方便呢!(這裡有個小提醒,左邊視窗是修改後的結果,右邊視窗才是原檔,與WinMerge正好相反,大家千萬別搞錯喔)

4.   History

提供瀏覽Log的功能,每則Log都有該Revision詳細的修改內容。
接下來要介紹的三種View,可以讓你在Programming的同時開啟,開啟方式為點選右上角的「Show the Version Editor」按鈕(圖三),順帶一提,對於Xcode有任何功能不明白該如何開啟,請在「Help」上搜尋關鍵字(圖四),會有動畫提示,非常貼心。


圖三

圖四

1.   Comparison View


如同WinMerge的「Diff」功能,讓你在修改檔案的同時與原始檔作比較。

2.   Blame View


重點功能!透過Blame View,你能夠看到這行程式碼是誰改的、改在哪個RevisionLog的內容以及改動了那些檔案。

3.   Log View


顯示所有更改過這個檔案的Log,同樣地、所有細節都能清楚看到。

結束本篇的介紹,大家有沒有對Xcode更感興趣了呢?其實Source Control除了以上介紹的一些大功能外,在Programming時也能發覺到一些方便的小設計,讓你維護SVN上的程式碼更加得心應手,這些就留給各位慢慢去體會了,我們下次見!