我正在嘗試使用objective-git創建一個Git存儲庫。有關GT類如何共同創建存儲庫的文檔有點缺乏,所以我很困難。使用Objective-Git創建存儲庫
這是我迄今爲止的工作:
GTRepository *newRepo = [GTRepository initializeEmptyRepositoryAtFileURL:repoURL error:&error]
我那麼一堆文件複製到該目錄。我可以在Git客戶端打開回購,並在工作目錄中查看這些文件。目前爲止,一切都很好。但是,這是我卡住的地方,我的下一步行動是實際創建分支並提交這些文件?編輯:我現在已經從我的GTRepository獲得了GTIndex(儘管index的fileURL屬性仍然是零,所以我不知道如何生成該文件)。我遍歷我的文件,調用addFile:error:
,它在我的索引中創建GTIndexEntries。然後我打電話給writeTree:
並找回一個我通過[repository createCommitWithTree:newTree message:@"Initial Commit" parents:nil updatingReferenceNamed:nil error:&error];
的GTTree。這將返回一個有效的GTCommit對象並且沒有NSError,但是我期望[repository headReferenceWithError:& error];現在會返回對新創建的提交的引用,但它仍然返回nil。是否有一個步驟我失蹤來完成這個提交?
你真的想創建一個索引,或者像'[repository indexWithError:NULL]'一樣加載版本庫的現有索引嗎? –
我沒有看到索引文件,所以我想我必須創建自己的,但我看到indexWithError確實會返回一個有效的GTIndex。現在我將嘗試使用addFile:和writeTree:使用索引,而不是使用GTTreeBuilder –