我正在尝试使用objective-git创建一个Git存储库。
指出,文档在某种程度上缺乏GT类如何协同工作来创建存储库。这是我到目前为止所做的工作:
GTRepository *newRepo = [GTRepository initializeEmptyRepositoryAtFileURL:repoURL error:&error]
然后我将一堆文件复制到该目录中。我可以在Git客户端中打开repo,然后在工作目录中查看这些文件。到目前为止一切看起来都很好。但这就是我被困住的地方,我实际创建分支并提交这些文件的下一步是什么?
编辑:我现在已经从我的GTRepository获取了GTIndex(但是,索引的fileURL属性仍然是nil,所以我不确定如何生成该文件)。我遍历我的文件,调用addFile:error:
,在我的索引中创建GTIndexEntries。然后我调用writeTree:
并返回我传入[repository createCommitWithTree:newTree message:@"Initial Commit" parents:nil updatingReferenceNamed:nil error:&error];
的GTTree。这将返回一个有效的GTCommit对象而没有NSError,但我希望[repository headReferenceWithError:& error];现在将返回对新创建的提交的引用,但它仍然返回nil。我是否缺少最终确定此提交的步骤?
答案 0 :(得分:3)
看起来有一个[GTReference referenceByCreatingReferenceNamed:name]
静态方法。 Here's an example如何使用它。