On Thu, Sep 02, 2010 at 11:14:27AM +0300, Daniel Shahaf wrote:
> > Note that we allow empty files to be created for regular diffs too if
> > they have property changes. This patch will create an empty file with
> > property 'foo' set on it:
> >
> > Index: empty
> > ===================================================================
> >
> > Property changes on: empty
> > ___________________________________________________________________
> > Added: foo
> > ## -0,0 +1 ##
> > +value
>
> So this implicitly creates the file if it doesn't exist already; in
> other words, we do not distinguish setting a property on an existing
> file (without content changes) from adding a file with properties.
No. It does make that distinction.
> Would it be better to make a distinction --- for example, by generating
> a /^new file/ line in the latter case? (that would be explicit and more
> friendly to non-property-aware tools)
That's already happening. Here's an empty file foo, which starts
out as locally added + an svn:keywords file set on it:
$ svn diff --git foo
Index: foo
===================================================================
diff --git a/trunk/foo b/trunk/foo
new file mode 10644
Property changes on: trunk/foo
___________________________________________________________________
Added: svn:keywords
## -0,0 +1 ##
+Id
$ svn ci -mm foo
Adding foo
Transmitting file data .
Committed revision 3.
$ svn ps svn:eol-style native foo
property 'svn:eol-style' set on 'foo'
$ svn diff --git foo
Index: foo
===================================================================
diff --git a/trunk/foo b/trunk/foo
--- a/trunk/foo (revision 3)
+++ b/trunk/foo (working copy)
Property changes on: trunk/foo
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
$
Stefan
Received on 2010-09-02 13:11:17 CEST