Date: Tue, 9 Jul 2013 12:12:22 -0400 From: John Baldwin <jhb@freebsd.org> To: freebsd-current@freebsd.org Cc: Gleb Smirnoff <glebius@freebsd.org> Subject: Re: Ipfilter pre-Vendor Import Issue Message-ID: <201307091212.22444.jhb@freebsd.org> In-Reply-To: <20130705084649.GC67810@FreeBSD.org> References: <201307042210.r64MAEJb002949@slippy.cwsent.com> <20130705084649.GC67810@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Friday, July 05, 2013 4:46:49 am Gleb Smirnoff wrote: > Cy, > > On Thu, Jul 04, 2013 at 03:10:14PM -0700, Cy Schubert wrote: > C> Unfortunately it doesn't work any more. Here is what svn spit out at me. > C> > C> slippy$ cd $MY_WORK_DIR/current/contrib/ipfilter > C> slippy$ svn merge --record-only file:///tank/wrepos/wsvn/base/vendor/ipfilte > C> r/dist@252548 > C> svn: E205000: Try 'svn help merge' for more information > C> svn: E205000: Source and target must be different but related branches > C> svn: E205000: Source and target have no common ancestor: > C> 'file:///tank/wrepos/wsvn/base/vendor/ipfilter/dist@252548' and > C> '.@unspecified' > C> slippy$ > > AFAIU, the problem is that current contrib/ipfilter was never merged > from vendor/ipfilter. So, actually we are dealing with a first import > (from subversion viewpoint), not n-th. > > What I'd prefer to see is the following: > > - commit new ipfilter untouched to vendor-sys/ipfilter > - nuke sys/contrib/ipfilter > - svn copy vendor-sys/ipfilter to sys/netpfil/ipfilter > > In future imports do: > > - commit newer ipfilter to vendor-sys/ipfilter > - svn merge vendor-sys/ipfilter to sys/netpfil/ipfilter > > What's the reason to keep code in contrib? Because we put all other vendor code in contrib/ by convention. When there is vendor code in other places it usually results in confusion. For bits that have userland and kernel bits we use head/contrib and head/sys/contrib pulling from vendor/foo and vendor-sys/foo, respectively. Also, this is not the first import as we used a CVS vendor branch for IP filter previously that svn2cvs preserved. Cy, for your svn merge you said you would do this: cd $MY_WORK_DIR/current/contrib/ipfilter svn merge --record-only \ svn+ssh://svn.FreeBSD.org/base/vendor/ipfilter/dist@NNNNNNN cd $MY_WORK_DIR/current/sys/contrib/ipfilter svn merge --record-only \ svn+ssh://svn.FreeBSD.org/base/vendor-sys/ipfilter/dist@NNNNNNN but instead you did this: slippy$ cd $MY_WORK_DIR/current/contrib/ipfilter slippy$ svn merge --record-only file:///tank/wrepos/wsvn/base/vendor/ipfilte r/dist@252548 Notice you are using 'file:///tank/', not the official SVN repository. All your checkouts and merges should be done using svn.FreeBSD.org, not a local mirror. That might explain your merge problem. Also, if you are just updating the existing vendor branch and not updating it to a newer version I'm not sure you really need the @NNNNNN part for the bootstrap merge, but it probably doesn't hurt. -- John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201307091212.22444.jhb>