2011-03-14 72 views
4

嘿, 我現在正在使用Xcode 4幾個星期。來自Xcode 3並且看到所有新功能真是太好了。我喜歡git集成。但是我有這個問題。 我從一個本地git倉庫開始的最新項目。這一切工作正常,我做了多次提交。我想獲得我的項目的舊版本。所以我嘗試使用Pull。但只要我點擊該按鈕,我得到以下信息:Xcode 4 git集成

The operation could not be performed because access to the repository "/Users/***/Desktop/TestClone" was denied. 

Check your name and password and try again. 

的問題是,我沒有在任何地方定義名稱和密碼。我怎樣才能在我的項目中獲得一個州的副本? 結帳按鈕始終顯示爲灰色,因此我無法點擊該按鈕。

任何幫助,將不勝感激。 :-D

回答

14

您不應該使用'pull ...'命令來「返回」(檢出)舊版本的代碼。

'pull'和'push'命令用於將本地存儲庫與「原始」遠程存儲庫進行同步。當你「克隆」一個原始的遠程倉庫以便與其他程序員協調你的改變時,通常會使用這個特性。

如果您從頭開始創建項目,則不會有任何遠程存儲庫推入或拉出。

回到原來的問題,據我所知,除非您爲該提交創建了新的分支,否則Xcode 4將不會讓您檢出用戶界面中較早的提交。不過,你可以通過命令行來完成。爲此,使用以下命令從項目文件夾

$ git log --format=oneline 

得到你想要去犯的哈希碼,然後用:

$ git checkout desired-hash-code 

檢出特定版本。一旦出現,您可以進行測試,更改,並可能創建一個新的分支。如果您在不創建新分支的情況下執行提交,那麼您將失去當前分支中較新的提交。如果你想回去的最新提交已執行的舊版本使用了一些測試後:再次

$ git checkout master 

請注意,如果你從你的舊代碼版本的新承諾,這將無法正常工作,而無需創建新分支,因爲當前分支中的更新提交得到解除引用。

如果你是新來的Git,我會讀這些文件:

我也想強調這兩個:

乾杯。

+5

順便說一下,您可以在不關閉Xcode 4中的項目的情況下使用所有git命令,因爲它會很樂意重新載入更改後的文件。 – 2011-03-19 21:12:09

+0

非常感謝您的解釋。它真的幫助了我。我會嘗試一下。是的,我是git的新手。我以前曾經使用過顛覆......我會閱讀這些文檔。 :-D – 2011-03-23 15:59:54

+0

以及評論沒有出來......再試一次。這裏是一個列表,我不得不去經過我的舊提交:cd /Users/yourName/Desktop/yourApp/.git然後,因爲我只能在舊的開發人員文件夾/ Developer \ 4.1/usr/bin/git log中找到git - -format = oneline所以現在你看到哈希...然後/ Developer \ 4.1/usr/bin/git重置505bd4eb95ddedaf0a165b706d8ec556fc728574(或者你的哈希是什麼) – hokkuk 2012-03-19 01:00:12

0

我認爲問題在於你正在更新打開項目的項目文件。您可能必須關閉項目或退出Xcode,才能使用命令行或DTerm(而不是Xcode內)檢出項目的較早版本。

+0

謝謝您的回答。我不是很習慣混帳。這是我第一次嘗試使用它。你能告訴我如何用命令行檢查一個項目嗎?那太好了。 :-D – 2011-03-14 20:28:39

1

如果您已經創建了分支,您可以使用Xcode中Organizer的Repositories選項卡恢復到分支點。具體方法如下:

  1. 從Xcode中,通過轉到窗口菜單 - >管理,或按鍵盤快捷鍵打開管理器中,按住Shift +加利福尼亞+ 2
  2. 點擊庫頂部的工具欄
  3. 在上查看在右側的導航窗格中,單擊相應項目的工作目錄(它將有一個藍色文件夾圖標)
  4. 在管理器窗口的左下角,單擊Switch Branches按鈕。
  5. 將出現一個彈出窗口,允許您選擇要使用的分支;選擇所需的分支,單擊確定,Xcode將所有文件同步到該分支。

而且,看到https://developer.apple.com/library/mac/#recipes/xcode_help-repositories_organizer/articles/SwitchingBranches.html的視頻指南