svn文件夹已经存在
A. svn import 文件已存在
修正一下829939的答案,先checkout出来没错,拿你的文件覆盖checkout出来的文件没错,但最后一个操作不是import,而是commit
B. svn出现黄色感叹号怎么办
svn 出现这个怎么办 <<<<<<< .mine
直接删除不太明智
需要使用SVN的合并功能,确认到底你的修改需要保留还是服务器的更新需要保留。
/////////////////////////////////////////
删除该文件。再update下来就可以了
//////////////////////////////////////////////
SVN中"<<<<<<< .mine“的问题
这个问题就是找到项目工程中本地与SVN上有冲突的文件,删除<<<<<<< .mine等信息;
融合SVN和本地文件,就好了;
//////////////////////////////////////
svn 出现黄色感叹号
这是有冲突了,冲突就是说你对某个文件进行了修改,别人也对这个文件进行了修改,别人抢在你提交之前先提交了,这时你再提交就会被提示发生冲突,而不允许你提交,防止你的提交覆盖了别人的修改。
要解决冲突,如果你确认你的修改是无效的,则用TSVN还原你的修改就行了;如果认为你的修改是正确的,别人的提交是无效的,那么用TSVN先标记为“解决冲突”,然后就可以提交了;如果你认为你的修改和别人的修改都有一部分是有效的,那么你就把别人的修改手动合并到你的修改中,然后使用TSVN标注为“解决冲突”,然后就可以提交了。
进入文件夹,寻找有黄色感叹号的文件,这些文件就是发生冲突的地方,根据实际情况处理冲突
////////////////////////////////////////////
SVN出现黄色感叹号,这提示你,你的本地副本与SVN服务器没有同步,产生了冲突。
解决办法就是,你在你本机中,删除这个目录,然后更新整个配置库即可解决。
//////////////////////////////////////////////
你的客户端是TortoiseSVN吗?如果是的话:
1、红色感叹号表示这个文件从服务器上下载下来以后,在本地被修改过。这时执行提交操作就可以了。
2、黄色感叹号表示这个文件在提交的时候发现存在冲突,也就是说有别人在你提交之前对这个文件的同一个版本进行了修改。这时你需要查看这个文件的历史日志,和修改了这个文件的人进行沟通,将两个人的修改内容合并,合并完成后标注为解决冲突,然后提交。
3、蓝色加号表示这个文件刚被执行了“增加”(add)操作,但还没有执行提交操作。这时执行提交操作就可以了。
/////////////////////////////////////////////
解决方法,在你本机中,删除这个目录,然后更新整个配置库即可解决。如果还出现黄色箭头,我的解决方法是,将文件夹删除,然后重新检出SVN上的版本,即可。
//////////////////////////////
如果是新手先更新下最新的,再修改提交你的文件。
也可以合并冲突,好象SVN右键菜单里有一个,忘了是什么了,好长时间没用过了。
/////////////////////////////
不是冲突,是修改标志,你要确定下,你本地是否是最新版本的文件,若不是,需先更新文件,然后在提交。若是最新版本的文件,那你应该清理一下你本地的文件,然后再提交。
/////////////////////////
红色感叹号——玩家修改的文件
蓝色问号——玩家添加的文件
黄色三角形——冲突文件
一般是删除黄色三角形。。。其次是红色感叹号(修改过的文件一般会自动合并基本不需求删除)
////////////////////////////
绿色对号代表正常
红色感叹号代表修改
黄色感叹号代表冲突
灰色对号代表只读文件夹
红色差号代表删除
黄色锁代表被锁定
蓝色加号代表新增
灰色减号代表被忽略
问号代表未修改
在选中项目工程文件夹右键,弹出菜单,点击菜单中的 SVN update ,就会将项目工程下的所有文件更新至最新版本。如果只更新一个文件或一个文件夹时,只需右键,单击 SVN update
注意:更新操作可能会因为版本冲突而失败,这是可以使用合并【Merge】或其他方法解决; 也可能因为锁定【Get Lock】而失败,这时需要先解锁【Release Lock】。
SVN使用不同的颜色表示更新结果
紫色:标识新增
棕色:标识删除
绿色:标识成功归并
亮红:标识冲
//////////////////////////////////////////
转自:http://www.xdowns.com
(执行任何操作前,必须先svn update,再执行svn commit)
1. svn文件夹显示 “黄色”感叹号,存在该文件,则表示SVN文件有冲突,进到最里层显示黄色感叹号的文件夹,有 Thumbs.db.r1451,Thumbs.db.r1225 类似的文件。
解决方法 : 直接删除类似Thumbs.db.r1451,Thumbs.db.r1225 的文件,然后右键“ svn commit ”.
2. svn文件夹显示 “红色”感叹号,存在该文件,则表示本地SVN文件与库(服务器)文件没有保持一致
解决方法:先 svn update ,再svn commit,再次执行svn update命令即可.
3. 执行"svn update"再执行“svn commit”命令都显示无更新或同步文件,但svn文件夹就是显示有冲突文件存在 .
解决方法:
a. 对应文件夹上右键-属性,点击“Subversion”菜单,把第一行显示的URL 地址选中 下来,随便找一没SVN目录的位置(如:桌面),右键“SVN checkout” ,在URL of repository(服务器svn地址)中粘贴刚下来的URL地址,Checkout directory(本地存放路径)使用默认路径不更改,点ok,服务器上最新SVN文件夹就下到本地了;
b. 删除之前显示有冲突的文件夹,再复制刚得到最新SVN文件夹并粘贴进原SVN目录位置,会提示“是否要移动只读文件...”,点确定就行了.
//////////////////////////////////////////
tortoiseSVN冲突的解决办法.星期四, 09/22/2011 - 09:46 — jason
解决tortoiseSVN冲突的具体思路如下:
SVN冲突的原因:你在本地的修改和版本库中的版本修改的地方重叠了,也就是说,你修改了某一行,你
的同事也修改了同一行。这个就需要你自己手工去解决了。当冲突发生时,要注意如果你修改的文件的内
容很多,你需要先备份一下你的本地文件。
tortiseSVN冲突的标志:在冲突的文件上会有一个三角标志,里面有一个感叹号。
tortiseSVN冲突的解决:首先找到冲突文件,右击会出现tortoiseSVN的选择列表。选择“编辑冲突”,
你会看到你的本地的版本跟远程版本库的版本的区别,下面还有一个合并的版本显示,红色标记就显示了
冲突的位置。
其次,找到冲突位置以后你需要选择是用你自己的版本,还是版本库里的版本来解决冲突。
再次,手动修改了冲突的地方以后,你需要右击出现tortoiseSVN的选择列表。然后选择“解决冲突”,
这样才能真正的解决掉冲突。
////////////////////////////////////////
svn的服务器的安装使用与客户端使用详解 标签: svn的服务器的安装使用 客户端使用详解 版本控制 2010-06-27 11:23 比较cvs与svn的使用便利性,我们项目组决定用svn,服务器用得是VisualSVNServer,建立起来特别方便!
第一步,下载软件subversion: http://subversion.apache.org/packages.html (以前我记得是在http://subversion.tigris.org/上面下载),这个页面在最下面windows栏目,列出了所有的windows版本,拿我自己来说,我建议大家用VisualSVN版本(http://www.visualsvn.com/ VisualSVNServer是windows的svn服务器,免费的,操作也是windows界面特简单).我这里下载的是Setup-Subversion-1.6.12.msi安装包,没有与apache集成的版本,只能用svn协议访问.客户端建议用TortoiseSVN(http://tortoisesvn.net/downloads)目前最新版本是:1.6.9,对应英文不好的用户建议下载中文语言包.如果用eclipse开发的用户,可以用eclipse的svn客户端插件:http://subclipse.tigris.org/ .
第二步,安装与配置Subversion服务器
1.安装服务Setup-Subversion-1.6.12.msi的软件到D:\Subversion\目录.安装完成后到cmd下面输入:svn.如何出现"使用“svn help”得到用法。"说明安装成功.
2.配置服务端:先创建库文件,在cmd下输入:svnadmin create d:\svnrepo.然后请启用访问库文件的服务,在cmd:svnserve -d -r d:\svnrepo.
修改对刚刚建立的库文件的服务权限,在D:\svnrepo\conf\svnserve.conf里面:" # anon-access = read" :如果去掉#号可以用非认证用户可以下载此库文件(即库里面的项目) ,我们为了安全此处不去修改.
" # auth-access = write":去掉#让认证用户才可以提交项目.这里建议去掉#号.
" # password-db = passwd":用户认证的用户名与密码配置文件,这里在:D:\svnrepo\conf\passwd里面配置,可以用记事本来修改,我添加了"u1=123"与"u2=456"两行,意思是添加了两个用户u1与u2,密码分别是123与456.
服务器的安装与配置就这么简单.
第三部配置svn客户端TortoiseSVN
1.安装,特简单,这里就不说了,直接next就是.安装后,在文件夹上单击右键,就会出现TortoiseSVN的集成菜单,不用像cvs要单独的软件来管理.
2.配置svn客户端:
如果是项目经理,可以把项目导入到库文件里面,在项目文件夹上单击右键,选"TortoiseSVN"->"Import...",这里注意路径,输入:"svn://192.168.10.220/"其中192.168.10.220是我svn服务器的地址.
客户端把项目有鼠标右键的菜单:CheckOut(检出)项目.修改项目后可以commit(提交),如果有服务器有人修改了项目,就update(更新). 这些比较简单我就不说了.
第四部分,版本冲突是怎么解决:(最重要)
我们当前的项目就是遇到这样的问题,我开始用什么merge(合并),没有搞定,还有什么锁定这类来解决冲突问题,不过我没有去用过.先说说目前的冲突情况:用户u1与用户u2更新的当前版本都是3.u1修改了里面的文件HelloWorld.java,u2也修改了文件HelloWorld.java,这时u1用户Commit提交的文件(版本4),然后u2提交HelloWorld.java文件时提示:"错误:"文件HelloWorld.java"已经过时".
这样的话,u2用户,先update更新一下文件,这时就会在HelloWorld.java旁边多出3个文件:HelloWorld.java.mine\HelloWorld.java.r3\HelloWorld.javar.r4 ;而且HelloWorld.java文件里面也多出了一些内容:
<<<<<<< .mine
内容...
========
内容...
>>>>>> .r4
在<<<<<<< .mine与========之间的内容是u2用户自己修改的内容,而========与
>>>>>> .r4之间的内容是u1用户(版本4)自己修改的内容.
HelloWorld.java.mine是u2用户自己的内容,HelloWorld.java.r3是服务器a上版本3的内容,HelloWorld.javar.r4 是服务器上版本4的内容.通过比较我们修改好HelloWorld.java的内容,在其文件上点击右键:"TortoiseSVN"->"Resolved..."(已解决的...),去掉冲突,HelloWorld.java.mine\HelloWorld.java.r3\HelloWorld.javar.r4 这三个文件就会不见了,然后就可以commit提交了.一切ok!!!
C. .svn文件夹是干什么的
.svn文件是subversion的版本控制信息文件 当某个目录处于subversion的版本控制时,在这个目录中就会.svn这个文件夹,这个.svn文件夹中的文件就是一些版本信息文件,供subversion使用,一般不要人为去改这些文件。
D. 如何彻底删除SVN中的文件和文件夹(附恢
这里假设SVN项目的目录为 /data/svn/project,我们想排除trunk/test.exe文件和trunk/notallowed/目录,操作步骤如下及执行的svn命令(在svn安装目录的bin目录下)如下:
# 首先将svn库整个导出
svnadmin mp /data/svn/project > project_original.mp
# 然后将project_original.mp文件里面不需要的文件进行排除并生成一个新的mp文件
type project_original.mp | svnmpfilter exclude trunk/test.exe trunk/notallowed > project_new.mp
# 接下来创建一个新的svn项目并将上面的mp文件导入到一个新的项目中
svnadmin create /data/svn/project_new
svnadmin load /data/svn/project_new < project_new.mp
最后将原来的project目录删除并将project_new修改成project即可。需要注意的是mp命令会将svn项目中的所有修改和历史记录都导出来,这样导出的mp文件会很大,而且导入的时间也比较长。
从服务器端彻底删除SVN版本库中部分文件夹或文件
若要彻底删除SVN版本库某一文件夹或文件,可采取这种方法(举例说明):
例:假设SVN库路径为E:/svn/project,库中的目录结构为
QA/Trunk
Software/Tags/test.exe
删除Software/Tags/目录下的test.exe文件
操作步骤为:
把SVN库mp出来
使用svnmpfilter过滤掉要删除的文件
新建一个SVN库
再将处理好的文件load到新的SVN库里
具体命令为:
>svnadmin mp E:/svn/project > aaa.mp
>type aaa.mp | svnmpfilter exclude /Software/Tags/test.exe > bbb.mp
>svnadmin create E:/svn/project_new
>svnadmin load E:/svn/project_new < bbb.mp
然后再将新建的project_new 重命名为project,以前的project可以移走,或是另取一个名称.(因为在TRAC中使用的SVN目录是project,用户所使用的SVN目录也是project)
此方法在SVN库里版本不多的情况下完全可以达到彻底删除SVN版本库某一文件夹或文件的效果,但是如果SVN库里的版本过多,在mp版本的时候会因存储空间不足,而无法mp版本.也就无法操作了.这时须另挂能满足其存储空间的硬盘操作.
SVN如何恢复已删除文件或文件夹
用TortoiseSVN:
1.在本地working 中,用TortoiseSVN->Show log查看版本库的历史记录。可以用search。
2.找到删除该文件或者文件夹的版本,在Log message里右键Revert the changes from this revision。
3.该文件或文件夹就被恢复到本地的working 中了。如果是误删除的,commit到Repository里就行了。
用Eclipse的Subclipse插件:
1.用Team->Show SVN Repository History查看版本库的历史记录。
2. 找到删除该文件或者文件夹的版本,右键Revert to XX version.
3.该文件或文件夹就被恢复到本地的working 中了。如果是误删除的,commit到Repository里就行了。
E. 怎样删除svn目录中的.svn文件夹
怎样删除svn目录中的.svn文件夹
要删除svn项目中的.svn目录,最正规的方式是用export命令,
将svn项目导出到一个新目录下,不会包含任何.svn目录。
如果不能使用export命令,在windows下有方便的办法删除:
Java代码
for /r projectdir %i in (.svn) do rd /s /q %i
Projectdir是svn项目,执行完命令后所有的.svn目录都会被删除
F. 如何彻底删除SVN中的文件和文件夹
方法/步骤
在SVN的服务端中,无法删除文件,只能删除文件夹。
那么,我们可以点击任意一个文件,单击右键->TortoiseSVN->版本库浏览器;
在弹出的URL界面中,填写正确的需要删除文件的URL路径,然后点击确定
找到那个需要删除的文件,点击右键,就会出现删除的按钮了,那么这样就可以删除那个SVN中的单个文件了。
G. SVN中的.svn文件夹中存放了版本库中文件的所有修改记录,如何删去历史记录,只留下当前版本的记录呢
如果你想获得纯净的当前版本,很简单用“导出”export功能就行了,如果客户端是TortoiseSVN的话,在你本地文件夹上点右键,选择TortiseSVN——导出,然后指定导出的文件夹存放在哪里,然后确定就行了,就会自动在取出当前版本存放到你指定的文件夹内
H. 如何删除SVN文件夹
使用svn进行版本控制,每个文件夹下都有.svn文件夹,有些项目在脱离svn版本控制之后,想删除项目中所有的.svn文件夹,可用下面的方法进行快速删除:
建立一个文本文件,取名为kill-svn-folders.reg(扩展名由txt改为reg),文件的内容如下:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN]
@="Delete SVN Folders"
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN\command]
@="cmd.exe /c \"TITLE Removing SVN Folders in %1 && COLOR 9A && FOR /r \"%1\" %%f IN (.svn) DO RD /s /q \"%%f\" \""
find . -type d -name ".svn"|xargs rm -rf
保存之后,双击这个reg文件。成功后,在每一个文件夹上点击右键都会有一个“Delete SVN Folders”的选项,点击之后,既可以删除这个文件下(包括子文件夹)所有的.svn文件夹。
删除完成后,为了避免误操作,不小心把正处于版本管理中的.svn文件夹删除,最好把刚才的注册信息删除。删除方法是,打开注册表(在运行中用regedit命令),找到[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN] ,把DeleteSVN这个项删除,即可。
eclipse编译去除svn文件夹
"Project-Properties-Java Build Path",右侧的面板中的"Source"选项卡,在Excluded中加入"**/.svn/**",就可以将所有的svn文件排除在编译路径中了。
I. 安装svn后 为什么会在每个目录下出现一个.svn的文件
那是存放SVN的控制信息用的,里面还有各历史版本的内容,所以占用磁盘空间会比较大
如果你要版本发布,不想有这个文件夹,那么用导出(export)功能代替检出(checkout)功能,就可以得到一个不含.svn文件夹的干净系统
J. 如何删除文件夹中的.svn文件夹
使用svn进行版本控制,每个文件夹下都有.svn文件夹,有些项目在脱离svn版本控制之后,想删除项目中所有的.svn文件夹,可用下面的方法进行快速删除: 建立一个文本文件,取名为kill-svn-folders.reg(扩展名由txt改为reg),文件的内容如下: Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN] @="Delete SVN Folders" [HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN\command] @="cmd.exe /c \"TITLE Removing SVN Folders in %1 && COLOR 9A && FOR /r \"%1\" %%f IN (.svn) DO RD /s /q \"%%f\" \"" find . -type d -name ".svn"|xargs rm -rf 保存之后,双击这个reg文件。成功后,在每一个文件夹上点击右键都会有一个“Delete SVN Folders”的选项,点击之后,既可以删除这个文件下(包括子文件夹)所有的.svn文件夹。 删除完成后,为了避免误操作,不小心把正处于版本管理中的.svn文件夹删除,最好把刚才的注册信息删除。删除方法是,打开注册表(在运行中用regedit命令),找到[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN] ,把DeleteSVN这个项删除,即可。 eclipse编译去除svn文件夹 "Project-Properties-Java Build Path",右侧的面板中的"Source"选项卡,在Excluded中加入"**/.svn/**",就可以将所有的svn文件排除在编译路径中了。