SVN8.COM - SVN中文技术网

投递文章 投稿指南 SVN中文技术网公告:技术交流诚聘优秀版主最新公告
搜索: 您的位置主页>SVN资讯>windows下利用putty配置svn+ssh方式访问svn服务器

windows下利用putty配置svn+ssh方式访问svn服务器

SVN技术网 www.svn8.com 2008-09-11 22:38:37   来源:   作者:  评论:0 点击:
因为ntfs-3g挂载方式读写ntfs分区现在是比较安全的,因此渴望在双系统电脑windows和ubuntu下使用同一个工作拷贝。
下面的方式可以使windows和ubuntu共用一个工作拷贝

服务器B---Linux Ubuntu, 网址为xxx.xxx.edu.cn

客户机A---windows和ubuntu双系统



服务器B的svn服务器简单配置
//----------------------------------------------------------------------------
安装svn服务程序
$sudo apt-get install subversion
利用ssh访问的svn服务器的配置非常简单,简单的几乎可以不配置。
你只需要用命令:

$svnadmin create /home/usr/SVNROOT

创建一个版本库即可。
当用svn+ssh登陆的时候,会自动调用svnserve来为你提供服务。



客户机A
//--------------------------------------------------------------------------------------
ubuntu系统下生成自己的公钥和私钥
ssh-keygen
生成之后,将公钥发至服务器,私钥保存
$ ssh-keygen
    该步产生.ssh/id_rsa 和.ssh/id_rsa.pub 文件,一个是私钥,一个是公钥。
$ scp .ssh/id_rsa.pub B:.ssh/authorized_keys
    该步把公钥拷贝到服务器B相应目录和文件中。这一步的目的是去掉ssh访问服务器B时每次都要输入密码的繁琐过程。

    同时把私鈅拷贝到windows目录下,以便windows下使用。
      
        --------------------------------

Ubuntu系统下安装完svn即可使用
$sudo apt-get install subversion

如果希望ssh的时候使用代理服务器,参考本博客前面的文章:ssh利用代理登录远程服务器
使用代理服务器的原因是在家上网时用学校内部的svn服务器,速度往往很慢,如果用学校的代理服务器,速度会有10倍的提高。

把你的mydocs文件夹放入服务器中版本库中:
$svn import ~/mydocs svn+ssh://xxx.xxx.edu.cn/home/usr/SVNROOT/mydocs
    注意:服务器地址后面的目录必须是绝对路径。

//-----------------------------------------------------------------------------------------
Windows系统下
1. 下载putty及相关, 同时下载winscp以便拷贝服务器中非svn数据,放在program files文件夹中
http://the.earth.li/~sgtatham/putty/latest/x86/putty.zip
http://winscp.net/eng/download.php
最好把两者安装在一个文件夹中

2. 启动其中的puttygen.exe
load先前生成的私钥id_rsa ,保存成putty对应的私钥格式id_rsa.ppk

3. 启动putty.exe
  • Create session called xxx.xxx.edu.cn
    • open putty.exe
    • under Host Name (or IP address), enter xxx.xxx.edu.cn
    • under Saved Sessions, enter “xxx.xxx.edu.cn” (此处的名字必须和你服务器的名字相同,否则不能和linux共用)
    • click the Save button
  • 输入用户名:category->connection->Data->Auto-login username: fff  
  • 输入代理服务器信息:category->connection->proxy
  • Select .ppk file for authentication
    • in the Category tree, select Connection->SSH->Auth
    • in the field under Authentication Parameters, click the Browse... button
    • browse to and select your .ppk file
  • Save your session information
    • in the Category tree, select Session
    • under Load, save or delete a stored session, select xxx.xxx.edu.cn
    • click the Save button
4.   Run the ageant
  • double-click on pageant.exe
  • you should now see a computer with a black hat in the tray
      Add your .ppk to the ageant
  • right-click on the computer with the black hat in your taskbar
  • select Add Key from the context menu
  • browse to your recently-created .ppk file and select it
  • click Open
  • enter your password when prompted
  • verify that your key has been added by double-clicking on the computer with the black hat
5. 测试你安装配置的一切是否正确,dos窗口运行下面命令
     plink.exe -load xxx.xxx.edu.cn -v
    必须注意,此处的xxx.xxx.edu.cn是刚才保存的putty的一个session的名字,而不是服务器的地址(当然,这两个名字是一样的),这也是后来设置tortoisesvn中plink命令的原型, 也有助于你理解tortoisesvn是如何利用上了putty.   -v是显示连接过程。

6. 安装TortoiseSVN
下载之:http://tortoisesvn.net/downloads
然后安装

7. 右键,在TortoiseSVN的setting里面选择network,在ssh client处填入C:Program FilesWinSCPPuTTYPLINK.EXE -load
     说明:此处的命令其实就是第5步中的测试命令,plink.exe命令load putty保存的session--xxx.xxx.edu.cn,此处的xxx.xxx.edu.cn是putty的session名字,之所以用与服务器同名,主要是为了和linux系统共用一个工作拷贝。也就是这一步把putty和Tortoisesvn联系在了一起。

8. svn的版本库地址:svn+ssh://xxx.xxx.edu.cn/home/usr/SVNROOT/mydocs
     注意,此处的xxx.xxx.edu.cn是putty保存的session名字。如果你没有和linux共用一个工作拷贝,putty保存中使用了其他的session名字,请用其他的session名字代替。

9. 在mydocs文件夹中放一个新文件,然后用tortoisesvn的commit命令试一试能否递交。

OK, windows和linux可以共用一个工作拷贝了。

技术交流 录入:SVN中文技术网[www.svn8.com]
Tags:  
责任编辑:
  • 请文明参与讨论,禁止漫骂攻击。 用户名:新注册) 密码: 匿名:
    评论总数:0 [ 查看全部 ] 网友评论
    关于我们 - 联系我们 - 广告服务 - RSS订阅 - 网站地图 - 返回顶部