[svk-devel] unexpected behavior with pull
clkao at clkao.org
Wed Mar 7 13:11:47 EST 2007
On 06/03/07, David Kaufman <david at gigawatt.com> wrote:
> I was lovin' svk till I ran across this "feature", too.
> Michael Peters <mpeters at plusthree.com> wrote:
> > I have a [...] full svn repo mirrored [including] several branches
> > [but] when I do an svk pull it actually pushes changes back
svk's pull is literally a smerge that figures out where the current
branch is copying from and merges from that, which is the reason why
you see it when you are pulling for a checkout that is a branch inside
the mirror, which is (arguably) what people want from time to time.
> I ran into similar problems when, like you, I had mirrored our entire svn repo, branches and all, and then checked out an svn branch (from that local mirror) that I needed to work on.
> When I did my "svk push", lackadaisically assuming this would just push my local changes to the branch onto the *remote* svn branch, I was surprised, and dismayed, and in fear for my job!... when svk also took it upon itself to merge the remote svn branch (originally copied from the trunk) back *into* the trunk.
Well, it'd do so if there's an actual local branch. and you don't
quite have 'local changes' as they are committed to the remote branch
already, when you commit from svk. And at the end, using svk push
--check-only to make sure what the tool, which might be silly as all
other tools, is going to do what you are expecting.
> The whole point of working on branches, for us, is to keep incomplete and experimental work OFF of the trunk, and if svk couldn't keep the branch branched, I could not use it! Undoing the damage (to my repo *and* my rep) was not fun. It is a feature not a bug, others hereabouts assured me, though I still can't fathom how anyone would ever actually want to do what svk did to me that day...
Well, I am not sure if push the command itself or the document is
unclear that it involves some kind of merges between branches. I'd
appreciate suggestions for making that clearer so others don't do the
same thing in the future.
More information about the svk-devel