You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by "Emin.shopper Martinian.shopper" <em...@gmail.com> on 2007/03/06 18:36:32 UTC

question about tagging with cheap copies

I have a project where I like to tag a snapshot of the project fairly often
(e.g., weekly). I understand that I can tag things using svn copy, but I'm
worried that when I update the whole tree, the tags will clutter things and
make things slow.

For example, imagine I have a project with main/tags, main/branches, and
main/trunk. Every week I use svn copy to create a new entry in
main/tags/week-XXX-year-YYY. Now if someone does svn update on main, they
may get hundreds of copies of things in main/tags taking up a lot of disk
space and network traffic.

Ideally, I would like to have the tags "hidden" until I decided that I need
to go and get them. How should I do that? Should I delete the tag so that it
doesn't show up when I do svn update and then undelete it when I need it? Or
am I hopelessly confused about how to get weekly snapshots of the project
that I can later checkout without having to see them in my main tree?

Thanks,
-Emin

Re: question about tagging with cheap copies

Posted by Ryan Schmidt <su...@ryandesign.com>.
On Mar 6, 2007, at 13:15, Andy Levy wrote:

>> > Only check out what you need.
>>
>> Ideally, yes. But what if someone accidentally does an update of  
>> the root
>> directory?
>
> Again, you can't stop them without denying access to the directory
> completely. Subversion does require some measure of user
> responsibility.

Actually, I found that you *can* prevent someone from checking out  
more than they should: serve using Apache 2 and mod_dav_svn, and  
install and configure mod_dontdothat:

http://svn.collab.net/repos/svn/trunk/contrib/server-side/ 
mod_dontdothat/


-- 

To reply to the mailing list, please use your mailer's Reply To All  
function


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

Re: question about tagging with cheap copies

