[svk-users] off line commits do not work

Tomas Doran bobtfish at bobtfish.net
Sat Jul 26 18:25:38 EDT 2008


On 26 Jul 2008, at 21:14, svk_lists at gorelik.net wrote:

> Am I missing something?
> I have created a local mirror of an SVN repository, disconnected from
> the net, checked out the latest revision, made some modifications and
> executed
>
> []$ svk commit  src/filename
>
> I expected to see the modified file committed to the repository. Later
> I wanted to sync the local mirror with the remote repo. However, the
> following message was displayed:
<snip>
>
> Am I expecting something that SVK isn't capable with?

No, you're not - but you're not quite understanding how mirroring  
works. When SVK mirrors a path, then it is a *mirror*, i.e. it has  
the same state as the thing it it mirroring, always.

Therefore, when you commit to a mirrored path, SVK actually proxies  
the commit to the upstream server, and then immediately syncs the  
mirror back from the upstream server (getting the new revision).

To operate as you intended, what you need to do is:

svk copy //mirror/mirroredproject //local/ 
my_local_branch_of_mirroredproject
svk co //local/my_local_branch_of_mirroredproject
# Edit
svk commit
# Edit some more
svk commit
# Note that merging code back is likely to fail if the mirror is not  
up to date with respect to the mirrored server, therefore
svk sync //mirror/mirroredproject
# Sync my changes back to the mirror.
svk push #(in project checkout directory).
# Sync latest changes in the mirrored version to your local branch
svk pull

Hope this helps.

Cheers
t0m



More information about the svk-users mailing list