Grit commit, кажется, имеет приоритет перед последним коммитом в Git-репо? - PullRequest
1 голос
/ 09 февраля 2011

Я использую Grit для создания репо и совершения как можно меньше раз.Каждый раз, когда я фиксирую, мой коммит сохраняется, но старый исчезает.Кто-нибудь знает, что я делаю неправильно?

Сначала я создаю репо и делаю коммит.Если я фиксирую коммит, я получаю идентификатор коммита, и все работает

repo_name = 'repos/myrepo.git'
repo = Repo.init_bare(repo_name)
index = Index.new(repo)
index.add('mytext.txt', "This is my first text")
index.commit('Text commit')

Затем я делаю еще один коммит

index = repo.index
index.read_tree('master')
index.add('mytext.txt', "This is my second text")
index.commit('Text commit')

.. и когда я делаю git log,последний коммит обнаруживаетсяСледующая строка возвращает 1

repo.commits.count

Есть идеи, что я делаю не так?Я не могу найти какие-либо учебники о том, как использовать методы записи в Grit.Так что любые ссылки также будут оценены.Спасибо!

1 Ответ

2 голосов
/ 09 февраля 2011

Тесто. Ответ был прост. Для коммита № 2 необходимо, чтобы коммит № 1 был родительским. Затем он формирует историю этих коммитов и работает:

index.commit('Text commit', [repo.commits.first])

Я все еще ищу учебники или руководства, объясняющие методы записи в библиотеке Grit. Документация по rubyforge ничего не объясняет.

...