【发布时间】:2014-12-19 17:20:22
【问题描述】:
我对 SVN 有一个问题,我无法弄清楚。每当我尝试将以下 C# 代码块提交到我的 SVN 远程存储库时,都会收到 CheckSum 不匹配错误。
请注意,整个代码块都被注释掉了。
该文件仅包含下面显示的注释掉的代码。文件中没有其他内容。
代码
/* private void CreateSvnInfoFile()
{
try
{
SvnInfoEventArgs svnInfo;
using (SvnClient client = new SvnClient())
{
client.GetInfo(solutionDir, out svnInfo);
}
FileInfo svnOut = new FileInfo(this.targetDir + Path.DirectorySeparatorChar + "SvnInfo.xml");
if (svnOut.Exists)
svnOut.Delete();
File.WriteAllLines(svnOut.FullName, new List<string>()
{
"<SvnInfo>",
" <Path>" + svnInfo.Uri.ToString() + "</Path>",
" <Revision>" + svnInfo.Revision.ToString() + "</Revision>",
"</SvnInfo>"
}.ToArray());
}
catch (Exception e)
{
Console.WriteLine(e);
}
} */
错误
为了对此进行测试,以下是我遵循的步骤:
- 在我的本地目录中,我创建了名为“BLEEPBLOOP.cs”的 .cs 文件,文件中没有任何内容。
- 使用 TortoiseSVN,我右键单击该文件并选择“添加”
- 使用 TortoiseSVN,我右键单击该文件并选择“提交”
- 该文件现在在 SVN 远程存储库中可见。
- 我打开了 BLEEPBLOOP.cs 的本地副本并将上述代码块复制/粘贴到文件中。
- 已保存文件。
- 使用 TortoiseSVN,我右键单击该文件并选择“提交”
- 然后会显示错误消息。
这怎么可能?
感谢阅读!
【问题讨论】:
-
其他文件是否正常?您可能在文本中包含隐藏/非法字符。您可以尝试使用记事本打开它,然后使用特定编码(如 ANSI)执行“另存为...”。
-
@SteveWellens 是的,所有其他文件都正常。我继续尝试使用 ANSI 编码进行 SAVE AS 的建议,但得到了相同的结果。
-
TortoiseSVN 说的是 BLEEP_BLOOP.cs 而 AnhkSVN 说的是 Executor.cs 有什么意义吗? (或者后者只是在您尝试使用 BLEEP_BLOOP.cs 重现它之前的真实错误的屏幕截图?)还有 BLEEP_BLOOP 和 BLEEPBLOOP 之间的区别有什么意义吗?
-
哦,还有,这可能是由于 Tortoise 和 Ankh 的 SVN 版本不匹配造成的吗?
-
@adv12 抱歉。你是对的。后一个屏幕截图是原始错误的。另一个屏幕截图来自我使用 BLEEP_BLOOP.cs 重现问题。名称 BLEEP_BLOOP 没有任何意义。我只是随便输入了一些名字,这样它就会从其他所有东西中脱颖而出。
标签: c# svn tortoisesvn ankhsvn