【问题标题】:Make an existing folder into a repository将现有文件夹放入存储库
【发布时间】:2011-12-02 04:22:17
【问题描述】:

我认为直接在记事本中修改文件可能很危险,是时候进行一些适当的源代码控制了(我对源代码控制很陌生)。我在我的服务器上安装了 VisualSVN 服务器,在我的客户端机器上安装了 TortoiseSVN。我可以很好地创建新文件夹,检查它们等等。但是,在我的服务器上,我有一个现有的 IIS 文件夹结构,并且到处都有基于此位置的链接。如何在不移动文件的情况下使整个文件夹与 SVN 一起使用?

【问题讨论】:

  • 您不想同时备份这些文件吗? (超出链接的)

标签: svn tortoisesvn visualsvn-server


【解决方案1】:

检查现有目录结构有一个简单的解决方案:

  1. 打开 TortoiseSVN 的存储库浏览器并为您要签入的项目创建一个新目录。
  2. 从某处的 SVN 签出这个新创建的空目录
  3. 打开签出目录并将包含的隐藏.svn 目录移动到项目的根目录中。这将为所有文件和子文件夹启用 TortoiseSVN 的上下文菜单。
  4. 添加您要签入的每个文件和文件夹(上下文菜单命令添加...)
  5. 在项目根文件夹上执行SVN Commit...

【讨论】:

  • 注意:步骤 1 假设您的存储库结构设置为在单个存储库中包含多个项目(即option one in the SVN book)。相反,如果您将每个项目放在单独的存储库中(即选项二),您将无法从存储库浏览器中执行此操作。您需要在 svn 服务器本身上创建新的存储库。
【解决方案2】:

比Robert's Answer 更简单的方法(虽然从它那里得到了提升):

  1. 打开 TortoiseSVN 的存储库浏览器,并为您要签入的项目创建一个新目录。

  2. 从 SVN 签出这个新创建的空目录作为您要添加的目录(忽略有关签出非空目录的警告)。

  3. 在要提交的目录上执行“SVN Commit...”,从提交窗口中选择要添加的文件。

【讨论】:

    【解决方案3】:

    我还会在 3 到 4 之间添加一个步骤:

    3.5。忽略自动生成的文件(上下文菜单命令添加到忽略列表...)

    【讨论】:

      【解决方案4】:

      你可以做上面其他人提到的,但是,如果你只想使用你所拥有的而不是添加和提交,你可以简单地欺骗 SVNServe。

      对于这个例子,我们现有的 repo 是“TEST_REPO”

      转到您的命令行。

      创建一个名为“new”的新目录。把CD放进去。

      在我们的“新”目录中运行以下命令:

      C:\new\mkdir TEST_REPO
      C:\new\svnadmin create TEST_REPO
      

      现在您将在“TEST_REPO”目录中拥有一个 repo。

      运行:

      C:\new\cd TEST_REPO
      C:\new\TEST_REPO\del *.* /S /Q
      

      (如果需要,可以删除目录,抱歉,不是 windows 人)

      现在,将文件从现有的“TEST_REPO”移动到“C:\new\TEST_REPO\”文件夹中。然后运行:

      C:\new\TEST_REPO\svnadmin verify .
      

      您应该会看到 SVN 验证您的存储库中的所有源。轻松愉快。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-07-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-05-31
        • 2013-01-13
        • 2011-06-26
        相关资源
        最近更新 更多