簡體   English   中英

在Xcode中使用Subversion

[英]Using Subversion in Xcode

看起來,所有Google最初針對“ 使用xcode進行顛覆 ”的結果實際上只是用於安裝和配置svn和Xcode的教程,而不是實際使用兩者(即通過Xcode的GUI與svn進行交互)。

有沒有人知道一個好的指南,該指南通過Xcode的GUI教授使用svn的技巧和陷阱? 有什么能彌合最出色的Subversion版本控制書和Xcode IDE之間的鴻溝(就像在使用任何終端命令的情況下在純Xcode GUI中一樣)?

編輯:

我們都喜歡我們的終端命令,我們都喜歡Eclipse,但是(我的意思是最好的方式)都不是問題的重點。 我更喜歡通過Xcode的IDE使用svn,而不是通過終端使用svn,就像我更喜歡(在這種情況下)在Xcode的IDE中進行編碼一樣,而不是使用vim和gcc。 蘋果工程師花費了大量時間在Xcode中實現該SCM菜單。 某人必須在某處看過使用指南。

將此頁面用作使用SVN設置XCode項目的參考。 這是一個很好的起點,但是我將簡要介紹一下我所做的事情(因為該頁面實際上並不是那么有用!)。

幾個注意事項:我正在使用XCode 3.1.2和Subversion 1.4.2。 我聽說過使用SVN 1.5的問題,但是有一些我不會涉及的方法。

首先,我已經建立了一個存儲庫,然后創建了XCode項目。

  1. 在XCode中,您需要使用首選項窗口中的SCM選項卡對其進行設置,以了解您的存儲庫。 輸入:

    1. 名稱(這是任意的,用於XCode引用)
    2. 方案(http或svn)
    3. 主機(即svn.example.com)
    4. 路徑(到主機上SVN存儲庫的確切路徑)
    5. 端口(僅當不是默認端口時)
    6. 以及用於訪問存儲庫的用戶名和密碼。

    在輸入其他字段時,URL將自動填寫。 當所有字段都正確並且XCode表示可以連接時,請單擊“確定”。

  2. 然后打開您的項目,並在項目本身上執行“獲取信息”(帶有感嘆號的圓形藍色圖標)。 在底部的“常規”選項卡下,是SCM的一個選項,選擇您在1中創建的存儲庫,然后關閉窗口。

  3. 現在,在菜單欄中打開SCM,然后轉到“存儲庫”。 希望您已經在基本級別上使用分支,主干和其他目錄來正確構建存儲庫,因為XCode不支持檢出根目錄。 因此,一次在列表中向下瀏覽一個目錄,然后單擊“簽出”按鈕,然后選擇要檢出的目錄(我建議在XCode項目目錄中包含“代碼”或“源”或“ SVN”目錄)。 您不能一次簽出多個目錄,但是可以在第一個目錄完成之前告訴下一個目錄簽出,並使XCode帶有命令隊列。

  4. 完成所有操作后,返回到XCode項目窗口,然后將“ Add-> Existing Files ...”添加到項目中。 選擇您已將存儲庫檢出到的目錄,我建議使用“創建文件夾引用”選項而不是“遞歸創建組”選項,因為添加和刪除的項目將自動反映在“文件夾引用”中,而不反映在“組”中。

現在,您已經將SVN信息庫導入了XCode項目。 在這里,您隨時可以進行更改,只需在文件中單擊鼠標右鍵(如果只有1個按鈕,則單擊Control-Click),上下文菜單底部是用於比較,提交,更新和丟棄(還原)的SCM選項。 ) 文件。 您也可以使用菜單欄中的SCM菜單進行文件或項目范圍的更新/提交/還原。

我第二次通過the_mandrill進行評論,XCode中對SVN的支持非常有限,特別是如果您習慣使用Eclipse。

我也不明白為什么每個人似乎都需要視覺客戶端。 我在項目目錄中打開了一個終端窗口,並且在命令行中與SVN交互時沒有任何問題。

