Создание репозитория с Objective-Git

Я пытаюсь создать Git-репозиторий, используя target-git. В документации не хватает того, как классы GT работают вместе для создания хранилища, так что я застрял.

Это то, что я работаю до сих пор:

GTRepository *newRepo = [GTRepository initializeEmptyRepositoryAtFileURL:repoURL error:&error]

Затем я копирую кучу файлов в этот каталог. Я могу открыть репозиторий в Git-клиенте и увидеть эти файлы в рабочем каталоге. Пока все выглядит хорошо. Но это то, где я застрял, каков мой следующий шаг, чтобы фактически создать ветку и зафиксировать эти файлы?

РЕДАКТИРОВАТЬ: Теперь я получил GTIndex из моего GTRepository (хотя свойство индекса fileURL по-прежнему ноль, поэтому я не уверен, как создать этот файл). Я перебираю свои файлы, вызывая addFile:error: который создает GTIndexEntries в моем индексе. Я тогда звоню writeTree: и вернуть GTTree, которое я передаю [repository createCommitWithTree:newTree message:@"Initial Commit" parents:nil updatingReferenceNamed:nil error:&error];, Это возвращает действительный объект GTCommit и никакого NSError, но я ожидаю, что [repository headReferenceWithError:&error]; теперь будет возвращать ссылку на вновь созданный коммит, но он все равно возвращает ноль. Есть ли какой-то шаг, который мне не хватает, чтобы завершить этот коммит?

1 ответ

Решение

Похоже, что есть [GTReference referenceByCreatingReferenceNamed:name] статический метод. Вот пример того, как вы его используете.

Другие вопросы по тегам