Am 24.11.2009 um 19:30 schrieb Tobia Conforto: > > Now I see. > > I'm not sure what's the best way of doing it either, but your idea > sounds good. Did you investigate the possibility of faking the commit > dates? > > Seeing as Git is a distributed system, I don't see why you shouldn't > be able to set arbitrary commit dates, with a custom rebasing script. > At worst, you'll have to compile a custom git, hacking around the > getdate() call, to accept a commandline parameter with the date to > use. Then, after the macvim patches are rebased on top of an old vim- > extended commit, automatic merges (both ways) will be possible. The > only real downside is that all commits would change hash. > > In my case, I'll try to see if vim_extended tracks vim trunk someway, > then I'll format a patch from the branch I'm interested in and apply > it to macvim. That should be smoother. > > Tobia
Pleas, both of you -- stop reinventing the wheel!
Git has two tools working hand in hand to just do what is needed:
#1 is git format-patch which will transform a series of commits into
mailbox-formated
messages containing the specified commit as a patch
#2 is git am which will import (re-apply) the patches in a given directory in
order.
git am has a switch to explicitly *not* use the original commit date:
--ignore-date
By default the command records the date from the e-mail message as
the commit author date, and uses the time of commit creation as the committer
date.
This allows the user to lie about the author date by using the same
value as the committer date.
Which basically means - you can convert the whole vim_mac repo into patches
(one per commit).
Put them into a directory and then apply them to another repository using git
am.
If all goes well you will end up with a repository containing all patches with
their
respective author and original commit date.
Cheers,
----------------------------------------------------------------------------------
BitSpinn.org - don't get twisted up!
----------------------------------------------------------------------------------
smime.p7s
Description: S/MIME cryptographic signature