我知道這並不是您所要求的,但是我不會過多地依賴Xcode的SVN的使用,因為您可以使用它進行的操作非常有限。 能夠直接從IDE進行差異或注釋,但對其他方面沒有多大作用。 我認為這不能替代使用單獨的獨立客戶端(例如SmartSVN或Versions)。

您還必須跳過許多步驟,才能使Xcode與SVN 1.5版一起使用,因此在安裝獨立客戶端之前需要了解這一點。 如有疑問,請先簽出沙箱。

這是在XCode中配置Subversion的最佳教程之一-http: //iphonedevelopment.blogspot.com/2009/03/version-control-is-your-friend.html

它還教導甚至在本地MAC中創建存儲庫。

如果您想通過gui界面使用svn,那么我建議您使用eclipse + subclipse插件(與xcode上的svn相比,它具有更多的功能,更可靠,更容易)。

您將像往常一樣在xcode中工作,但是僅將eclipse用作svn客戶端(通過在eclipse中創建常規項目並將其指向您的xcode項目目錄)

這是有關如何安裝subclipse的教程

很多人在使用內置svn客戶端時遇到問題,尤其是要使新項目進入svn並能正常工作時。

我創建了一個有關如何執行此操作的直接前瞻性教程,以及一個眾所周知的陷阱(適用於Xcode,直到最新版本的xcode(包括Iphone 4 sdk))

http://www.sodeso.nl/?p=599

我本人一直在尋找一些好的資源,而我發現的最好的資源之一就是WWDC 2012的一段最近的視頻:

如果不是這種情況, 在此處登錄: https : //developer.apple.com/videos/wwdc/2012/

然后是一個視頻:Session 411-Xcode中的源代碼管理

它說明了如何在GIT和Subversion中同時使用版本控制。 這太好了 !

希望能幫助到你!

使用XCode4,您可以從IDE本身執行幾乎所有的SCM任務,這是向前邁出的一大步。

這是官方指南的鏈接: http : //developer.apple.com/library/mac/#documentation/ToolsLanguages/Conceptual/Xcode4UserGuide/SCM/SCM.html#//apple_ref/doc/uid/TP40010215-CH7- SW26

不幸的是,您仍然必須使用Terminal命令行將新項目添加到SCM ,以上鏈接中也清楚地記錄了該項目。

它沒有告訴您的是,您還需要手動向SCM配置中添加忽略指令,否則最終將導致用戶設置並在存儲庫中構建輸出。 我目前正在確定清單,完成后將更新此答案。

PS:我知道這個問題現在已經很老了,但是我已經為那些來到這里尋找答案的人添加了這個問題。

PPS:終端命令行增加了人為錯誤的可能性,花費的時間更長,更復雜,並且對最終用戶的透明度較低。 總的來說,無法從XCode中向SCM添加項目的設計很差,我希望蘋果公司更好,因為他們通常擅長簡化UI。 對於那里的命令行迷來說,您可能會感到L337,但是嘗試管理一組程序員並對其代碼負責,命令行不是您的朋友。

正如在其他許多答案中提到的那樣,使用Xcode的svn客戶端非常弱(這很友好)。

就個人而言,我認為運行Eclipse 只是為了獲得對svn客戶端的訪問權是有點費力的。

我建議兩個答案:

  • 在Mac上使用專用的svn客戶端(雖然不是免費的,但是Versions和Cornerstone都非常好...還有免費的,例如svnX)
  • 如果您對終端不滿意,則可以編寫幾個要使用的關鍵命令的腳本,然后將它們添加到Xcode用戶腳本文件夾中,然后可以從擊鍵菜單項中觸發它們,就像如果您使用的是Xcode本機客戶端。 通過Google提供了大量有關如何執行此操作的示例。

我碰到了這些-不知道它們的工作情況如何,但是想添加一些資源,如果可以的話:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM