【问题标题】:Renaming files with Visual Studio and TortoiseSVN使用 Visual Studio 和 TortoiseSVN 重命名文件
【发布时间】:2009-08-07 14:07:08
【问题描述】:

我正在使用 Visual Studio 编辑源代码,有时我会切换到 Windows 资源管理器以使用 TortoiseSVN 提交更改。这个程序对我很有效,我对此很满意。但是,最近我开始重命名类并重新组织命名空间。我喜欢在 Visual Studio 中重命名和移动文件,因为它会自动为我更新项目文件。但是,当我提交更改时,我必须告诉 TortoiseSVN 旧文件已删除并添加了新文件,这并不完全正确,并且会破坏特定代码的历史记录。

所以我的问题是:当我在 Visual Studio 中重命名文件时,有没有办法告诉 TortoiseSVN 我这样做是为了保留文件历史记录?


更新 (16:30): Ankhsvn 似乎是显而易见的答案,但我喜欢他们现在的样子。这听起来很奇怪,但我喜欢 TortoiseSVN 没有集成到 Visual Studio 中。这可能是因为我总是在辅助监视器上打开文件管理器时设置了两个监视器。也许是因为我发现解决方案资源管理器有点笨拙。也许是因为我喜欢将代码编辑和修订控制视为软件开发的独立步骤。我不知道。

【问题讨论】:

  • 似乎 AnkhSVN 是您的答案,因为几乎所有答案都提到了它,包括我的 :-)
  • Jakub,我支持你。我已经为 VS 尝试了许多 CVS 和 SVN 插件,并且总是回到 Tortoise。
  • +1 提出很好的问题。如果可以的话,也 +1,因为想要一个不需要插件的解决方案。虽然 AnkhSVN 比以前好得多,但它仍然无法替代 TSVN。根据我的经验,不使用 AnkhSVN 比使用它更有效率。

标签: visual-studio tortoisesvn


【解决方案1】:

如果您有更新版本的 TSVN(我认为是 1.5.0 之后),您可以使用“repair moves”功能。我一直用它来处理这种情况。

【讨论】:

  • 你保存了我的历史。非常感谢。
  • 谢谢!你也保存了我的历史记录。
  • 是的,我已经多次使用此功能来解决 VS 中的重命名问题。虽然工作量很大,所以我会尝试 AnkhSVN。只是我前几天的一个想法......想象一下,如果 TSVN 在提交对话中有一个建议重命名功能。那将是史诗般的,并且可以节省大量时间!!!
  • 谢谢你,杰夫,你成就了我的一天!
【解决方案2】:

看看http://ankhsvn.open.collab.net/。它会查找这些内容并适当地处理更改,并直接在解决方案资源管理器中向您显示更改的内容。另外,您不必返回 Explorer!我真的很喜欢它!

没有理由阻止文件历史记录。这就是源代码控制系统的全部意义所在。

【讨论】:

  • 但最好切换到这个 :-)
【解决方案3】:

我认为AnkhSVN 可以胜任。 它是 Visual Studio 的免费 SVN 插件。 还有一个 - VisualSVN,但它的共享软件。

【讨论】:

    【解决方案4】:

    也许你可以使用 ankhsvn 插件 for visual studio for svn

    或者有类似的插件

    【讨论】:

      【解决方案5】:

      没有。您应该在 TortoiseSVN(即文件资源管理器)中进行所有文件移动/重命名。

      有一些适用于 Visual Studio 的 SVN 插件可以满足您的需求。

      【讨论】:

      • 没错。首先,重命名一个文件,使其已更改名称,然后将其替换为较新的文件,然后提交。在这种情况下,SVN 现在将完成 2 个操作。
      【解决方案6】:

      AFAIK,当您使用 TortoiseSVN 在源代码控制范围内重命名文件时,它也会删除重命名的文件并将重命名的文件添加为新文件。

      See here:

      提交父文件夹

      由于重命名和移动是作为 删除后跟一个添加 [...]

      【讨论】:

      • 其实它是作为复制和删除完成的。这样 SVN 会保留(复制)历史记录。
      【解决方案7】:

      我不知道你怎么能按照你的要求做,但我认为如果你开始使用AnkhSVN,你可以解决你的问题。

      这是一个将 Subversion 集成到 Visual Studio 中的出色工具,您可以从 VS IDE 进行提交。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-19
        • 2013-12-13
        • 2014-07-03
        • 1970-01-01
        • 1970-01-01
        • 2012-08-05
        相关资源
        最近更新 更多