Re: renames in StGIT
- From
Karl Hasselström <kha@treskal.com>
- Date
- Oct 24, 2006, 09:16 UTC
- Message-ID
- <20061024091620.GB29265@diana.vm.bytemark.co.uk>
- In-Reply-To
- <b0943d9e0610240148s15d6ec5ch6114360a603fcd71@mail.gmail.com>
On 2006-10-24 09:48:44 +0100, Catalin Marinas wrote:
> Actually, it might not be a big performance impact. For diff > generation in the export and mail commands, we should have a flag.
Agreed.
Show 17 quoted lines
> The push operation might not need a flag since it will only checks > renames if all the other operations failed. A push with merge > detection has the steps below (if one succeeds, push is finished): > > 1. check (exact) patch merges by reverse-applying the diff > 2. apply the diff with git-diff | git-apply since this is faster > than a three-way merge > 3. try a three-way merge between head, bottom and top > > Step 3 above is handled per file by the > stgit.gitmergeonefile.merge() function. This is the place where we > should have the rename detection. Since, the majority of the patches > don't rename files and, in most cases, the push finishes at step 2, > it is probably safe to extend this function and the users won't > notice a speed difference. > > I'll add it to the TODO list.
Sounds good. I had a feeling it ought to be basically free in the majority of cases, so I'm glad to learn I'm right. :-)
--
Karl Hasselström, kha@treskal.com
www.treskal.com/kalle