技术贴 本地代码与svn关联教程 svn upgrade问题解决
背景:
以前从SVN上下载了项目源码,可是SVN抽风了,死活不显示我修改了哪些代码
自己从别人机器上搞来了项目源码,没有svn版本控制,但是svn上面有这些源码
如上两种,我想关联一下,把我本地的代码和SVN服务器上的代码进行关联,以方便知晓我到底TM的动了多少代码
ok 步骤如下:
首先新建本地文件夹,将自己的未关联的项目源码放置到这里来
下载最新版的svn客户端软件,TortoiseSVN 1.8.1 ,然后右键将服务器上的源码项目检出到此路径
3.注意上一步的检出,一定是根目录,就是你的本地项目源码什么结构,svn的就怎么检出,达到利用服务器端的源码覆盖到本地的目的,但是svn很智能,你TM的改了什么源码,svn检出的就不会覆盖你的本地的源码,否则你就白玩了。
如果在第2步出现如下报错: (SVN Upgrade working copy)
Error: The working copy at 'C:\Users\yang\Desktop\ss\trunk\res\anim'
Error: is too old (format 10) to work with client version '1.8.8 (r1568071)' (expects
Error: format 31). You need to upgrade the working copy first.
但是你的svn如果右键没有upgrade的选项,就需要干掉所有项目源码的.svn隐藏文件夹,才可以继续关联操作。
删除svn隐藏文件夹办法很简单,网上有脚本,直接新建文本文档,然后改后缀名为xxx.bat即可,把项目源码路径文件夹拖到这个bat上面,自动执行清理。(切记,不要打开这个bat文件后再拖放,而是,直接把文件夹拖放到这个bat文件上即可,bat文件不需要开启)
------------------------本行不复制------------------------------
@echo off
if "%1"=="" (
goto error
) else (
goto action %1
)
:error
echo.
echo 必须输入要操作的文件夹路径参数,或拖动文件夹到此命令文件上。
echo.
pause
goto end
:action %1
echo --------------------------------------------------------------------------
echo 本次操作将删除 [%1] 文件夹下所有的svn标记,请慎重操作!
echo Y 清理文件夹
echo N 退出
echo ---------------------------------------------------------------------------
choice /c YN /m 请选择菜单(按ctrl+c或N退出):
if %errorlevel% equ 2 goto end
echo 正在清理文件夹:%1
echo 请稍候...
for /r %1 %%a in (.) do @if exist "%%a\.svn" rd /s /q "%%a\.svn"
echo 清理完毕!
echo 按任意键退出...
pause>echo.
:end
exit
------------------------本行不复制------------------------------
5.然后你就可以直接再次重新从步骤2开始做。
有问题联系小弟:
QQ 394263788
落雨 svn爱好者
2014年5月21日17:26:02
评论(2)