Delphi SVN清理

时间:2015-12-23 14:29:57

标签: delphi svn

我正在尝试为此问题提供下面的大量背景信息,以便有经验的人可以阅读症状。我希望有更多的问题需要回答才能找到答案。

这个问题的简写形式是如何从Delphi中的项目中删除源代码控制历史记录? (本地项目文件夹)删除.svn和.local目录后,Delphi仍然不会导入。存储库中没有任何内容。这似乎是Delphi集成的一个问题。一些本地缓存的活动似乎并不依赖于存储库来获取信息。

更长的形式:我最近设置了Delphi XE3包含的subversion客户端和服务器。它在Windows上作为服务运行。根据svn-book使用sc完成设置。 我通过反复试验成功地弄明白了。在过去的几天里有一些错误。 在尝试清理我的源代码和存储库以进行全新安装时,我发现我需要从服务器中删除存储库并重新创建它们。我还想过,如果我从源中删除.svn目录,它将删除所有源代码控制的痕迹。这没用。所以我试图另外删除.local文件,它们中有一些版本历史记录。

当我加载项目组并切换到导入选项卡时,我仍然看到最近的评论显示我的初始提交。

此外,当我尝试导入一个对话框时,说我的一个大密钥.pas文件已经受版本控制。另一个文件,它说的dproj文件不受版本控制。当我用

检查回购时
svn ls 

创建了一些文件夹,但存储库中没有文件。

设置配置文件,以便我需要提供密码。它永远不会要求一个。我刚刚保留了默认安全性,因为我不需要太在意它。足以阻止错误。它在本地网络上。 SVN Import也不需要它。

我可以使用svn import手动添加文件。我使用svn:protocol前缀和svnserve.exe作为服务运行。身份验证是默认的由于某种原因它没有密码。它不应该这样做。

svnserve.conf has the following: (comments omitted for bevity)
[general]
anon-access = none
auth-access = write
password-db = D:\SVNRepos\conf\passwd
realm = Root
force-username-case = none

svn --Version says:
svn, version 1.7.5 (r1336830)
   compiled May 11 2012, 02:21:17

1 个答案:

答案 0 :(得分:0)

起初,SVN不是CVS。虽然CVS是具有许多问题的遗留系统,但SVN是一个现代的集中式版本控制系统(git粉丝可能不同意,但这是另一个主题)。

Subversion 1.7已过期且不再受支持。目前的版本是Subversion 1.9,与1.7相比有许多改进。 SVN 1.8仍然受支持。因此,您绝对应该将客户端和服务器升级到最新版本。

回到您的问题:您没有指定在Delphi XE3 IDE中获得的任何错误。你有没有?

当您在Subversion工作副本中svn add个文件时,您可以安排在下次运行svn commit时提交这些文件。因此,您可能没有将它们实际提交到存储库。

如果您的代码已经导入Subversion存储库,则必须存在。再次使用svn ls -r <URL>仔细检查。然后,您可以使用svn checkout <URL>签出工作副本。

BTW,.local文件与Subversion无关。这些似乎是IDE的一些项目文件,但我不确定。

如果您在Windows上遇到Subversion服务器设置问题,那么有些软件包可以帮助您。请参阅binary packages page