Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在windows计算机上模拟多个SVN用户_Windows_Svn_Version Control - Fatal编程技术网

在windows计算机上模拟多个SVN用户

在windows计算机上模拟多个SVN用户,windows,svn,version-control,Windows,Svn,Version Control,如何在Windows计算机上模拟多个SVN用户来学习SVN 我正在使用这本书,希望能够在一台计算机上完成从第17页到第20页的所有工作,最好是在Windows上(尽管我也有Linux,如果需要的话) 编辑-我将在问题下方的评论中添加更新我的后续问题。我希望这将使其他读者做好准备,正确设置使用本书的所有内容 我的2美分。如果您想模拟多个用户在同一个项目上工作,那么您可以设置Subversion+Apache HTTP服务器包(VisualSVN服务器,SVN Edge),然后使用不同用户下的多个工

如何在Windows计算机上模拟多个SVN用户来学习SVN

我正在使用这本书,希望能够在一台计算机上完成从第17页到第20页的所有工作,最好是在Windows上(尽管我也有Linux,如果需要的话)

编辑-我将在问题下方的评论中添加更新我的后续问题。我希望这将使其他读者做好准备,正确设置使用本书的所有内容


我的2美分。

如果您想模拟多个用户在同一个项目上工作,那么您可以设置Subversion+Apache HTTP服务器包(VisualSVN服务器,SVN Edge),然后使用不同用户下的多个工作副本来“工作”该项目


实际上,我看不出你的指导有任何实际或学习价值。

整个事情听起来太复杂了。下面是一个简单的方法:

  • 使用
    svnadmin create
    创建存储库
  • 进入回购协议的
    conf
    文件夹。您将看到一个
    passwd
    和一个
    svnserve.conf
    文件
  • svnserve.conf
    文件中。查找行
    #password db=passwd
    ,然后删除前面的
    #
    。这是我回购协议中的第27行
  • 打开
    passwd
    文件,并创建多个登录。他们给你举了两个例子,萨利和哈里。格式为
    =
  • 保存文件,然后转到存储库的父目录
  • 运行
    svnserve-r
    命令。不要关上这扇窗户。而是打开另一个控制台窗口来运行下面的其他命令
  • 进入另一个目录,使用
    svn://
    协议进行签出。签出时添加
    --username
    --password
    参数。这将向您指定的用户签出回购
  • 进入另一个目录,使用
    svn://
    协议进行另一次签出,并将
    --用户名
    --密码
    指向另一个用户
  • 对于这两个用户,每个工作目录都是默认的。重要的是不要将
    文件://
    用作协议。使用
    svn://

    C:> svn co --username harry --password harrysecret svn://localhost
    
    默认情况下,提交将是执行签出的用户的提交。你做的第一次结账将是回购协议的根。您应该在
    主干
    分支
    标记
    目录中添加,以模拟实际的Subversion存储库结构

    如果您不想运行服务器,则
    文件://
    协议用于基本测试。它不应该被多个用户使用,也不应该使用它运行真正的存储库。(它主要用于基于web的存储库浏览器,如[ViewVC](因为
    file://
    非常快。)几乎不需要
    file://
    ,因为
    svnserve
    非常容易启动和运行。而且,您甚至可以将其作为一个应用程序


    跟着书中的练习 我添加了一个悬赏。这是一本书-ericsink.com/vcbe/vcbe_a4_lo.pdf。我希望能够在一台计算机上完成从第17页到第20页的所有工作,最好是windows。如果需要,我也有linux

    这本书对你正在使用的电脑(看起来像Mac电脑)做了一些假设,当它从Harry切换到Sally再切换回来时,有点让人困惑。我们将在Sally时使用一个控制台窗口,Harry时使用一个控制台窗口来简化这一点

    你需要一个好的Windows文本编辑器。不要使用记事本!!。记事本不是一个编程编辑器。get。它面向GUI,简单但功能强大。它也是开源和免费的

    下面我列出了本书中的说明与您在Windows设备上的操作之间的区别。我假设您在Windows设备上具有管理员访问权限

    第15页 正在Windows计算机上创建存储库。我们将在C:\repos\lotket>下创建repo:

    C:\> mkdir repos
    C:\> cd repos
    C:\repos> svnadmin create lottery
    C:\repos> cd lottery\conf
    C:\repos\lottery\conf> notepad++ svnserver.conf
    
    您将找到设置密码数据库位置的行。它是我的存储库中的第27行。您将看到
    。从该行中删除该行。
    注释掉该行。您希望该行读取
    password db=passwd
    。然后保存该文件。这会告诉Subversion服务器进程该文件已被删除
    passwd
    将包含存储库的用户和密码

    现在用
    notepad++
    编辑
    passwd
    文件。您希望它看起来像这样:

    ### This file is an example password file for svnserve.
    ### Its format is similar to that of svnserve.conf. As shown in the
    ### example below it contains one section labelled [users].
    ### The name and password for each user follow, one account per line.
    
    [users]
    harry = harryssecret
    sally = sallyssecret
    
    我所做的只是从两个示例用户中删除注释符号(
    #
    )。保存
    passwd
    文件。您的存储库有两个用户可以提交和更改。Sally的密码是sallysecret,Harry的密码是harrysecret

    您当前位于目录
    C:\repos\lotket\conf
    。让我们启动repo:

    C:\repos\lottery\conf> cd C:\>
    C:\> svnserve -d --root=repos
    
    第16页: 在同一台机器上,创建一个名为
    C:\workdirs
    的目录。我们将在这里创建Harry和Sally的工作目录。为此打开另一个控制台窗口。此控制台窗口将用于Harry的工作:

    C:\> cd \
    C:\> mkdir workdirs
    C:\> cd workdirs
    C:\workdirs> mkdir harry
    
    现在,让哈利结账:

    C:\workdirs> cd harry
    C:\workdirs\harry> svn co --username harry --password harrysecret svn://localhost/lottery
    
    您可能会被问到是否要在客户端配置中存储密码,并警告它们将以明文形式存储。继续并对这些问题说
    yes
    。这样,您就不必每次都输入密码

    现在进入哈利的工作目录

    C:\workdirs\harry> cd lottery
    
    你现在在哈利的工作目录里

    不要触摸
    .svn
    目录!这将存储工作副本上的信息:谁签出了它。什么存储库。什么版本,等等

    在第17页底部的第3章之前,你应该能够做任何事情:

    现在,创建Sally的工作目录:

    打开另一个控制台窗口。现在有三个控制台窗口打开:

  • 这是
    C:\> cd \workdirs
    C:\workdirs> mkdir sally
    C:\workddirs> cd sally
    
    C:\workdirs\sally> svn co --username sally svn://localhost/lottery
    password: •••••••