From: Johannes Sixt Date: Wed, 17 Apr 2013 05:55:41 GMT Subject: Re: Splitting a commit with rebase -i and keeping a commit message Message-ID: <516E395D.3050307@viscovery.net> In-Reply-To: <20130416203825.3701d98b@bigbox.christie.dr> Am 4/17/2013 3:38, schrieb Tim Chase: > I asked this on IRC and played with some of their ideas, but struck > out with anything satisfying. I walked through [1] with the > following setup: > > git init foo > cd foo > touch a.txt b.txt > git add a.txt b.txt > git commit -m "Initial checkin" > echo "Modify A" >> a.txt > git commit -am "Modified A" > echo "Modify B" >> b.txt > git commit -am "Modified B" > echo "Modify A2" >> a.txt > echo "Modify B2" >> b.txt > git commit -am "Modified B" > git commit -am "Long-bodied commit comment about b.txt changes" > # whoops, just wanted B > git rebase -i HEAD^^ > # change the "Added b.txt..." commit to "edit" # and duplicate the instruction line git checkout HEAD^ b.txt # undo b.txt git commit --amend -m "Tweaked a.txt" git rebase --continue # in real world cases, you are likely to see conflicts here # when the commit is applied a second time, # but not in this toy example git rebase --continue -- Hannes