1

I'm trying to use hgsubversion plugin for mercurial from Windows. Pull from SVN repositpry works on Windows. But when I'm trying to push to the repository, I get the following message:

pushing to svn+ssh://user@server.com/home/user/.repo/test.svn/
abort: command unavailable for Subversion repositories

It seems this happens because hgsubversion is using SWIG bindings instead of subvertpy( on Linux everything works fine with subvertpy)

D:\test\>hg version --svn
hgsubversion: 88f3cda47def
Subversion: 1.6.13
bindings: SWIG

But I didn't find any easy way to install it(now I'm trying to compile it myself, but there are some problems). Maybe I missed something. Bzr is using subvertpy, maybe it is possible to extract it? Any suggestions?

Does anyone using hgsubversion from Windows?

P.S To compile the library i tried this hint: https://bitbucket.org/tortoisehg/thg-winbuild/issue/14/request-add-subvertpy-to-the-default


UPD: solved initial problem with fail on push. The largefiles(which is distributed with mercurial >= 2.0) extension breaks hgsubversion. Just disabled it and got hgsubversion working.

Anton Kiselev
  • 1,307
  • 1
  • 10
  • 12
  • I don't know that I can help much (I don't use Windows for anything other than games), but I know many people have had success with hgsubversion on Windows. hgsubversion's use of the SWIG bindings is more well-tested at this point - the only reason to use subvertpy is if you can't get SWIG installed. What version of Mercurial do you have installed? – durin42 Dec 27 '11 at 16:10
  • I am using mercurial 2.0.1 installed with TortoiseHg 2.2.1 ( 64 bit ). – Anton Kiselev Dec 27 '11 at 18:14
  • Dear durin42, largefiles extension breakes hgsubversion. I've new to python debugging, but if you need to test something on Windows, I can help. Here is my stacktrace for heads() function: hgsubversion\svnrepo.py(149)heads() (Pdb) a self = args = () opts = {} – Anton Kiselev Dec 27 '11 at 19:05
  • I don't know anything about largefiles or windows, so I'm afraid I don't really know where to start, and I don't have enough free time to help out at the moment. :/ Sorry! – durin42 Jan 19 '12 at 14:37

1 Answers1

0

Well, I had slightly different results

hgsubversion: 6c4d15d8cfbd
Subversion: 1.6.13
bindings: SWIG

on my test-repo with commit-auth

Test 1, inside TortoiseHG

  1. Cloned from root http://mayorat.ursinecorner.ru:8088/svn/Hello/
  2. Tip is revision from trunk, edit file, commit OK
  3. On push I got long waiting (really long) on "Searching for changes" stage (without any requests from server)
  4. "Stop operation" show me error message "Basic authentification rejected by server"

Test 2, CLI-mode

Cloned only trunk http://mayorat.ursinecorner.ru:8088/svn/Hello/trunk/

>hg push --stupid
pushing to http://mayorat.ursinecorner.ru:8088/svn/Hello/trunk/
searching for changes
Auth realm: <http://mayorat.ursinecorner.ru:8088> VisualSVN Server
Password for Badger:
Auth realm: <http://mayorat.ursinecorner.ru:8088> VisualSVN Server
Username: lazybadger
Password for lazybadger:
[r32] lazybadger: Cleanups
pulled 1 revisions
saved backup bundle to ...

Can say nothing about first password request, second and third are obvious and correct. 32 revision exist and visible to everybody

Sidenote: my changes doesn't broke linear history of SVN

Lazy Badger
  • 94,711
  • 9
  • 78
  • 110