From: Florian Weimer Date: Fri, 04 May 2007 17:23:54 GMT Subject: Re: FFmpeg considering GIT Message-ID: <87vef8ijth.fsf@mid.deneb.enyo.de> In-Reply-To: <463B5ABB.5D7A3EC4@eudaptics.com> * Johannes Sixt: > Andy Parkins wrote: >> On Friday 2007 May 04, Michael Niedermayer wrote: >> > for these we currently copy the last good version of the affected files >> > over the current one with svn cp and then apply the changes in nicely >> > split manner. (possibly without the reindention if its uneeded ...) >> >> I might be misunderstanding, but doesn't that leave the "bad" commit in the >> history? > > In the history? Yes. > In the blame? No. > >> >> * -- * -- G -- B -- !B -- 1 -- 2 -- 3 >> >> B is the bad commit; !B would be the result of the svn cp from the previous >> known-good revision, "G"; then 1, 2, and 3 would be the correctly split >> version of "B". > > With svn cp you actually create this "blame" history: > > * -- * -- G -- B > \ > ----- G* -- 1 -- 2 -- 3 > > where G* is a new revision, but since it is otherwise identical to G, it > does not introduce new blame-able lines. With GIT, you could create: * -- * -- G --- B \ \ ---- 1 -- 2 -- 3 Or perhaps : * -- * -- G --- B \ \ ---- G* -- 1 -- 2 -- 3 How do the history viewers handle this situation?