[ZODB-Dev] RE: ATTENTION! cvs tosubversion transitiontomorrow
Tim Peters
tim at zope.com
Thu Apr 29 13:11:02 EDT 2004
One more on access from Windows. TortoiseSVN will probably be more popular
on Windows than the cmdline version of svn -- it's a slick integration of
intelligent svn context-menus and icon overlays into the Windows Explorer
GUI, including a nice GUI diff/merge component.
Turns out it has its own kinds of svn+ssh access problems, and some of the
articles on the web about worming around them are plain crazy. I'll skip
all that and just explain a clean way that works (which I stumbled into on
my own):
TortoiseSVN comes with its own implementation of ssh, which appears to be a
renamed version of plink.exe from the popular PuTTY suite of Windows
connection tools. It's not documented anywhere, but it turns out
TortoiseSVN accepts a PuTTY session name for the hostname portion of an
svn+ssh URL. That's the key.
So download the PuTTY tools too (I expect most developers on Windows already
have them).
This is what I did:
+ Ran putty.exe, and created a new session in the GUI:
- Under Session, used Host Name svn.zope.org, and selected the SSH
protocol.
- Under Connection, put tim_one in the "auto-login username" box.
- Under Connection -> SSH -> Auth, entered the path to my private
key file.
- Back under Session, saved the session under name svnzope (this
is arbitrary).
- Closed putty.
That's a one-time setup dance. PuTTY saves this config info in the Windows
registry, where other programs can get at it via the session name you chose,
and turns out that's enough for TortoiseSVN.
Now when using any Tortoise action where a svn+ssh svn.zope.org URL is
needed, just use "svnzope" (or whatever name you picked for your session)
instead of "svn.zope.org". For example,
svn+ssh://svnzope/repos/main/ZConfig/trunk
instead of
svn+ssh://svn.zope.org/repos/main/ZConfig/trunk
If you have an SSH passphrase, you can also run PuTTY's pageant.exe to
supply it for you for as long as you leave pageant running (pageant is like
the Unixish ssh-agent).
Bottom line: while none of it is documented or obvious, there are clean and
effective ways to use ssh+svn on Windows, both via cmdline and via the
TortoiseSVN GUI, and even if your Windows username differs from your
zope.org username.
All the *obvious* ways of using SSH with client-side svn on Windows didn't
work for me -- although they all do work for me (and have worked, for years)
using SSH with client-side cvs on Windows.
Disclaimer: All my experiments were on WinXP Pro. It's possible that other
flavors of Windows will act differently, although I don't expect that in the
cases talked about here.
More information about the ZODB-Dev
mailing list