14

我正在使用 VS2008 和 Resharper。Resharper 创建一个目录 _Resharper.ProjectName。这些文件对我所知道的源代码控制没有任何价值,并且在提交更改时会导致问题。我怎样才能让 SVN 忽略它们?我使用 TortoiseSVN 作为我的 SVN 接口。

编辑:你们很快。

4

8 回答 8

14

这是一个显示 TortoiseSVN 中的忽略过程的链接

于 2008-09-16T04:49:25.067 回答
11

将文件名(甚至模式_Resharper.*)添加到svn:ignore其父目录的属性中。

于 2008-09-16T04:48:59.373 回答
7

在我输入此内容后阅读手册时,将在此处发布我自己的问题的答案。在 TortoiseSVN 中,转到设置。添加

*ReSharper*

到“全局忽略模式”。将项目添加到全局忽略模式意味着这些文件对于您为安装了 TortoiseSVN 的客户端工作的任何项目都将被忽略,因此在所有情况下都可能不适合使用全局忽略。

如果在将它们添加到存储库之前从 TortoiseSVN 菜单中选择此选项,您还可以将特定文件和目录添加到单个项目的忽略列表中。“之前”部分是最初让我绊倒的地方。由于这是一个开发人员项目,我一直在检查二进制文件等。b/c 它对其他开发人员没有任何影响,并且 Resharper 文件进入了那里。

于 2008-09-16T04:52:59.130 回答
4

将 Resharper 缓存存储在系统临时文件夹中。检查 r# 中的第一个设置页面。环境->常规->系统->存储缓存..

于 2010-01-19T06:11:53.627 回答
2

简短的回答:“svn:ignore”属性

长答案:

# cd /your/working/copy
# export EDITOR=vi
# svn propedit svn:ignore .

(在自己的行上添加“_Resharper.ProjectName”并将文件写出)

编辑:呃... doh,刚刚意识到您说的是乌龟...这就是您使用 SVN 命令行版本的方式

于 2008-09-16T04:50:58.887 回答
1

svn 有一个“忽略”属性,您可以将其附加到文件名模式或目录。被忽略的文件和目录不会在“svn st”命令中报告,也不会进入 repo。

示例:您在 .c 和 .h 文件中有 C 源代码,但编译器创建了一堆 .o 文件,您不想让 subversion 麻烦告诉您。您可以使用 Subversion 的属性功能告诉它忽略这些。

对于一个签出工作目录中的一些文件,例如 myproject/mysource/

bash> svn propedit svn:ignore mysource

在弹出的文本编辑器中(在 linux 中,可能是 vi 或任何您的 EDITOR env var 设置为),每行添加一个文件名模式。不要在模式后添加尾随空格(这会使 svn 感到困惑)。

*.o
*.bak

就这样。您可能想立即进行提交,因为有时 svn 会担心用户在两次提交之间对文件进行太多不同类型的更改。(我的规则是:如果有疑问,请提交。它很便宜)

对于出现在庞大目录树中许多地方的文件类型,请编辑保存在存储库中的 subversion 配置文件。这需要存储库管理员的操作,除非您可以直接访问存储库(不是通过 svn: 或 http: 或 file:,但可以“cd”到存储库位置并“ls”它的文件)。svn 书籍应该有详细信息;我现在不记得了。

由于我不使用 Tortoise,我不知道上面的描述如何直接翻译 - 但这就是为什么我们有可编辑的答案(快乐!)

于 2008-09-16T05:01:35.740 回答
0

这篇博文提供了一个示例,说明如何通过命令行 svn 执行您想要的操作。 http://sdesmedt.wordpress.com/2006/12/10/how-to-make-subversion-ignore-files-and-folders/

这些变化将反映在 TortoiseSVN 中。

我相信有一种方法可以通过乌龟做到这一点,但是我没有 Windows vm 可访问的 atm,抱歉:(

于 2008-09-16T04:54:12.827 回答
-3

SVN 仅控制您在创建存储库时放入的内容。不要只导入整个项目文件夹,而是在构建之前导入“干净”文件夹。构建后,您将获得所有目标文件或 _Resharper 文件夹等,但它们不受版本控制。

我忘记了:

svn:忽略
命令是告诉 SVN 排除某些文件的另一种可能性。您可以将其作为属性添加到版本控制的文件夹中,例如使用 TortoiseSVN。

于 2008-09-16T04:48:53.197 回答