在Windows上使用带有Cygwin和TortoiseSVN的SVN

Cze*_*ogy 4 svn windows tortoisesvn cygwin

我是版本控制的初学者,所以我可能会做一些非常错误的事情.

我希望能够在cygwin和TortoiseSVN(或其他Windows应用程序)中访问本地存储库.麻烦的是,在cygwin中我必须使用
file:///cygdrive/c/...TortoiseSVN需要的路径
file:///c:/....

我怎样才能让这两个一起工作?我可以使用其他一些理解的路径/协议吗?

谢谢!

Dav*_* W. 5

简单的方法是使用svnserveSubversion附带的程序.这应该在Cygwin中.您需要做的就是启动svnserve并使用svn://协议代替file://.

首先,您需要修改存储库.你必须编辑两个文件:svnserve.confpassed.

$ cd /cygdrive/c/.../repos_dir
$ cd conf
$ vi svnsever.conf   # Change the "# password-db = passwd" line & remove the "#"
$ vi passwd          # Setup the user and password entry
Run Code Online (Sandbox Code Playgroud)

接下来,启动服务器:

$ cd ..    # Back to the repository directory
$ svnserve -r $PWD -d
Run Code Online (Sandbox Code Playgroud)

而且,就是这样.

现在,您可以通过这种方式结账:

$ svn co svn://localhost/dir/to/check/out
Run Code Online (Sandbox Code Playgroud)

这将是cygwin和Tortoise中的相​​同URL


WORD'O警告

无法保证不同的subversion客户端将生成可与其他subversion客户端一起使用的工作目录.

幸运的是,Tortoise和标准的Subversion命令行客户端似乎没问题.在过去的几年里,我已经能够在Subversion命令行客户端和ToroiseSVN之间切换.但是,您必须确保它们都是以太网后1.7版客户端或1.7之前的客户端.如果您的Cygwin客户端是版本1.6.7而您的Tortoise客户端是1.7.5,则无法共享工作目录.使用该svn version命令检查您的Cygwin客户端,并检查Tortoise上的About Box.

同样,不能保证两个客户端可以共享同一个工作目录,所以如果有问题,你就可以独立完成.