From: Junio C Hamano Date: Thu, 12 Feb 2009 23:22:09 GMT Subject: Re: [RFC PATCH] Teach rebase to rebase even if upstream is up to date with -f Message-ID: <7viqnfi6la.fsf@gitster.siamese.dyndns.org> In-Reply-To: Sverre Rabbelier writes: > On Thu, Feb 12, 2009 at 22:34, Junio C Hamano wrote: >> For that, I would prefer to see: >>  (1)   git format-patch --stdout origin >my.mbox >>  (2)   git fetch origin >>  (3)   git checkout origin             ;# yes, detach >>  (4)   git am --whitespace=fix my.mbox >>  (5)   make test >>  (6)  git format-patch -o to-send-out origin >>  (7)   git send-email ..options.. to-send-out > > If I understand things correctly 'git rebase -f --whitespace=fix > origin' does only 1 and 4, yes? In my workflow I do 2 and 5 as 'git > pull --rebase' before I push anything, and since I push rather then > send-email, I never use 6 and 7. That leaves 3, which I guess is > specific to your workflow? I am guessing you detach to make it easier > to easily test many different topic branches. > >> It fixes whitespace breakages, but more importantly, the procedure makes >> sure that what you will be sending out will apply cleanly to the origin >> that may have progressed since you last looked at it. > > Mhhh, would 'git fetch && git rebase -f whitespace=fix orgin' do the > same? Do you see any other problems with the patch? No, because I didn't read the patch text; I don't read patches that are larger than 20 lines during the day-job hours. I was only commenting on your "rebase does not work if I am up to date with respect to origin and here is my workaround". Obviously neither the "fetch origin and reapply" nor "pull --rebase" would make any difference if you were indeed up to date.