Is there anything like a virtual svn shell available?
It would be something that allows you to manipulate a svn repository without
having to actually check anything out to disk.
The current way to manipulate a repos without checking anything out is to call
svn commands with the SVN repos URL. But if you want to execute several commands
within one transaction/commit, you cannot do it with that method.
So having like a virtual svn shell that would create a transaction, updating it
with your svn command executions, and then commit that transaction when your
done would be a great benifit.
The benefit is so you can do, within a single commit/transaction, lots of
tagging, deleting, etc. without having to check out an entire trunk, branch or
several tags.
Is there anything like this currently available, or even in the planning phase?
I saw this post:
http://svn.haxx.se/dev/archive-2002-11/0770.shtml
from 2002, asks about svn shell. But I don't think this request was for a shell
which can specifically create and manipulate a transaction virtually.
An Example of how it might function is:
linux% vsvn http://domain.com/svn/MyRepos
vsvn /:955 [4]> tshow
transaction-id: no transaction started
vsvn /:955 [0]> cd tags
vsvn /tags:955 [0]> delete 1.2
created transaction a1
vsvn /tags:955 [1]> delete 1.3
vsvn /tags:955 [2]> copy 1.4 2.4
vsvn /tags:955 [3]> cd /branches
vsvn /branches:955 [3]> cd /calc
vsvn /branches/calc:955 [3]> list -v
35 jsmith 647 Oct 06 2003 calc.c
99 dparks 712 May 09 15:22 README.txt
vsvn /branches/calc:955 [3]> copy . /tags/calc-1.0
vsvn /branches/calc:955 [4]> tshow
transaction-id: a1
[1] delete /tags/1.2
[2] delete /tags/1.3
[3] copy /tags/1.4 /tags/2.4
[4] copy /branches/calc /tags/calc-1.0
commit-message:
vsvn /branches/calc:955 [4]> tcommitmsg "deleting tags, moving a tag, and
creating a tag, all in one transaction."
vsvn /branches/calc:955 [4]> tshow
transaction-id: a1
[1] delete /tags/1.2
[2] delete /tags/1.3
[3] copy /tags/1.4 /tags/2.4
[4] copy /branches/calc /tags/calc-1.0
commit-message: deleting tags, moving a tag, and creating a tag, all in one
transaction.
vsvn /branches/calc:955 [4]> commit
committing transaction a1....
D /tags/1.2
D /tags/1.3
D /tags/1.4
A + /tags/2.4
A + /tags/calc-1.0
committed revision 956
vsvn /branches/calc:956 [0]> exit
linux%
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Fri May 18 18:01:43 2007