[devel] Q: [git] Как разбить большой коммит на несколько?
Kharitonov A. Dmitry
kharpost at rambler.ru
Tue Sep 29 16:59:27 UTC 2009
Aleksey Avdeev wrote:
> Led пишет:
>> On Tuesday 29 September 2009 18:24:42 Aleksey Avdeev wrote:
>>> Led пишет:
>>>> On Tuesday 29 September 2009 17:27:55 Aleksey Avdeev wrote:
>>>>> Приветствую.
>>>>>
>>>>> А как, в git, разбить один большой коммит на несколько?
>>>>>
>>>>> PS: Описание решения подобной задачи мне кажется где-то
>>>>> попадалось. Но
>>>>> сейчас, когда оно потребовалось -- что-то не находиться...
>>>> git help rebase
>>>> смотреть секцию SPLITTING COMMITS
>>> Спасибо, это оно (git gui весьма сильно помогает).
>>>
>>> А есть ли вариант rebase, учитывающий мержы? В смысле: как сделать
>>> rebase так, чтобы была не одна ветка, а дерево?
>>>
>>> PS: Собираюсь делать rebase кусками, между точками мержей, а сами мержи
>>> -- повторять руками... Есть ли путь проще?
>>
>> rebase с ключём -p
>> Но лучше резервную копию перед этим сделать:)
>
> Бранча или всего репозитория?
Бранча.
Это совсем не лучший вариант. Лучше создать патч из комита, который
хочешь разбить примерно так :
git-show git-show -p --raw HEAD >same.patch
потом руками в редакторе создать из него несколько патчей и приложить
обратно примерно так:
git-apply --whitespace=nowarn --numstat --index --apply same.patch;
git-rm (если нужно)
git-add (если нужно)
git-commit -a
More information about the Devel
mailing list