[devel] Git: как правильно избавиться от патча в виде бранча ?
Aleksey Avdeev
solo на solin.spb.ru
Вт Сен 22 13:12:48 MSK 2015
22.09.2015 10:08, Sergey Afonin пишет:
> On Friday 11 September 2015, Aleksey Avdeev wrote:
>
>> Если патч не сильно большой, то как правило помогает git revert
>> его коммитов (+ решение конфликтов от наслоений).
>
> А есть способ их легко найти ? Или только лог смотреть и искать по
> описанию ?
Я обычно использую 2 способа:
1. Если удаляемый патч выделен в отдельный бранч
(patches/other/005-autocreate в вашем случаи), то помогает запуск gitk
--all и проход по истории бранча, содержащий удаляемый патч. Часто так
можно быстро найти все существенные коммиты бранча.
2. Несколько более муторый способ (но и более надёжный):
а) Отобразить фактические изменения происходящие при мерже бранча с патчем:
$ git diff <merge_commit>{^,}
б) Отображаем коммиты, в которых происходят похожие изменения:
$ git log -S '<подстрока>' <бранч> -- <файл>
где:
<подстрока> -- подстрока нового варианта одной из изменённых строк;
<бранч> -- бранч с патчем (patches/other/005-autocreate);
<файл> -- изменённый файл.
в) Просмотр полученных коммитов в gitk -- высока вероятность что один из
них тот, что нужен для git revert (или он находится в их окрестностях).
Примечания:
1. Помимо поиска по подстроке git log позволяет искать и по регулярному
выражению.
2. gitk позволяет простым образом выделить коммиты где:
а) изменялся заданный файл;
б) добавлялась/удалялась строка, содержащая заданную подстроку.
--
С уважением. Алексей.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : signature.asc
Тип : application/pgp-signature
Размер : 278 байтов
Описание: OpenPGP digital signature
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20150922/7dcbd8ab/attachment.bin>
Подробная информация о списке рассылки Devel