Posted by Andy Levy <an...@gmail.com>.
On 3/6/07, Emin.shopper Martinian.shopper <em...@gmail.com> wrote:
> On 3/6/07, Andy Levy <an...@gmail.com> wrote:
> > On 3/6/07, Emin.shopper Martinian.shopper <em...@gmail.com> wrote:
> >
> > > For example, imagine I have a project with main/tags, main/branches, and
> > > main/trunk. Every week I use svn copy to create a new entry in
> > > main/tags/week-XXX-year-YYY. Now if someone does svn update on main,
> they
> > > may get hundreds of copies of things in main/tags taking up a lot of
> disk
> > > space and network traffic.
> >
> > Why check out from /main in the first place? You can check out
> > /main/trunk and /main/branches individually (or even individual
> > branches, so that you don't have a copy of every branch locally), thus
> > eliminating /main/tags from the update altogether.
> >
> > Only check out what you need.
>
> Ideally, yes. But what if someone accidentally does an update of the root
> directory?

Again, you can't stop them without denying access to the directory
completely. Subversion does require some measure of user
responsibility.

> More realistically, the script that does the svn copy to create the new tag
> seems to cause a version of the newly copied "tag" to be instantiated in the
> local file system. Is there a way to tell svn to make a copy so I can tag
> something WITHOUT having a local version get checked out? Or whenever I want
> to make a tag, do I need to do svn copy and then delete the result from the
> file system?

svn cp supports URL to URL copies. See svn help cp.

Short version: svn cp <SRC> <DEST> -m "Commit message"

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

RE: Re: question about tagging with cheap copies

Posted by "Norton, Richard" <Ri...@lfg.com>.
http://svnbook.red-bean.com/nightly/en/svn.branchmerge.using.html#svn.branchmerge.using.create
 
See the second example.  You can use copy to create tags/branches completely on the server side...no working copy/filesystem involvement at all.

-----Original Message-----
From: Emin.shopper Martinian.shopper [mailto:emin.shopper@gmail.com]
Sent: Tuesday, March 06, 2007 1:05 PM
To: users@subversion.tigris.org
Cc: Andy Levy
Subject: Re: question about tagging with cheap copies


On 3/6/07, Andy Levy < andy.levy@gmail.com> wrote: 


On 3/6/07, Emin.shopper Martinian.shopper < emin.shopper@gmail.com> wrote:

> For example, imagine I have a project with main/tags, main/branches, and
> main/trunk. Every week I use svn copy to create a new entry in 
> main/tags/week-XXX-year-YYY. Now if someone does svn update on main, they
> may get hundreds of copies of things in main/tags taking up a lot of disk
> space and network traffic.

Why check out from /main in the first place? You can check out 
/main/trunk and /main/branches individually (or even individual
branches, so that you don't have a copy of every branch locally), thus
eliminating /main/tags from the update altogether.

Only check out what you need. 


Ideally, yes. But what if someone accidentally does an update of the root directory?

More realistically, the script that does the svn copy to create the new tag seems to cause a version of the newly copied "tag" to be instantiated in the local file system. Is there a way to tell svn to make a copy so I can tag something WITHOUT having a local version get checked out? Or whenever I want to make a tag, do I need to do svn copy and then delete the result from the file system? 

Thanks,
-Emin



Notice of Confidentiality: **This E-mail and any of its attachments may contain 
Lincoln National Corporation proprietary information, which is privileged, confidential,
or subject to copyright belonging to the Lincoln National Corporation family of 
companies. This E-mail is intended solely for the use of the individual or entity to 
which it is addressed. If you are not the intended recipient of this E-mail, you are 
hereby notified that any dissemination, distribution, copying, or action taken in 
relation to the contents of and attachments to this E-mail is strictly prohibited 
and may be unlawful. If you have received this E-mail in error, please notify the 
sender immediately and permanently delete the original and any copy of this E-mail 
and any printout. Thank You.**

Re: question about tagging with cheap copies

Posted by "Emin.shopper Martinian.shopper" <em...@gmail.com>.
On 3/6/07, Andy Levy <an...@gmail.com> wrote:
>
> On 3/6/07, Emin.shopper Martinian.shopper <em...@gmail.com> wrote:
>
> > For example, imagine I have a project with main/tags, main/branches, and
> > main/trunk. Every week I use svn copy to create a new entry in
> > main/tags/week-XXX-year-YYY. Now if someone does svn update on main,
> they
> > may get hundreds of copies of things in main/tags taking up a lot of
> disk
> > space and network traffic.
>
> Why check out from /main in the first place? You can check out
> /main/trunk and /main/branches individually (or even individual
> branches, so that you don't have a copy of every branch locally), thus
> eliminating /main/tags from the update altogether.
>
> Only check out what you need.


Ideally, yes. But what if someone accidentally does an update of the root
directory?

More realistically, the script that does the svn copy to create the new tag
seems to cause a version of the newly copied "tag" to be instantiated in the
local file system. Is there a way to tell svn to make a copy so I can tag
something WITHOUT having a local version get checked out? Or whenever I want
to make a tag, do I need to do svn copy and then delete the result from the
file system?

Thanks,
-Emin

Re: question about tagging with cheap copies

Posted by Andy Levy <an...@gmail.com>.
On 3/6/07, Emin.shopper Martinian.shopper <em...@gmail.com> wrote:
> I have a project where I like to tag a snapshot of the project fairly often
> (e.g., weekly). I understand that I can tag things using svn copy, but I'm
> worried that when I update the whole tree, the tags will clutter things and
> make things slow.
>
> For example, imagine I have a project with main/tags, main/branches, and
> main/trunk. Every week I use svn copy to create a new entry in
> main/tags/week-XXX-year-YYY. Now if someone does svn update on main, they
> may get hundreds of copies of things in main/tags taking up a lot of disk
> space and network traffic.

Why check out from /main in the first place? You can check out
/main/trunk and /main/branches individually (or even individual
branches, so that you don't have a copy of every branch locally), thus
eliminating /main/tags from the update altogether.

Only check out what you need.

I can't see why *all* members of a project would need to have a single
WC containing trunk, all tags and all branches (for that matter, I'm
the repository admin & project manager and I don't even have a local
copy of all tags for my projects). Certainly you can't stop them from
doing it (without cutting off their access to /main/tags completely),
but there's no reason to encourage them to do it either.

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