LINUX.ORG.RU

как «отсортировать» коммиты?

 


0

1

Привет!

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

(VCS - git, если кто не увидал в тегах. сам их частенько пропускаю ))

★★★★★

Последнее исправление: aol (всего исправлений: 2)

Понятие «отсортировать список коммитов в порядоке следования в истории коммитов» для DVCS несколько затруднительно, в силу их нелинейной природы. Отсортировать по дате можно однозначно, по «истории» — нет. Какое ожидается поведение, если коммиты принадлежат разным бранчам (пусть и смерженым в итоге)?

Sectoid ★★★★★
()
Ответ на: комментарий от Sectoid

забыл упомянуть - они гарантированно на одном бранче. так что, тут «по дате» и «по истории», можно сказать, одно и то же..

aol ★★★★★
() автор топика
Ответ на: комментарий от panter_dsd

репы в наличии. хотелось бы средствами гит, а не путём распарсивания его вывода.. типа, скормил ему хэши коммитов, а он сам их отсортировал )

буду еще поковырять. потом придется костылить, если ничего не выйдет.

aol ★★★★★
() автор топика
Ответ на: комментарий от panter_dsd

Если есть сам git (странно, если бы его не было), можно попробовать

git log --pretty=format:%H | grep -f файл_с_коммитами

Будут коммиты в обратном порядке (1-й самый новый)

lodin ★★★★
()

git show hash покажет дату и сами изменения, но я точно не скажу как из этого получить только дату. ну на крайний случай всегда есть perl.

nCdy
()
Ответ на: комментарий от panter_dsd

надо то, что написано в ОП: выбрать из файла со списками коммитов самый молодой и самый старый.

aol ★★★★★
() автор топика
Ответ на: комментарий от lodin

да, пока я пришел именно к этому, спасибо :)

aol ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.