日期:2014-05-20  浏览次数:21007 次

如何转移svn的工程到另一个Svn中
假如有一个工程project,存在在A机器,提交到版本控制器svn1中,假如URL为svn:XXX1;现在我把该project拷贝到B机器(A和B不在同一局域网),需要把project提交到另一个svn2中,URL为:svn:XXX2,开发环境:eclipse+subclipse。但是在B机器上提交project时老时弹出错误说无法连接到svn1中,怀疑是从A机器拷贝的project中的svn文件夹中有svn1的配置信息,如何修改?

------解决方案--------------------
帮顶!
------解决方案--------------------
先add 再commit 你是这样做的吗
------解决方案--------------------
客户端 relocate 到新地址。
------解决方案--------------------
你的svn安得有问题,或者是你的3690端口没打开,这时你只能用file:///提交,如果有apeche还可以用http://提交。解决不能用svn://访问的方法如下:
subversion服务器端
1. 下载
地址:http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91。在这里下载.msi的文件,如果下载别的可能要出错误(我下载的.zip结果没有bin目录等,导致svn://localhost/数据仓库名 无法访问,并且不能导入,只能用file:///。。。来访问)
Ps:MSI文件是Windows Installer的数据包,它实际上是一个数据库,包含安装一种产品所需要的信息和在很多安装情形下安装(和卸载)程序所需的指令和数据。它还包含有关安装过程本身的信息:如安装序列、目标文件夹路径、系统依赖项、安装选项和控制安装过程的属性。 安装包,微软对应installer3推出的安装文件格式。
2. 问题:svn服务器无法启动
安装svnservice在Windows NT中(包括Windows XP, Windows 2000, Windows 2003 Server)本身包含了一个安装服务的工具,叫做"Service Control",也就是sc.exe。
例如我的Subversion安装在"D:\Subversion",版本库在"D:\svnroot",而我希望对应的Subversion服务名为svnservice,安装这个svn服务的命令就可以这样写:
sc create svnservice
binpath= "D:\Subversion\bin\svnserve.exe --service -r D:\svnroot"
displayname= "SVNService"
depend= Tcpip

请注意,因为便于察看,上面的命令分为多行,但在实际执行时应该在一行里。另外,在以前启动svnserve时会使用"-d"选项,也就是守护进程模式,在这里不能使用,会导致服务无法启动。同样,"-i"和"-t"选项也不能使用。
在命令行窗口执行完这个命令之后,服务还没有启动,你可以继续运行"net start svnservice"启动这个服务,然后使用"net stop svnservice"停止服务。
另外还有两点需要小心处理。首先,如果路径中包括空格,一定要用“\”处理“"”号,例如上面的例子中如果svnserve.exe在“c:\program files\subversion\”中,则命令应该写为“binpath= "\"c:\program files\subversion\bin\svnserve.exe\"”(“”中的内容),整个命令如下,红色部分是改变部分:
sc create svnservice
binpath= "\"D:\program files\Subversion\bin\svnserve.exe\" --service -r D:\svnroot"
displayname= "SVNService"
depend= Tcpip

其次,sc对选项的格式还有要求,例如“depend= Tcpip”不能写为“depend = Tcpip”或“depend=Tcpip”,也就是“=”前不能有空各,而后面必须有空格。
如果服务安装的有问题,你可能需要删除服务。要删除前面添加的服务,只需要运行"sc delete svnservice","svnservice"就是我们创建服务时使用的名字。
配置服务是自动启动默认情况下安装的服务不会随Windows的启动而启动,为了使svn服务能够随Windows启动而启动,需要修改一下"sc create"命令(首先要删除),增加"start= auto"选项:
sc create svnservice
binpath= "D:\Subversion\bin\svnserve.exe --service -r D:\svnroot"
displayname= "SVNService"
depend= Tcpip
start= auto

当然你也可以使用图形化的工具修改服务的属性,你可以在“开始->运行...”中执行"services.msc",然后在界面中修改。
Ps:也许在你安装的过程中可能还会出现问题,但是我要说,只要你是下载的正确的版本,按照我的方法解决问题就一定不会再出现其他问题。

------解决方案--------------------
1.从svn1中导出不带版本信息的工程内容
2.导入到svn2中
------解决方案--------------------
VssMigrate
------解决方案--------------------
探讨
1.从svn1中导出不带版本信息的工程内容
2.导入到svn2中

------解决方案--------------------
很简单,在eclipse里,将鼠标放在这个项目上,点鼠标右键,Team->切换至,然后出来一个窗口,就将已有的url改成现在url,点击OK,就搞定了
------解决方案--------------------
1.Team->Disconnect 选Also delete the SVN....
2.Team->share project->选SVN2的URL
------解决方案--------------------
复制过去后,搜索该文件夹 .svn 将所有文件夹为 .svn 的都删掉,就能清除原来的svn信息,没有这些信息才能提交到另一个svn,不然会重复