Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 24 Jan 2013 19:19:38 -0500
From:      Greg Larkin <glarkin@FreeBSD.org>
To:        Xyne <xyne@archlinux.ca>
Cc:        Peter Vereshagin <peter@vereshagin.org>, questions@freebsd.org
Subject:   Re: 'svn-export' incrementing?
Message-ID:  <5101CF9A.90903@FreeBSD.org>
In-Reply-To: <20130124215452.3fba0d68@archlinux.ca>
References:  <20130123012915.GA16404@external.screwed.box> <51004C02.9040107@FreeBSD.org> <20130124215452.3fba0d68@archlinux.ca>

next in thread | previous in thread | raw e-mail | index | archive | help
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 1/24/13 4:54 PM, Xyne wrote:
> Greg Larkin wrote:
> 
>> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
>> 
>> On 1/22/13 8:29 PM, Peter Vereshagin wrote:
>>> Hello.
>>> 
>>> I use the 'svn-export this way and expect it will try to
>>> update the 'work-tree' next time I run it:
>>> 
>>> $ python3 svn-export-2013.1/svn-export 
>>> http://svn.gna.org/svn/nasmail/trunk nasmail Exporting new 
>>> repository. Exported revision 1546 [portato@screwed /tmp]$ ls
>>> -a nasmail .               decode          plugin_pack
>>> tests utilities ..              nasmail         plugins 
>>> translations [portato@screwed /tmp]$ python3 
>>> svn-export-2013.1/svn-export
>>> http://svn.gna.org/svn/nasmail/trunk nasmail Exporting new
>>> repository. svn: E155000: Destination directory exists; please
>>> remove the directory or use --force to overwrite svn: E155000:
>>> 'nasmail' already exists error: Command '['svn', 'export',
>>> '-r', 'HEAD', 'http://svn.gna.org/svn/nasmail/trunk',
>>> 'nasmail']' returned non-zero exit status 1
>>> 
>>> I believe there is something wrong in the way I use the 
>>> 'svn-export'. Otherwise it's a no problem for me to patch for 
>>> '--force'.
>>> 
>>> How can I update the already created 'work tree' with 'svn
>>> update'? I think the correct answer is a good idea for
>>> 'Synopsis' docs section.
>>> 
>> 
>> Hi Peter,
>> 
>> In order for svn-export to work in incremental mode, you need to
>> use the --revision-file argument like so:
>> 
>> python3 svn-export-2013.1/svn-export -r rev.dat 
>> http://svn.gna.org/svn/nasmail/trunk nasmail
>> 
>> Then at some point in the future, run the same command.
>> svn-export will read rev.dat, compare the version in there with
>> the current HEAD revision.  If they are different, the script
>> creates a diff and applies it to the local directory.
>> 
>> Hope that helps, Greg
> 
> Hi,
> 
> The explanation is correct but the command example is not. It
> should be
> 
> svn-export --revision-file rev.dat ...
> 
> The reason for this is that svn-export does not include any SVN
> data with the exported files so it has no way to determine what the
> currently exported revision is from the directory alone. You could
> manually run
> 
> svn-export -r <local revision>:HEAD ..."
> 
> but it would be tedious. The "--revision-file" option automates
> this by storing the local export's revision number in a file. It is
> used to determine which revision to diff against. Essentially it is
> the same as running
> 
> svn-export -r $(cat rev.dat):...
> 
> I hope this clears things up.
> 
> Regards, Xyne
> 

Hi Xyne,

Thanks for catching that.  I had intended to write "--revision-file",
but PEBKAC took over!

Cheers,
Greg

- -- 
Greg Larkin

http://www.FreeBSD.org/           - The Power To Serve
http://www.sourcehosting.net/     - Ready. Set. Code.
http://twitter.com/cpucycle/      - Follow you, follow me
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.13 (Darwin)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iEYEARECAAYFAlEBz5oACgkQ0sRouByUApBHUACeP/a83cmkE2EUn2rRL1b1MfaR
8sYAn3ycyyi2wfT2fFEp2KYkMR4V8OCu
=SY/z
-----END PGP SIGNATURE-----



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5101CF9A.90903>