You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Geoffrey <li...@serioustechnology.com> on 2008/03/26 20:00:18 UTC

deleting a tree in the repository

So, I recently created a new tree in our repository and populated the 
code.  The code that was used has since changed, so I now need to 
re-populate the tree.

How does one delete the tree?

-- 
Until later, Geoffrey

Those who would give up essential Liberty, to purchase a little
temporary Safety, deserve neither Liberty nor Safety.
  - Benjamin Franklin

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

Re: deleting a tree in the repository

Posted by Geoffrey <li...@serioustechnology.com>.
John Peacock wrote:
> Geoffrey wrote:
>> There's no history to retain.  Basically, we've cloned our existing 
>> tree for a new development effort.  It sat idle while the existing 
>> tree was updated.  Now I need to bring them back in sync.
> 
> It doesn't sound like you are using SVN the way it was designed.  
> Normally, you don't [re]import a copy of files that already exist in the 
> repository.  You would instead make a copy inside the repository (which 
> is cheap):
> 
>   svn cp http://server/repo/path/original http://server/repo/path/copy

There are a couple of problems with this approach.  The new tree is a 
little different from the original tree, thus a straight copy will not 
give us what we want.

> If you are doing this to preserve the history before a large 
> restructuring, by convention you would do this as a "tag"; if you are 
> doing this in order to perform that restructuring off the mainline 
> development, by convention you would call this a "branch".  Both tags 
> and branches are completely identical internally to the repository; they 
> differ only in nomenclature.

I've discussed the options of going with a tag or branch and it was 
decided not to go that route.  Not completely my decision.

