Tricky subversion import, what to do?

Giorgos Keramidas keramida at ceid.upatras.gr
Mon Nov 8 09:00:46 UTC 2010


On Sun, 7 Nov 2010 14:53:29 +0100, Ulrich Spörlein <uqs at spoerlein.net> wrote:
> Hello,
>
> this is about importing unifdef 2.4, which has no significant code
> changes, but that's not the point. The wiki is of no help for this
> particular case.
>
> We have no exclusive vendor branch for unifdef, instead it has been
> converted to svn under vendor/CSRG/dist/usr.bin/unifdef/ and some
> parts of its history (eg. r1591) are copied from there:
>
>    A /head/usr.bin/unifdef/Makefile (from /vendor/CSRG/dist/usr.bin/unifdef/Makefile:1590)
>    A /head/usr.bin/unifdef/unifdef.1 (from /vendor/CSRG/dist/usr.bin/unifdef/unifdef.1:1590)
>    A /head/usr.bin/unifdef/unifdef.c (from /vendor/CSRG/dist/usr.bin/unifdef/unifdef.c:1590)
>
> So, my first instinct would be to
>
> $ svn mv $FSVN/vendor/CSRG/dist/usr.bin/unifdef $FSVN/vendor/unifdef/dist
> (put all files (or just the necessary subset?) of unifdef-2.4 in vendor/unifdef/dist)
> $ svn ci
> $ svn cp $FSVN/vendor/unifdef/dist $FSVN/vendor/unifdef/2.4
> $ svn cp $FSVN/vendor/unifdef/dist/unifdef.{c,1} $FSVN/head/contrib/unifdef/
> $ svn rm head/usr.bin/unifdef/unifdef.{c,1}
> (but this part loses the actual history on head, as it was never
> committed to the vendor branch)
> (update usr.bin/unidef/Makefile to point to contrib/unifdef)
> $ svn ci
>
> But then again, the first steps could also be:
> $ svn cp head/usr.bin/unifdef vendor/unifdef/dist; svn ci
> $ svn cp vendor/unifdef/dist vendor/unifdef/2.3; svn ci
>
> This seems more reasonable to me, but I'm not sure what the policy is on
> "old stuff" under vendor/

I think it all depends on how "valuable" the merge history from
/vendor/CSRG/dist/usr.bin/unifdef to /vendor/unifdef/dist is.  IMO it
isn't, because we won't be merging from the CSRG code anymore.

So I'd prefer the second option.



More information about the freebsd-current mailing list