将现有文件夹放入存储库

时间:2011-10-06 11:27:37

标签: svn tortoisesvn visualsvn-server

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

4 个答案:

答案 0 :(得分:40)

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

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

答案 1 :(得分:12)

Robert's Answer更简单的方法(尽管从中提升):

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

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

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

答案 2 :(得分:1)

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

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

答案 3 :(得分:0)

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

对于此示例,我们现有的仓库是“TEST_REPO”

转到命令行。

创建一个名为“new”的新目录。 CD进入它。

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

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

现在,您将在“TEST_REPO”目录中拥有一个仓库。

执行命令

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

(rd删除目录,如果需要,抱歉,不是Windows用户)

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

C:\new\TEST_REPO\svnadmin verify .

您应该看到SVN验证存储库中的所有源代码。容易腻。