You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Brian Olson <ic...@bolson.org> on 2002/11/06 03:19:55 UTC

partial branch?

Is it currently possible to make a partial branch?

#make the branch
svn cp p://repo/proj p://repo/branches/proj/branchname

But, I want most of the files in /branches/proj/branchname to still update
as if they were in /proj

I know I can set this up in a specific checkout using 'svn switch' on a
specific file or subdir. I was hoping for a named partial branch scheme.

Even better would be if it were naturally heirarchical such that a partial
branch off a partial branch would inherit first the updates from the
branch (if the sub-partial branch did not have a new version of a file)
and second from the head (if neither partial branch had a new version of
the file).

If not presently possible, perhaps a 'svn ln' comprable to 'svn cp'? And,
a mode of 'svn cp' such that when applied to a directory all entries of
the new dir are a "shallow" copy, being links back to the head dir it was
copied from. As needed these can be rm-d and actual files cp-ed and thus
branched.

Brian Olson
http://bolson.org/


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: partial branch?

Posted by Peter Davis <pe...@pdavis.cx>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Wednesday 06 November 2002 13:58, Brian Olson wrote:
> Indeed svn:externals works, but only on directories. It won't let me
> specify just an external file (bug/incompleteness?).

Other people have also complained about this, so if there isn't something 
already in the issues database, maybe you could file a feature request.  But 
don't expect it to get fixed until probably well after version 1.0.

> And there's still the pesky task of making a shallow copy where most of
> the stuff is external/on-the-mainline and a few things are branched.

I guess I'm not sure what this means, so I don't know if this is what you're 
asking, but you should be able to set multiple levels of svn:externals, such 
as:

$ svn pedit svn:externals .
foo      http://server/trunk/foo
foo/bar  http://server/branch/xxx/foo/bar

Now, it might not work if foo/bar/ already exists (I haven't tested either 
way), but maybe it should (hint hint, another feature request).

- -- 
Peter Davis
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.7 (GNU/Linux)

iD8DBQE9yZU+hDAgUT1yirARAlvSAKCez0TiDgnlMExoV4ccgdvuUO9pEACbB0en
fnbh7RNo+DLf7KkZ19A8v60=
=EZY0
-----END PGP SIGNATURE-----


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: partial branch?

Posted by Brian Olson <ic...@bolson.org>.
Indeed svn:externals works, but only on directories. It won't let me
specify just an external file (bug/incompleteness?).

Although, it's better than you said, the svn:externals prop attatched to
the dir gets inherited by other checkouts, that thus get the same setup,
not just my working version.

And there's still the pesky task of making a shallow copy where most of
the stuff is external/on-the-mainline and a few things are branched.

(Partial branching is a major wishlist item for me, cvs almost has it too,
but it's lack is causing major headaches at my workplace.)

Brian Olson
http://bolson.org/

On Tue, 5 Nov 2002, Peter Davis wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On Tuesday 05 November 2002 19:19, Brian Olson wrote:
> > Is it currently possible to make a partial branch?
>
> I haven't actually tried this, but what about using svn:externals to load
> other parts of the same repository into the working directory?


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Re: partial branch?

Posted by Peter Davis <pe...@pdavis.cx>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Tuesday 05 November 2002 19:19, Brian Olson wrote:
> Is it currently possible to make a partial branch?

I haven't actually tried this, but what about using svn:externals to load 
other parts of the same repository into the working directory?

$ svn cp http://server/trunk http://server/branch/foo
$ svn switch http://server/branch/foo
$ ls
bar/  baz/
$ svn rm baz
$ svn pset svn:externals "baz http://server/trunk/baz" .
$ svn ci
$ svn up

Now ./bar/ will be local to the branch, and ./baz/ will be a "soft link" to 
the real /trunk/baz/ directory.  Any commits to ./baz/ will affect 
/trunk/baz/, and commits to ./bar/ will affect /branch/foo/bar/.  Make sense?

Note that svn:externals only affects the working copy, so for URL-based 
operations to ./baz/ you will have to use /trunk/baz/, not /branch/foo/baz/.  
Outside of the working copy, /branch/foo/baz/ won't exist (it was deleted).

- -- 
Peter Davis
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.7 (GNU/Linux)

iD8DBQE9yJQ4hDAgUT1yirARAmCHAKCONsq2JS3wl+c7AR8Gb6d945rO4wCeOUy+
7NsOafTUVpYT4l5YelMG/qQ=
=/oM6
-----END PGP SIGNATURE-----


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org