* [devel] Q: [git] Как разбить большой коммит на несколько?
@ 2009-09-29 14:27 Aleksey Avdeev
2009-09-29 14:35 ` Led
` (4 more replies)
0 siblings, 5 replies; 22+ messages in thread
From: Aleksey Avdeev @ 2009-09-29 14:27 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 247 bytes --]
Приветствую.
А как, в git, разбить один большой коммит на несколько?
PS: Описание решения подобной задачи мне кажется где-то попадалось. Но
сейчас, когда оно потребовалось -- что-то не находиться...
--
С уважением. Алексей.
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 552 bytes --]
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] Q: [git] Как разбить большой коммит на несколько?
2009-09-29 14:27 [devel] Q: [git] Как разбить большой коммит на несколько? Aleksey Avdeev
@ 2009-09-29 14:35 ` Led
2009-09-29 15:24 ` Aleksey Avdeev
2009-09-29 14:37 ` Andrey Rahmatullin
` (3 subsequent siblings)
4 siblings, 1 reply; 22+ messages in thread
From: Led @ 2009-09-29 14:35 UTC (permalink / raw)
To: ALT Linux Team development discussions
On Tuesday 29 September 2009 17:27:55 Aleksey Avdeev wrote:
> Приветствую.
>
> А как, в git, разбить один большой коммит на несколько?
>
> PS: Описание решения подобной задачи мне кажется где-то попадалось. Но
> сейчас, когда оно потребовалось -- что-то не находиться...
git help rebase
смотреть секцию SPLITTING COMMITS
--
Led
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] Q: [git] Как разбить большой коммит на несколько?
2009-09-29 14:27 [devel] Q: [git] Как разбить большой коммит на несколько? Aleksey Avdeev
2009-09-29 14:35 ` Led
@ 2009-09-29 14:37 ` Andrey Rahmatullin
2009-09-29 14:42 ` Kharitonov A. Dmitry
` (2 subsequent siblings)
4 siblings, 0 replies; 22+ messages in thread
From: Andrey Rahmatullin @ 2009-09-29 14:37 UTC (permalink / raw)
To: devel
[-- Attachment #1: Type: text/plain, Size: 389 bytes --]
On Tue, Sep 29, 2009 at 06:27:55PM +0400, Aleksey Avdeev wrote:
> А как, в git, разбить один большой коммит на несколько?
git add --patch для незакоммиченного или git rebase -i для закоммиченного,
видимо.
--
WBR, wRAR (ALT Linux Team)
Powered by the ALT Linux fortune(6):
> Вчера поздно вечером обновлялся.
Кто же обновляется в пятницу поздно вечером?
-- ldv in devel@
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 490 bytes --]
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] Q: [git] Как разбить большой коммит на несколько?
2009-09-29 14:27 [devel] Q: [git] Как разбить большой коммит на несколько? Aleksey Avdeev
2009-09-29 14:35 ` Led
2009-09-29 14:37 ` Andrey Rahmatullin
@ 2009-09-29 14:42 ` Kharitonov A. Dmitry
2009-09-29 14:48 ` Alexey Gladkov
2009-09-29 14:56 ` Alexey I. Froloff
4 siblings, 0 replies; 22+ messages in thread
From: Kharitonov A. Dmitry @ 2009-09-29 14:42 UTC (permalink / raw)
To: ALT Linux Team development discussions
Aleksey Avdeev wrote:
> Приветствую.
>
> А как, в git, разбить один большой коммит на несколько?
>
> PS: Описание решения подобной задачи мне кажется где-то попадалось. Но
> сейчас, когда оно потребовалось -- что-то не находиться...
Я комит преобразовывал в патч и редактировал этот патч.
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] Q: [git] Как разбить большой коммит на несколько?
2009-09-29 14:27 [devel] Q: [git] Как разбить большой коммит на несколько? Aleksey Avdeev
` (2 preceding siblings ...)
2009-09-29 14:42 ` Kharitonov A. Dmitry
@ 2009-09-29 14:48 ` Alexey Gladkov
2009-09-29 14:56 ` Alexey I. Froloff
4 siblings, 0 replies; 22+ messages in thread
From: Alexey Gladkov @ 2009-09-29 14:48 UTC (permalink / raw)
To: devel
29.09.2009 18:27, Aleksey Avdeev wrote:
> Приветствую.
>
> А как, в git, разбить один большой коммит на несколько?
git add --interactive ?
--
Rgrds, legion
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] Q: [git] Как разбить большой коммит на несколько?
2009-09-29 14:27 [devel] Q: [git] Как разбить большой коммит на несколько? Aleksey Avdeev
` (3 preceding siblings ...)
2009-09-29 14:48 ` Alexey Gladkov
@ 2009-09-29 14:56 ` Alexey I. Froloff
4 siblings, 0 replies; 22+ messages in thread
From: Alexey I. Froloff @ 2009-09-29 14:56 UTC (permalink / raw)
To: ALT Devel discussion list
[-- Attachment #1: Type: text/plain, Size: 204 bytes --]
On Tue, Sep 29, 2009 at 06:27:55PM +0400, Aleksey Avdeev wrote:
> А как, в git, разбить один большой коммит на несколько?
Буду оригинальным:
git commit --interactive
--
Regards,
Sir Raorn.
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] Q: [git] Как разбить большой коммит на несколько?
2009-09-29 14:35 ` Led
@ 2009-09-29 15:24 ` Aleksey Avdeev
2009-09-29 16:33 ` Led
0 siblings, 1 reply; 22+ messages in thread
From: Aleksey Avdeev @ 2009-09-29 15:24 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 697 bytes --]
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 кусками, между точками мержей, а сами мержи
-- повторять руками... Есть ли путь проще?
--
С уважением. Алексей.
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 552 bytes --]
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] Q: [git] Как разбить большой коммит на несколько?
2009-09-29 16:33 ` Led
@ 2009-09-29 16:31 ` Aleksey Avdeev
2009-09-29 16:59 ` Kharitonov A. Dmitry
0 siblings, 1 reply; 22+ messages in thread
From: Aleksey Avdeev @ 2009-09-29 16:31 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 915 bytes --]
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
> Но лучше резервную копию перед этим сделать:)
Бранча или всего репозитория?
--
С уважением. Алексей.
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 552 bytes --]
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] Q: [git] Как разбить большой коммит на несколько?
2009-09-29 15:24 ` Aleksey Avdeev
@ 2009-09-29 16:33 ` Led
2009-09-29 16:31 ` Aleksey Avdeev
0 siblings, 1 reply; 22+ messages in thread
From: Led @ 2009-09-29 16:33 UTC (permalink / raw)
To: ALT Linux Team development discussions
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
Но лучше резервную копию перед этим сделать:)
--
Led
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] Q: [git] Как разбить большой коммит на несколько?
2009-09-29 16:31 ` Aleksey Avdeev
@ 2009-09-29 16:59 ` Kharitonov A. Dmitry
2009-09-29 17:05 ` Led
0 siblings, 1 reply; 22+ messages in thread
From: Kharitonov A. Dmitry @ 2009-09-29 16:59 UTC (permalink / raw)
To: ALT Linux Team development discussions
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
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] Q: [git] Как разбить большой коммит на несколько?
2009-09-29 16:59 ` Kharitonov A. Dmitry
@ 2009-09-29 17:05 ` Led
2009-09-29 17:22 ` Kharitonov A. Dmitry
0 siblings, 1 reply; 22+ messages in thread
From: Led @ 2009-09-29 17:05 UTC (permalink / raw)
To: ALT Linux Team development discussions
On Tuesday 29 September 2009 19:59:27 Kharitonov A. Dmitry wrote:
> 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
Конечно, можно гланды и через извесное место удалять. Но называть этот вариант
лучшим?..
--
Led
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] Q: [git] Как разбить большой коммит на несколько?
2009-09-29 17:05 ` Led
@ 2009-09-29 17:22 ` Kharitonov A. Dmitry
2009-09-29 17:46 ` Led
0 siblings, 1 reply; 22+ messages in thread
From: Kharitonov A. Dmitry @ 2009-09-29 17:22 UTC (permalink / raw)
To: ALT Linux Team development discussions
Led wrote:
> On Tuesday 29 September 2009 19:59:27 Kharitonov A. Dmitry wrote:
>
>> 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
>>
>
> Конечно, можно гланды и через извесное место удалять. Но называть этот вариант
> лучшим?..
>
А вы пробовали?
Я на прошлой неделе этим занимался и начал с rebase, убив больше дня и
испортив два репозитария. Потом пошёл описанным выше путём и сделал всё
за 2 часа. И, что мне особенно понравилось, удалось разбить правки в
одном файле на несколько соммитов ничего не потеряв.
>
>
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] Q: [git] Как разбить большой коммит на несколько?
2009-09-29 17:22 ` Kharitonov A. Dmitry
@ 2009-09-29 17:46 ` Led
2009-09-29 18:13 ` Kharitonov A. Dmitry
0 siblings, 1 reply; 22+ messages in thread
From: Led @ 2009-09-29 17:46 UTC (permalink / raw)
To: ALT Linux Team development discussions
On Tuesday 29 September 2009 20:22:46 Kharitonov A. Dmitry wrote:
> Led wrote:
> > On Tuesday 29 September 2009 19:59:27 Kharitonov A. Dmitry wrote:
> >> 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
> >
> > Конечно, можно гланды и через извесное место удалять. Но называть этот
> > вариант лучшим?..
>
> А вы пробовали?
Да
> Я на прошлой неделе этим занимался и начал с rebase, убив больше дня и
> испортив два репозитария. Потом пошёл описанным выше путём и сделал всё
> за 2 часа. И, что мне особенно понравилось, удалось разбить правки в
> одном файле на несколько соммитов ничего не потеряв.
На самом деле, мне очень редко приходится делать глобальный rebase - разве
что, по нескольким последним коммитам и только по ещё неопубликованному.
Пробуманное бранчевание, merge, точечный cherry-pick и revert при
необходимости - вполне достаточно.
--
Led
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] Q: [git] Как разбить большой коммит на несколько?
2009-09-29 17:46 ` Led
@ 2009-09-29 18:13 ` Kharitonov A. Dmitry
2009-09-29 18:18 ` Aleksey Avdeev
` (2 more replies)
0 siblings, 3 replies; 22+ messages in thread
From: Kharitonov A. Dmitry @ 2009-09-29 18:13 UTC (permalink / raw)
To: ALT Linux Team development discussions
>> Я на прошлой неделе этим занимался и начал с rebase, убив больше дня и
>> испортив два репозитария. Потом пошёл описанным выше путём и сделал всё
>> за 2 часа. И, что мне особенно понравилось, удалось разбить правки в
>> одном файле на несколько соммитов ничего не потеряв.
>>
>
> На самом деле, мне очень редко приходится делать глобальный rebase - разве
> что, по нескольким последним коммитам и только по ещё неопубликованному.
> Пробуманное бранчевание, merge, точечный cherry-pick и revert при
> необходимости - вполне достаточно.
>
>
Это всё хорошо, когда комиты нужно объединить. Когда нужно разбить
единичный комит начинается другая песня. Алексей спрашивал про разбивку
и, скорее всего чужого.
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] Q: [git] Как разбить большой коммит на несколько?
2009-09-29 18:13 ` Kharitonov A. Dmitry
@ 2009-09-29 18:18 ` Aleksey Avdeev
2009-09-30 5:28 ` Aleksey Avdeev
2009-09-29 18:41 ` Alexey Voinov
2009-09-29 19:22 ` [devel] " Alexey Rusakov
2 siblings, 1 reply; 22+ messages in thread
From: Aleksey Avdeev @ 2009-09-29 18:18 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 1049 bytes --]
Kharitonov A. Dmitry пишет:
>
>>> Я на прошлой неделе этим занимался и начал с rebase, убив больше дня и
>>> испортив два репозитария. Потом пошёл описанным выше путём и сделал всё
>>> за 2 часа. И, что мне особенно понравилось, удалось разбить правки в
>>> одном файле на несколько соммитов ничего не потеряв.
>>>
>>
>> На самом деле, мне очень редко приходится делать глобальный rebase -
>> разве что, по нескольким последним коммитам и только по ещё
>> неопубликованному.
>> Пробуманное бранчевание, merge, точечный cherry-pick и revert при
>> необходимости - вполне достаточно.
>>
>>
> Это всё хорошо, когда комиты нужно объединить. Когда нужно разбить
> единичный комит начинается другая песня. Алексей спрашивал про разбивку
> и, скорее всего чужого.
Не, своего. Но весьма старого (2007 года).
Разбивку я с помощью git gui (саму разбивку) и git commit --am -c
... (для восстановления времени коммита) 2 письма назад сделал. Сейчас
буду дерево переносить...
--
С уважением. Алексей.
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 552 bytes --]
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] Q: [git] Как разбить большой коммит на несколько?
2009-09-29 18:13 ` Kharitonov A. Dmitry
2009-09-29 18:18 ` Aleksey Avdeev
@ 2009-09-29 18:41 ` Alexey Voinov
2009-09-30 13:11 ` [devel] [JT] " Ivan Fedorov
2009-09-29 19:22 ` [devel] " Alexey Rusakov
2 siblings, 1 reply; 22+ messages in thread
From: Alexey Voinov @ 2009-09-29 18:41 UTC (permalink / raw)
To: devel
On 29.09.2009 22:13, Kharitonov A. Dmitry wrote:
> Это всё хорошо, когда комиты нужно объединить. Когда нужно разбить
> единичный комит начинается другая песня. Алексей спрашивал про
> разбивку и, скорее всего чужого.
И что только люди не делают лишь бы emacs не использовать. :)
emacs + magit легко позволяют как объединять, так и разбивать.
--
Alexey Voinov
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] Q: [git] Как разбить большой коммит на несколько?
2009-09-29 18:13 ` Kharitonov A. Dmitry
2009-09-29 18:18 ` Aleksey Avdeev
2009-09-29 18:41 ` Alexey Voinov
@ 2009-09-29 19:22 ` Alexey Rusakov
2 siblings, 0 replies; 22+ messages in thread
From: Alexey Rusakov @ 2009-09-29 19:22 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 1650 bytes --]
В Втр, 29/09/2009 в 22:13 +0400, Kharitonov A. Dmitry пишет:
> >> Я на прошлой неделе этим занимался и начал с rebase, убив больше дня и
> >> испортив два репозитария. Потом пошёл описанным выше путём и сделал всё
> >> за 2 часа. И, что мне особенно понравилось, удалось разбить правки в
> >> одном файле на несколько соммитов ничего не потеряв.
> >>
> >
> > На самом деле, мне очень редко приходится делать глобальный rebase - разве
> > что, по нескольким последним коммитам и только по ещё неопубликованному.
> > Пробуманное бранчевание, merge, точечный cherry-pick и revert при
> > необходимости - вполне достаточно.
> >
> >
> Это всё хорошо, когда комиты нужно объединить. Когда нужно разбить
> единичный комит начинается другая песня. Алексей спрашивал про разбивку
> и, скорее всего чужого.
А я бы сделал git cherry-pick --no-commit на разбиваемый коммит, а
дальше запустил свой любимый gitg и в нём делал stage/unstage нужным
кускам...
--
Alexey "Ktirf" Rusakov
GNOME Project
ALT Linux Team
[-- Attachment #2: Эта часть сообщения подписана цифровой подписью --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] Q: [git] Как разбить большой коммит на несколько?
2009-09-29 18:18 ` Aleksey Avdeev
@ 2009-09-30 5:28 ` Aleksey Avdeev
0 siblings, 0 replies; 22+ messages in thread
From: Aleksey Avdeev @ 2009-09-30 5:28 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 1228 bytes --]
Aleksey Avdeev пишет:
> Kharitonov A. Dmitry пишет:
>>
>>>> Я на прошлой неделе этим занимался и начал с rebase, убив больше дня и
>>>> испортив два репозитария. Потом пошёл описанным выше путём и сделал всё
>>>> за 2 часа. И, что мне особенно понравилось, удалось разбить правки в
>>>> одном файле на несколько соммитов ничего не потеряв.
>>>>
>>>
>>> На самом деле, мне очень редко приходится делать глобальный rebase -
>>> разве что, по нескольким последним коммитам и только по ещё
>>> неопубликованному.
>>> Пробуманное бранчевание, merge, точечный cherry-pick и revert при
>>> необходимости - вполне достаточно.
>>>
>>>
>> Это всё хорошо, когда комиты нужно объединить. Когда нужно разбить
>> единичный комит начинается другая песня. Алексей спрашивал про
>> разбивку и, скорее всего чужого.
>
> Не, своего. Но весьма старого (2007 года).
>
> Разбивку я с помощью git gui (саму разбивку) и git commit --am -c
> ... (для восстановления времени коммита) 2 письма назад сделал. Сейчас
> буду дерево переносить...
Перенос прошёл успешно: git rebase -p творит чудеса. :-)
PS: Правда пришлось на p5 мигрировать (с 4.1) и git обновить.
--
С уважением. Алексей.
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 552 bytes --]
^ permalink raw reply [flat|nested] 22+ messages in thread
* [devel] [JT] Re: Q: [git] Как разбить большой коммит на несколько?
2009-09-29 18:41 ` Alexey Voinov
@ 2009-09-30 13:11 ` Ivan Fedorov
2009-10-01 8:50 ` Alexey Voinov
0 siblings, 1 reply; 22+ messages in thread
From: Ivan Fedorov @ 2009-09-30 13:11 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 746 bytes --]
Alexey Voinov <voins-u2l5PoMzF/Uox3rIn2DAYQ@public.gmane.org> writes:
> On 29.09.2009 22:13, Kharitonov A. Dmitry wrote:
>> Это всё хорошо, когда комиты нужно объединить. Когда нужно разбить
>> единичный комит начинается другая песня. Алексей спрашивал про
>> разбивку и, скорее всего чужого.
> И что только люди не делают лишь бы emacs не использовать. :)
> emacs + magit легко позволяют как объединять, так и разбивать.
еслиб оно ещё и с мерзопакостным hg умело работать... :(
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] [JT] Re: Q: [git] Как разбить большой коммит на несколько?
2009-09-30 13:11 ` [devel] [JT] " Ivan Fedorov
@ 2009-10-01 8:50 ` Alexey Voinov
2009-10-01 11:26 ` Ivan Fedorov
0 siblings, 1 reply; 22+ messages in thread
From: Alexey Voinov @ 2009-10-01 8:50 UTC (permalink / raw)
To: ALT Linux Team development discussions
Ivan Fedorov пишет:
>> И что только люди не делают лишь бы emacs не использовать. :)
>> emacs + magit легко позволяют как объединять, так и разбивать.
>>
> еслиб оно ещё и с мерзопакостным hg умело работать... :(
http://xtalk.msk.su/~ott/en/writings/emacs-vcs/EmacsMercurial.html
Это если сходу.А при наличии времени magit довольно легко, думаю,
можно подстроить под hg.
--
Alexey Voinov
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] [JT] Re: Q: [git] Как разбить большой коммит на несколько?
2009-10-01 8:50 ` Alexey Voinov
@ 2009-10-01 11:26 ` Ivan Fedorov
2009-10-01 12:00 ` Alexey Voinov
0 siblings, 1 reply; 22+ messages in thread
From: Ivan Fedorov @ 2009-10-01 11:26 UTC (permalink / raw)
To: ALT Linux Team development discussions
[-- Attachment #1: Type: text/plain, Size: 838 bytes --]
Alexey Voinov <voins-u2l5PoMzF/Uox3rIn2DAYQ@public.gmane.org> writes:
> Ivan Fedorov пишет:
>>> И что только люди не делают лишь бы emacs не использовать. :)
>>> emacs + magit легко позволяют как объединять, так и разбивать.
>>>
>> еслиб оно ещё и с мерзопакостным hg умело работать... :(
> http://xtalk.msk.su/~ott/en/writings/emacs-vcs/EmacsMercurial.html
> Это если сходу.
Да смотрел я это давным-давно... до magit там всему так далеко... :(
> А при наличии времени magit довольно легко, думаю, можно подстроить
> под hg.
Где бы взять столько времени...
[-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --]
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [devel] [JT] Re: Q: [git] Как разбить большой коммит на несколько?
2009-10-01 11:26 ` Ivan Fedorov
@ 2009-10-01 12:00 ` Alexey Voinov
0 siblings, 0 replies; 22+ messages in thread
From: Alexey Voinov @ 2009-10-01 12:00 UTC (permalink / raw)
To: ALT Linux Team development discussions
Ivan Fedorov пишет:
>> А при наличии времени magit довольно легко, думаю, можно подстроить
>> под hg.
>>
> Где бы взять столько времени...
>
Я бы занялся, если бы мне был интересен hg, но он у меня вообще нигде
не используется и не предвидится. Вообще в magit код весьма неплох.
Не должно много времени занять.
--
Alexey Voinov
^ permalink raw reply [flat|nested] 22+ messages in thread
end of thread, other threads:[~2009-10-01 12:00 UTC | newest]
Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-09-29 14:27 [devel] Q: [git] Как разбить большой коммит на несколько? Aleksey Avdeev
2009-09-29 14:35 ` Led
2009-09-29 15:24 ` Aleksey Avdeev
2009-09-29 16:33 ` Led
2009-09-29 16:31 ` Aleksey Avdeev
2009-09-29 16:59 ` Kharitonov A. Dmitry
2009-09-29 17:05 ` Led
2009-09-29 17:22 ` Kharitonov A. Dmitry
2009-09-29 17:46 ` Led
2009-09-29 18:13 ` Kharitonov A. Dmitry
2009-09-29 18:18 ` Aleksey Avdeev
2009-09-30 5:28 ` Aleksey Avdeev
2009-09-29 18:41 ` Alexey Voinov
2009-09-30 13:11 ` [devel] [JT] " Ivan Fedorov
2009-10-01 8:50 ` Alexey Voinov
2009-10-01 11:26 ` Ivan Fedorov
2009-10-01 12:00 ` Alexey Voinov
2009-09-29 19:22 ` [devel] " Alexey Rusakov
2009-09-29 14:37 ` Andrey Rahmatullin
2009-09-29 14:42 ` Kharitonov A. Dmitry
2009-09-29 14:48 ` Alexey Gladkov
2009-09-29 14:56 ` Alexey I. Froloff
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git