当我尝试将文件Class1.cs重命名为VS内的class1.cs然后尝试通过ankhSVN提交项目时,我得到两个错误:
[...\Class1.cs] is already under version control.
The commit processing can't commit [...\Class1.cs], because it is not managed by Subversion. Maybe you should refresh the status after applying changes with another client?
然后我删除了class1.cs,添加了一个新的class1.cs,试图提交它但收到了同样的错误。我如何解决这个问题,以便我可以改变案例并仍能提交?我知道Windows是个案例,但不应该有(简单)方法吗?
在与ankhSVN玩了一点之后,然后尝试使用其原始名称提交文件(所以我至少在版本控制中将其恢复)我得到了:
An internal error occured. Commit failed (details follow): Cannot commit: '[...]\Class1.cs' because it was moved to '[...]\class1.cs' which is not part of the commit; both sides of the move must be committed together
SharpSvn.SvnIllegalTargetException...
我在用着
- Windows 7 64
- Visual Studio 2012
- TortoiseSVN 1.8.4
- ankhSVN 2.5.12266.473
您可以在Visual Studio + ankhSVN中执行此操作。
复制/粘贴要重命名的文件并将其粘贴到同一文件夹中
将文件从“Copy of xxxx”重命名为所需的新名称。
删除旧文件
右键单击两个文件所在的文件夹,并对整个文件夹执行svn commit操作。
而已!
您可以在Visual Studio + ankhSVN中执行此操作。
复制/粘贴要重命名的文件并将其粘贴到同一文件夹中
将文件从“Copy of xxxx”重命名为所需的新名称。
删除旧文件
右键单击两个文件所在的文件夹,并对整个文件夹执行svn commit操作。
而已!
我用以下步骤修复它。我仍然希望有一种更简单的方法。
- 我确保没有class1.cs或Class1.cs成为项目的一部分
使用VS.
- 现在在Windows资源管理器中
- 我使用了Class1.cs
TortoiseSVN(因为我删除了它,看问题)
- 我用过Rename
TortoiseSVN的选项将其命名为class1.cs
- 我提交了class1.cs
使用TortoiseSVN
- 现在在VS里面我展示了包含的所有文件
项目中的class1.cs并通过ankhSVN提交项目
我有同样的问题,我进入发生问题的文件夹,右键单击文件,说TortoiseSVN - >添加。然后出现一个对话框,说文件已经存在,我想要
1)案件发生了变化
2)添加文件(导致windows出现问题)
我当然选择了#1然后刷新了VS中的状态并修复了问题。然后我做出了改变,我恢复了正常。
在Windows资源管理器中,导航到最初所在文件所在的文件夹(移动/重命名之前)
右键单击文件夹,然后从Subversion菜单访问Repo浏览器。
将原始文件从Repo拖放回项目文件夹。
在Visual Studio中,打开“Working Copy Explorer”并导航到刚刚拖放文件的目录。
您应该在文件名旁边看到红色的“x”,表示它们已被删除。
选择所有文件,然后右键单击,然后选择“添加到待定更改”
之后,您应该能够提交更改。