Я пытаюсь сделать очень простую вещь: читать различия из репозитория git через рубиновый самоцвет Grit. Я создаю файл и добавляю строку «Это я меняю первый файл». Теперь я делаю это, чтобы получить diff:
r = Grit::Repo.new("myrepo")
c = r.commits.first
d = r.commit_diff(c.id).first
puts d.first.diff
Вывод этого:
--- a/First-File.asciidoc
+++ b/First-File.asciidoc
@@ -1,2 +1 @@
-This is me changing the first file
Видите этот минус перед добавленной строкой? Почему commit_diff будет отображаться наоборот? Я знаю, что git обращает diff, если я отменяю коммит shas, но это вызов библиотеки Grit, который дает только коммит diff?
Есть какие-нибудь подсказки?