From owner-freebsd-arch@FreeBSD.ORG Fri Aug 26 10:29:10 2011 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8FF87106566C; Fri, 26 Aug 2011 10:29:10 +0000 (UTC) (envelope-from jra40@hermes.cam.ac.uk) Received: from ppsw-50.csi.cam.ac.uk (ppsw-50.csi.cam.ac.uk [131.111.8.150]) by mx1.freebsd.org (Postfix) with ESMTP id 22D668FC1A; Fri, 26 Aug 2011 10:29:09 +0000 (UTC) X-Cam-AntiVirus: no malware found X-Cam-SpamDetails: not scanned X-Cam-ScannerInfo: http://www.cam.ac.uk/cs/email/scanner/ Received: from mail-qy0-f182.google.com ([209.85.216.182]:52678) by ppsw-50.csi.cam.ac.uk (smtp.hermes.cam.ac.uk [131.111.8.157]:465) with esmtpsa (PLAIN:jra40) (TLSv1:RC4-SHA:128) id 1QwtHA-0007qO-rt (Exim 4.72) (return-path ); Fri, 26 Aug 2011 11:04:36 +0100 Received: by qyk9 with SMTP id 9so2469977qyk.13 for ; Fri, 26 Aug 2011 03:04:32 -0700 (PDT) MIME-Version: 1.0 Received: by 10.229.43.203 with SMTP id x11mr1208637qce.127.1314353072600; Fri, 26 Aug 2011 03:04:32 -0700 (PDT) Received: by 10.229.232.196 with HTTP; Fri, 26 Aug 2011 03:04:32 -0700 (PDT) In-Reply-To: References: <35765857-1314243257-cardhu_decombobulator_blackberry.rim.net-329610575-@b2.c15.bise7.blackberry> Date: Fri, 26 Aug 2011 11:04:32 +0100 Message-ID: From: Jonathan Anderson To: Adrian Chadd Content-Type: text/plain; charset=UTF-8 Sender: Jonathan Anderson Cc: vadim_nuclight@mail.ru, mdf@freebsd.org, Robert Watson , freebsd-arch@freebsd.org Subject: Re: Official git export (was: Re: FreeBSD problems and preliminary ways to solve) X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 26 Aug 2011 10:29:10 -0000 On 26 August 2011 10:16, Adrian Chadd wrote: > [snip] > > I've been trying to figure out how to actually _use_ git in a way that > lets me do continuous (re)integration back from/to FreeBSD. > Ie, being able to pull/rebase things from upstream, then push commits > back into the tree, and then pull those back from upstream. > There's git/SVN integration, but I've not seen examples of how it can > be used by FreeBSD developers with SVN accounts; The Gitorious wiki page (http://wiki.freebsd.org/Gitorious) claims that git-svn can be successfully used with our SVN server with a command like: git svn commit-diff -m "git branch to svn" -rHEAD upstream/master work/ hwpmc_kcachegrind svn+ssh://svn.freebsd.org/base/user/fabient/svctest/ I have not tested this yet with path=/base/head, as it's release time and I suspect that people might get rather cranky if I mess things up too badly. I am definitely intending to test this approach once CURRENT is unfrozen, however, and document my experiences in the wiki. One of the downsides of using git-svn is that some things (e.g. "make sysent") expect the $FreeBSD$ in our header files to be expanded to something SVN-ey, but Git believes that it shouldn't munge source code: it's an immutable blob. So, when changing syscalls, one needs to check out syscalls.master using freebsd-subversion, copy it to the Git repo, run "make sysent" and then finally revert syscalls.master to what Git expects it to be (just "$FreeBSD$" at the top). There's a viable argument to be had here as to whether this is a Git problem or an assumption-that-the-script-makes problem, but it is a nit to be aware of. Jon -- Jonathan Anderson Research Student, Security Group Computer Laboratory University of Cambridge +44 (1223) 763747 jonathan.anderson@cl.cam.ac.uk