> On the other hand, if what you are describing is that you imported a 
> tree of files into the repository, then changed the tree structure 
> itself (but not the repository), then 'svn rm' and 'svn import' is 
> precisely what you would do.  If you don't have anything else in the 
> repository (i.e. it was only used for this single project), then it 
> might be cleaner to simply delete and recreate the repository itself (if 
> you don't care about the history).

A little more history to the issue.  The current application uses 
Postgresql 7.4.19.  We are migrating to 8.3.1.  Once we get to 8.3.1, we 
will no longer use the 7.4.19 tree and it will be archived, then removed.

That being said, the decision has been made and thus, I have to go with 
the flow.

Understand that the new tree is obsolete now because no one kept up with 
the changes that had been made in the original tree.  Thus I need to 
remove it and re-import.

-- 
Until later, Geoffrey

Those who would give up essential Liberty, to purchase a little
temporary Safety, deserve neither Liberty nor Safety.
  - Benjamin Franklin

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

Re: deleting a tree in the repository

Posted by Geoffrey <li...@serioustechnology.com>.
John Peacock wrote:
> Geoffrey wrote:
>> I want to make sure I have a clear understanding of the branching 
>> concept.
>>
>> So we have version 3.0 and we branch it to create 4.0.
>>
>> 1. Changes in 4.0 will not find their way back into 3.0.
>>
>> 2. Changes in 3.0 do find their way into 4.0
>>
>> 3. Assuming #2 is correct, changes in 3.0 that can not be resolved in 
>> 4.0 because of changes made in 4.0 will require a manual intervention.
> 
> No, you do not understand things properly.  Using branches never causing 
> changes to "flow" from one branch to another; you would have to manually 
> merge any changes to 3.0 into 4.0 if you wanted them to propagate.  Have 
> you read the book?
> 
>     http://svnbook.red-bean.com/

Been working on it, and just revisited the branching issue.  We still 
are going with a branch and folks will merge changes up as needed.

Thanks.

-- 
Until later, Geoffrey

Those who would give up essential Liberty, to purchase a little
temporary Safety, deserve neither Liberty nor Safety.
  - Benjamin Franklin

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

Re: deleting a tree in the repository

Posted by John Peacock <jo...@havurah-software.org>.
Geoffrey wrote:
> I want to make sure I have a clear understanding of the branching concept.
> 
> So we have version 3.0 and we branch it to create 4.0.
> 
> 1. Changes in 4.0 will not find their way back into 3.0.
> 
> 2. Changes in 3.0 do find their way into 4.0
> 
> 3. Assuming #2 is correct, changes in 3.0 that can not be resolved in 
> 4.0 because of changes made in 4.0 will require a manual intervention.

No, you do not understand things properly.  Using branches never causing changes 
to "flow" from one branch to another; you would have to manually merge any 
changes to 3.0 into 4.0 if you wanted them to propagate.  Have you read the book?

	http://svnbook.red-bean.com/

John

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

Re: deleting a tree in the repository

Posted by Geoffrey <li...@serioustechnology.com>.
Okay, so my discussion on this list regarding this issue has prompted a 
conference call and a possible change to using a branch.

I want to make sure I have a clear understanding of the branching concept.

So we have version 3.0 and we branch it to create 4.0.

1. Changes in 4.0 will not find their way back into 3.0.

2. Changes in 3.0 do find their way into 4.0

3. Assuming #2 is correct, changes in 3.0 that can not be resolved in 
4.0 because of changes made in 4.0 will require a manual intervention.

Thanks for your assistance.

-- 
Until later, Geoffrey

Those who would give up essential Liberty, to purchase a little
temporary Safety, deserve neither Liberty nor Safety.
  - Benjamin Franklin

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

Re: deleting a tree in the repository

Posted by John Peacock <jo...@havurah-software.org>.
Geoffrey wrote:
> I should have read your message closer before responding. My apologies. 
>  This is precisely what I want to do.  That is, 'simply delete and 
> recreate the repository.'  There is no history to be concerned with. 
> That being said, is that what 'svn rm; svn import' would do for me?

To delete and recreate the repository, you would just delete the repository files:

	# rm -rf /actual/path/to/repository/files

(you probably want to shut down svnserve or Apache before doing this, depending 
on how you are hosting the repo).  If your server is Windows based, just 
navigate to the repo directory and hit shift-delete (so it won't try and copy 
the files into your trashcan).

Then you recreate the repository using `svnadmin create` and `svn import` the 
new layout.

'svn rm' does not delete the repository; it merely marks those files as being 
deleted in the current revision (i.e. you could always get them back later). 
You don't seem to want to maintain the history, so you don't want to do that.

John

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

Re: deleting a tree in the repository

Posted by Geoffrey <li...@serioustechnology.com>.
John Peacock wrote:

> On the other hand, if what you are describing is that you imported a 
> tree of files into the repository, then changed the tree structure 
> itself (but not the repository), then 'svn rm' and 'svn import' is 
> precisely what you would do.  If you don't have anything else in the 
> repository (i.e. it was only used for this single project), then it 
> might be cleaner to simply delete and recreate the repository itself (if 
> you don't care about the history).


I should have read your message closer before responding. My apologies. 
  This is precisely what I want to do.  That is, 'simply delete and 
recreate the repository.'  There is no history to be concerned with. 
That being said, is that what 'svn rm; svn import' would do for me?


-- 
Until later, Geoffrey

Those who would give up essential Liberty, to purchase a little
temporary Safety, deserve neither Liberty nor Safety.
  - Benjamin Franklin

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

Re: deleting a tree in the repository

Posted by John Peacock <jo...@havurah-software.org>.
Geoffrey wrote:
> There's no history to retain.  Basically, we've cloned our existing tree 
> for a new development effort.  It sat idle while the existing tree was 
> updated.  Now I need to bring them back in sync.

It doesn't sound like you are using SVN the way it was designed.  Normally, you 
don't [re]import a copy of files that already exist in the repository.  You 
would instead make a copy inside the repository (which is cheap):

   svn cp http://server/repo/path/original http://server/repo/path/copy

If you are doing this to preserve the history before a large restructuring, by 
convention you would do this as a "tag"; if you are doing this in order to 
perform that restructuring off the mainline development, by convention you would 
call this a "branch".  Both tags and branches are completely identical 
internally to the repository; they differ only in nomenclature.

On the other hand, if what you are describing is that you imported a tree of 
files into the repository, then changed the tree structure itself (but not the 
repository), then 'svn rm' and 'svn import' is precisely what you would do.  If 
you don't have anything else in the repository (i.e. it was only used for this 
single project), then it might be cleaner to simply delete and recreate the 
repository itself (if you don't care about the history).

HTH

John

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

Re: deleting a tree in the repository

Posted by Geoffrey <li...@serioustechnology.com>.
Paul Koning wrote:
>>>>>> "Geoffrey" == Geoffrey  <li...@serioustechnology.com> writes:
> 
>  Geoffrey> So, I recently created a new tree in our repository and
>  Geoffrey> populated the code.  The code that was used has since
>  Geoffrey> changed, so I now need to re-populate the tree.
> 
>  Geoffrey> How does one delete the tree?
> 
> "svn rm"

Will I then be able to simply repopulate the tree with 'svn import'?

> 
> But wouldn't it make more sense just to drop the new bits into the
> working directory, and "svn ci" the result?  That way you have a
> record of the history.

There's no history to retain.  Basically, we've cloned our existing tree 
for a new development effort.  It sat idle while the existing tree was 
updated.  Now I need to bring them back in sync.

-- 
Until later, Geoffrey

Those who would give up essential Liberty, to purchase a little
temporary Safety, deserve neither Liberty nor Safety.
  - Benjamin Franklin

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

Re: deleting a tree in the repository

Posted by Paul Koning <Pa...@dell.com>.
>>>>> "Geoffrey" == Geoffrey  <li...@serioustechnology.com> writes:

 Geoffrey> So, I recently created a new tree in our repository and
 Geoffrey> populated the code.  The code that was used has since
 Geoffrey> changed, so I now need to re-populate the tree.

 Geoffrey> How does one delete the tree?

"svn rm"

But wouldn't it make more sense just to drop the new bits into the
working directory, and "svn ci" the result?  That way you have a
record of the history.

       paul


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