如何调整SVN设置以在Windows上转换行结尾符?

10

我需要在Windows上使用SVN,并希望设置它,使得无论使用哪个仓库,都会以Windows风格检出行结束符,并总是以Unix风格提交。

  1. 这是否可能?还是我必须为每个仓库编写一个配置文件?

    如果我必须为每个仓库编写配置文件,应该把它放在哪里?正确的文件名是什么?这个文件应该包含哪些内容?对其他仓库用户会产生什么影响?

  2. 我对全局SVN配置文件进行了以下更改,但没有效果。我还需要做什么?或者我必须用一些特定的参数在Windows上调用SVN才能生效吗?

enable-auto-props = yes
[auto-props]
*.c = svn:eol-style=native
*.cpp = svn:eol-style=native
*.cxx = svn:eol-style=native
*.h = svn:eol-style=native
*.hpp = svn:eol-style=native
*.hxx = svn:eol-style=native
*.txt = svn:eol-style=native
*.tex = svn:eol-style=native
*.bib = svn:eol-style=native
3个回答

14

您需要为存储库中的所有文件设置svn:eol-style属性为native。 Autoprops将为新添加到存储库的文件设置该属性,但对于现有文件,您需要手动添加该属性:

svn propset svn:eol-style native example.c
svn commit

感谢您澄清现有文件和新添加文件之间的区别!这个解决方案是针对存储库和文件类型特定的。是否没有办法告诉Subversion始终执行此操作,而不考虑存储库的设置和文件类型(只要它不是二进制文件)? - Bernhard Anderson
不,我不知道有这样一个选项。但由于属性作为存储库的一部分进行跟踪,检出代码的其他人也会得到它们,并正确转换行尾,而无需特殊配置其Subversion客户端。 - Daniel Roethlisberger
1
沿着同样的线路 - Bernhard Anderson

1

Daniel Roethisberger 已经为你提供了 正确答案。然而,你可能希望找到一种方法,确保所有文件都有 svn:eol-style 设置为 `native`。

我有一个pre-commit hook,可以确保在提交之前,所有相关文件的svn:eol-style属性都设置为native。你可能希望查看它以确保遵循你的政策。


你在“pre-commit hook”的链接和“正确答案”链接匹配。你是不是想发布其他东西?也许它没有正确地复制到你的剪贴板中。 - Keith M

-3

这个命令行 Android 工具对我很有用:

cd <install_dir>/adt-bundle-mac-x86_64-20140702/sdk/tools
./android list target 

请确保在下面的--target开关中选择上面列出的目标。
./android create project --target 1 --name MyFirstApp \
  --path ~/projects/android/MyFirstApp --activity MainActivity \
  --package com.example.myfirstapp

这个文档记录在https://developer.android.com/training/basics/firstapp/creating-project.html

然后打开Eclipse并导入上面创建的项目。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接