From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on sa.int.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,RCVD_IN_SORBS_WEB, SPF_PASS autolearn=no version=3.2.5 Message-ID: <4AC24266.8010408@rambler.ru> Date: Tue, 29 Sep 2009 21:22:46 +0400 From: "Kharitonov A. Dmitry" User-Agent: Thunderbird 2.0.0.21 (X11/20090323) MIME-Version: 1.0 To: ALT Linux Team development discussions References: <4AC2196B.7000605@solin.spb.ru> <4AC2367C.4020200@solin.spb.ru> <4AC23CEF.7000602@rambler.ru> <200909292005.03553.ledest@gmail.com> In-Reply-To: <200909292005.03553.ledest@gmail.com> Content-Type: text/plain; charset=windows-1251; format=flowed Content-Transfer-Encoding: 8bit Subject: Re: [devel] =?windows-1251?b?UTogIFtnaXRdIMrg6iDw4Ofh6PL8IOHu6/z47ukg?= =?windows-1251?b?6u7s7OjyIO3gIO3l8eru6/zq7j8=?= X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 29 Sep 2009 17:19:25 -0000 Archived-At: List-Archive: List-Post: 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 часа. И, что мне особенно понравилось, удалось разбить правки в одном файле на несколько соммитов ничего не потеряв. > >