gpt4 book ai didi

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

转载 作者:可可西里 更新时间:2023-11-01 14:41:15 25 4
gpt4 key购买 nike

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

我正在使用Version Control by Example by Eric Sink这本书,并希望能够在一台计算机上(最好是Windows)在一台计算机上处​​理第17页到第20页的所有内容(尽管我确实也有Linux)。

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

我的2美分。

最佳答案

整个过程听起来过于复杂。这是一种简单的方法:

  • 使用svnadmin create创建存储库。
  • 进入仓库的conf文件夹。您会看到一个passwdsvnserve.conf文件。
  • svnserve.conf文件中。查找# password-db = passwd行,并删除前面的#。这是我 repo 中的第27行。
  • 打开passwd文件,并创建多个登录名。他们向您展示了两个示例,萨利和哈里。格式为<user> = <password>
  • 保存文件,然后转到存储库的父目录。
  • 运行svnserve -r <repoName>命令。不要关闭此窗口。而是打开另一个控制台窗口以运行下面的其他命令。
  • 进入另一个目录,并使用svn://协议(protocol)进行 checkout 。结帐时添加--username--password参数。这将 checkout repo 给您命名的用户。
  • 进入另一个目录,并使用svn://协议(protocol)进行另一个 checkout ,其中--username--password指向另一个用户。

  • 这两个用户的每个工作目录都是默认目录。重要的是不要使用 file:///作为协议(protocol)。使用 svn://:
    C:> svn co --username harry --password harrysecret svn://localhost

    默认情况下,提交将是执行结帐的用户的提交。您执行的第一个结帐将是存储库的根。您应该添加 trunkbranchestags目录以模拟实际的Subversion存储库结构。

    如果您不想运行服务器,则 file:///协议(protocol)用于基本测试。永远不要让多个用户使用它,并且永远不要使用它运行真实的存储库。 (它的主要用途是用于基于Web的存储库浏览器,例如[ViewVC]( http://www.viewvc.org,因为 file:///非常快。)因为 file:///相当容易安装和运行,所以对 svnserve的需求很少。而且,您甚至可以使它是 Windows service

    遵循书中的练习

    I added a bounty. Here is the book - ericsink.com/vcbe/vcbe_a4_lo.pdf. I want to be able to do all the stuff from page 17 to 20 from one computer, preferably windows. I have linux as well if need be



    该书对您正在使用的计算机(如Mac)进行了一些假设,并且由于从Harry切换到Sally并切换回原来的位置而有些困惑。当您是Sally时使用一个“控制台”窗口,而当您是Harry时使用一个控制台窗口,我们将简化此过程。

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

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

    第15页

    在Windows计算机上创建存储库。我们将在C:\repos\lottery>下创建存储库:
    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将包含存储库的用户和密码。

    现在,使用 passwd编辑 notepad++文件。您希望它看起来像这样:
    ### 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\lottery\conf中。让我们启动仓库:
    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。这样,您不必每次都输入密码。

    现在进入Harry的工作目录
    C:\workdirs\harry> cd lottery

    您现在位于Harry的工作目录中。

    不要触摸 .svn目录!这会将信息存储在您的工作副本中: checkout 的人。什么仓库。什么版本等

    您应该能够执行所有操作,直到进入第17页底部的第3章:

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

    打开另一个控制台窗口 。现在,您将打开三个控制台窗口:
  • 这是正在运行的svnserve进程。关闭此窗口将关闭svnserve。您可以将其最小化。
  • 这是哈利的工作副本。
  • 这将是Sally的工作副本。

  • 将所有内容保存在单独的控制台窗口中会更容易。实际上,您可以更改窗口配色方案,以帮助您快速识别所处的窗口。创建Sally的工作副本:
    C:\> cd \workdirs
    C:\workdirs> mkdir sally
    C:\workddirs> cd sally

    C:\workdirs\sally> svn co --username sally svn://localhost/lottery
    password: •••••••

    因为您没有使用--password参数,所以要求您输入Sally的密码。同样,如果系统询问您是否存储密码,请暂时说是。这样,您不必继续输入Sally的密码。

    最后:

    C:\workdirs\sally> CD彩票

    这是Sally的工作目录。

    当我们切换回Harry的工作副本时,使用Sally的Window到第19页应该没问题。

    从现在开始,如果您正在使用Harry的工作副本,只需切换到Harry的窗口。如果您是Sally,请切换到Sally的窗口。其他所有内容都应该没问题,并始终按照示例进行操作。

    关于windows - 在Windows计算机上模拟多个SVN用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27598075/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com