3

假设我刚刚开始了一个新项目,并想为它创建一个存储库,只是一个客户端,而不是 SVN 服务器的实际管理员。我该怎么做?

我可以在服务器本身创建一个存储库,但我不能从客户端创建一个存储库,例如 Tortoise,我可以创建分支、标签等,但没有存储库。

obs:tortoise 的create repository 在本地创建它,而不是在实际的svn 服务器上。谢谢。

4

4 回答 4

3

根据SVN 邮件列表中的帖子(以及 SVN 用户的常识),不可能使用 SVN 客户端远程创建存储库。例如,如果您愿意,您可以编写一个在服务器上创建存储库的 Web 应用程序但是,如果服务器不在您的控制范围内,那么您就不走运了。

于 2012-04-05T20:53:25.170 回答
1

所以,这可能不是您正在寻找的解决方案,但我有类似的情况(我有一些实习生在服务器上没有管理员权限,但我不想每次都为他们创建新的存储库当他们创建一个新项目并想要签入时。同样,我不想每次我想签入一些全新的简单测试项目时都必须启动 CollabNet 来创建一个新的 repo。)

我在没有标准 Trunk/Branches/Tabs 结构的服务器上创建了一个个性化的“根”存储库(例如“InternNameProjects”),并将 URL 提供给实习生。他现在可以使用 TSVNBrowse Repo访问该 url,并在那里创建一个新文件夹。然后使用Import In Place指令将新项目放入该文件夹(两个步骤:1. 从顶部签出,2. 提交)。

于 2014-05-29T18:16:24.737 回答
1

如果您要为服务器使用Subversion Edge 之类的东西,您将获得一个用于配置和管理服务器的 Web UI,它允许您从 Web 浏览器创建存储库。此外,Subversion Edge 有一个REST API,可让您以编程方式使用服务器。

于 2012-04-05T20:57:28.323 回答
0

Subversion 客户端只能在现有存储库上运行,所以不能。您不能使用 Subversion 客户端创建存储库。您可以做几件事:

  • 您可以编写一个允许用户创建 Subversion 存储库的 Web 应用程序。使用 JavaScript 或 PHP 编写这样的应用程序并不难。如果您将 Apache 定义httpd为指定SVNParentPath,则将新存储库添加到 指定的目录SVNParentPath将使该 Subversion 存储库可通过 Apache 访问httpd。您甚至不必重新启动 Apache。
  • 您可以通过说而不是repository just project来重新定义摆脱这种情况的方式。也就是说,不是每个存储库一个项目的多个存储库,而是一个存储库具有多个项目。然后,有人可以svn mkdir $REPO/trunk/$project从他们的 Subversion 客户端创建一个新项目。他们将拥有自己的新项目,并且可以将其视为单独的 Subversion 存储库。
于 2014-05-29T18:53:39.800 回答