[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [SVN-DEV] Re: svn needs a patch subcommand (Was svn ci/up --xml-file)

From: C. Scott Ananian <cananian_at_lesser-magoo.lcs.mit.edu>
Date: 2001-09-17 04:37:05 CEST

On 16 Sep 2001, Ben Collins-Sussman wrote:

> Mo, I see two different needs:
>
> 1. Subversion users need to be able to trade patches with one
> another, and the patches need to describe not only property
> changes, but tree deltas (e.g. deleting/adding/renaming
> directories as well as files.)
[...]
> 2. Subversion users need to be able to create patches for CVS or
> other non-Subversion users. An 'svn patch' subcommand should
> be similar to CVS's -- generate standard patch files.

Actually, there is only one need. 'patch' will ignore lines it does not
understand, so it is entirely possible (indeed, desirable) to create *one*
patch format which covers both of these cases. 'svn xdiff' generates
'patch++' format which is both a) usable with standard patch, and b)
usable as input to 'svn patch' which will apply the patch++ in its
entirety. Better yet, this patch format is a valid XML document!

I've already described how this is done, and sent an email to Mo just a
little bit ago re-stating it.
  --s

nuclear security Peking BATF Israel Treasury Bejing Cheney shotgun
Waihopai assassinate FBI Columbia struggle postcard Hager DC Marxist
              ( http://lesser-magoo.lcs.mit.edu/~cananian )
 --
 "These students are going to have to find out what law and order is
 all about." -- Brig. General Robert Canterbury, Noon, May 4, 1970,
 minutes before his troops shot 13 unarmed Kent State students, killing 4.
 --
            [http://www.cs.cmu.edu/~dst/DeCSS/Gallery/]
#!/usr/bin/perl -w
# 526-byte qrpff, Keith Winstein and Marc Horowitz <sipb-iap-dvd@mit.edu>
# MPEG 2 PS VOB file on stdin -> descrambled output on stdout
# arguments: title key bytes in least to most-significant order
$_='while(read+STDIN,$_,2048){$a=29;$c=142;if((@a=unx"C*",$_)[20]&48){$h=5;
$_=unxb24,join"",@b=map{xB8,unxb8,chr($_^$a[--$h+84])}@ARGV;s/...$/1$&/;$d=
unxV,xb25,$_;$b=73;$e=256|(ord$b[4])<<9|ord$b[3];$d=$d>>8^($f=($t=255)&($d
>>12^$d>>4^$d^$d/8))<<17,$e=$e>>8^($t&($g=($q=$e>>14&7^$e)^$q*8^$q<<6))<<9
,$_=(map{$_%16or$t^=$c^=($m=(11,10,116,100,11,122,20,100)[$_/16%8])&110;$t
^=(72,@z=(64,72,$a^=12*($_%16-2?0:$m&17)),$b^=$_%64?12:0,@z)[$_%8]}(16..271))
[$_]^(($h>>=8)+=$f+(~$g&$t))for@a[128..$#a]}print+x"C*",@a}';s/x/pack+/g;eval

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sat Oct 21 14:36:41 2006

This is an archived mail posted to the Subversion Dev mailing list.