svn操作的坑

1,如果本地文件误删了,服务器上有,导入方法:终端输入(注意空格)

svn checkout svn://192.168.1.162/zuozuo空--username=yangqinglong空--password=yangqinglong /Users/njfifthcity/Desktop/zuozuo2

2,svn上传期间,如果意外中断,被操作的文件会被自动加锁,解决方法:

最上方finder位置的导航栏,找到clean,可以自动解锁,然后继续操作。

其他的坑(度娘说的):

1、Xcode4中苹果有自带的SVN软件------>Organizer------>Repositories

2、SVN checkout到本地后,删除本地file,对服务器有影响吗? 不会影响服务器,当你执行“svn update”时会zai再次被自动下载;当删除后再执行“svn commit”就会在服务器上也对应删除。 

3、连接服务器点击file-》repositories-》点击坐下边的“+”-》然后名字及svn服务器的地址,还有type选中subversion然后next等等了。

4、Xcode4下,SVN中常用命令 Commit   提交 checkout   将服务器上下载到本地(我个正在使用的电脑) update  更新文件 File------->SourceController------->update 

图片中第3个按钮,是视图对比按钮. 

5、SVN中用法详解和注意事项 ①提交自己的代码 SVN更新的原则是要及时更新,及时提交。当完成了一个小功能,能够通过编译并且并且自己测试之后,尽量早的提交,这样也保存了历史版本,必要时候可以回滚;在开始一天的工作之前,最后update一下项目。 ②保持原子提交(不要不经意间修改并提交了别人的文件) 仅提交你修改的部分,最好不要一下子将整个项目提交; 当完成一个功能或文件后,最好提交。我就遇到完成某个功能后,没有提交,后来又做了更改,结果代码出现bug,无法恢复到正常时的代码。 ③不要提交自动生成的文件 VisualStudio等开发工具在生成过程中会产生很多自动文件,如.suo等配置文件,Debug,Release,Obj等编译文件,以及其他的一些自动生成,同编译代码无关的文件,这些文件在提交的时候不应该签入,如果不小心签入了,需要从仓库中删除。 ④不要提交不能通过编译的代码 代码在提交之前,首先要确认自己能够在本地编译。进行SVN提交更新时最好是代码在提交前已经通过自己的测试。 SVN中常用命令详解 1、将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/domain 2、往版本库中添加新的文件 svn add file 例如:svn add test.php(添加test.php) 3、删除文件 svn delete path -m “delete test fle“ 例如:svn delete svn://192.168.1.1/pro/domain/test.php -m “delete testfile” 4、查看日志 svn log path 5、比较差异 svn diff path(将修改的文件与基础版本比较) 6、将两个版本之间的差异合并到当前文件 svn merge -r m:n path SVN使用方法 更新(update),经常地update没有坏处,特别是多人项目中。如果每次提交(commit)前不进行更新(update)的到最新的版本的话,svn会提示当前的拷贝过期,需要更新。  提交(commit),一定要写上这次提交的内容的摘要,便于以后查阅。 将文件checkout到本地目录  svn checkout path(path是服务器上的目录) svn update命令自动用服务器上的版本替换本地版本控制的文件 

6、Xcode中使用SVN问题以及提交解决冲突问题 Xcode的SVN功能,和Eclipse中的subclipse或者windows下的tortoiseSVN比较起来功能还差很多。 我是索性不用的,直接用命令行。我看有的朋友是用subclipse,其实也挺好,不过,为了使用SVN功能要单独开一个耗费资源的Eclipse。 

但是,不论使用什么SVN工具,都会遇到Xcode固有的问题,即project.pbxproj文件的提交冲突问题。 

project.pbxproj文件里面包含了构建过程所需的所有文件,如果你在项目目录下增加了新文件,比如没有通过Xcode,该文件就不在project.pbxproj文件中,就不会生成到app中。同理,如果你从SVN中更新到其他项目成员增加的文件,而没有更新project.pbxproj文件(或者该成员根本就没有提交这个文件),则也会出现相同的现象。 

如果项目成员提交了新的project.pbxproj文件,你这边没有在项目中增加新的文件,直接svn update就可以了。 

7、Xcode中更新代码后项目文件打不开 

若选择更新整个项目经常会出现冲突问题,尤其是project.pbxproj文件。此文件包含了构建过程所需的所有文件,如果在项目目录下增加了新文件,但没有通过Xcode, 该文件就不在project.pbxproj文件中,就不会生成到app中。同理,如果从SVN中更新到其他项目成员增加的文件, 而没有更新project.pbxproj文件(或者该成员根本就没有提交这个文件),则也会出现相同的现象。这一文件冲突将直接导致项目文件打不开。 

解决更新代码后打不开项目文件方法: 当项目文件如tobacco.xcodeproj打不开时可以右键选择‘显示包内容‘,会看到有三个文件,project.pbxproj/user.modelv3/user.pbxuser。 其中project.pbxproj有三个版本,和解决普通svn文件冲突一样解决冲突即可。

8、SVN 更新 提交 合并 区别 

当本地文件没有改动,服务器文件改动的时候,更新会从服务器取文件覆盖当前文件 当本地文件有改动,服务器文件没改动的话,不会更新此文件 当本地文件有改动,服务器文件有改动的话,如果改动的部分不冲突,就会合并文件到本地,如果有冲突的话,会提示文件冲突,需要自己手动修改以后上传到服务器。 最后一个讲解合并: 服务器和本地的同一个文件(所谓同一个文件应该就是SVN相对路径相同,文件名相同的文件,这个由SVN留在本地的信息决定)已经修改,且修改的部分不重合,不重叠 当满足上面的条件的时候再更新,SVN就会自动合并 SVN的奥妙之处就在于别人提交了修改后的文件,你再提交你的话,他是不允许你提交滴。。。 >>>> <<< 里面标记的是冲突的区域,把冲突区域删除掉为什么还不能提交  

解决办法1: 删掉的话还是没有解决冲突,文件后面还会有几个文件名相同,但是后缀不同的文件 如果你不知道用SVN解决冲突的话,最简单的办法是这样的 把这个文件改名字,然后在文件所在目录更新,这样就会把服务器文件下下来,然后把自己修改的部分添加到更新的文件里面,这样就可以提交了 解决办法2: 在文件上面点击右键,到SVN的菜单,应该有编辑冲突的按钮,选择就会出现一个窗口,一边是服务器版本,一边是自己修改的版本 。 

9、xcode自带svn的使用 1、代码中 某文件后面有 “M” 标记,表示该文件已被修改,需要 commit.       (右键该文件 -> source control -> commit selected file...) 2、代码中 某文件后面有 “A” 标记,表示该文件是新添加的,已受SVN管理,需要 commit.       (右键该文件 -> source control -> commit selected file...) 3、代码中 某文件后面有 “?” 标记,表示该文件是新添加的,并且脱离了SVN的管理,首先需要add,然后 commit.       (右键该文件 -> source control -> Add,这样该文件的标记就变为 “A”,然后在 commit)
时间: 2024-10-10 09:30:45

svn操作的坑的相关文章

SVN操作手册(part3)——SVN操作

SVN操作手册 3.SVN操作 3.1 SVN服务端操作 3.1.1 创建仓库 启动VisualSVN Server Manager,如图: ① 右键Repositories,选择create new repository,如图: ②在输入框中输入产库名称,如:137(注:命名时尽量使用英文和数字,不要使用汉字与空格),点击"下一步",进入下一步 ③选择仓库初始类型: Empty repository 代表空仓库,选择single-project repository版本库中会默认建立

获取 SharpSvn 执行 svn 操作的实时日志

1 获取 SharpSvn 操作日志的方式 之前一篇随笔(使用 SharpSvn 执行 svn 操作)讲到可以通过声称一个绑定到一个 SvnClient 对象的 SvnClientReport 对象.为了说明方便,将对应的程序片段再次写在下面, using (SvnClient client = new SvnClient()) { StringBuilder strBuilder = new StringBuilder(); SvnClientReporter reporter = new S

SVN 操作报错 “Previous operation has not finished; run &#39;cleanup&#39; if it was interrupted“

今天在 通过 SVN 合并代码的时候报了如下的错误 "Previous operation has not finished; run 'cleanup' if it was interrupted",无论尝试什么操作都是报相同的错误,遂在网上找了资料查了一下,问题解决了,记录一下问题解决的方法. 1.下载  sqlite 内嵌数据库管理工具 sqlite3.exe 2.将sqlite3.exe 放置于SVN 项目的.svn 文件内,如图 3.删除 sqlite 数据库中的操作队列表

使用 SharpSvn 执行 svn 操作的Demo

1. SharpSvn简介 SharpSvn.dll 是为.Net 2.0-4.0+ 应用提供的 Subversion Client API,更多详细介绍请见 https://sharpsvn.open.collab.net/. 2. 鉴权操作 SharpSvn 通过 Authentication 接口提供相关的鉴权操作,例如用户名和密码获取.证书确认等.Authentication 接口分别为这些操作定义了相关的事件句柄(Handlers).当需要某些鉴权操作时,SharpSvn 就会去调用相

Eclipse中的SVN操作

--------------------siwuxie095 Eclipse 中的 SVN 操作 (一)发布项目到 SVN 服务器(Add) 如:Jack 把项目 HelloWorld 发布到 SVN 服务器上 1.选择项目名,右键->Team->Share Project 2.选择版本控制工具:SVN 3.创建仓库位置 3.输入仓库位置(路径) 4.输入文件夹名 5.输入用户名和密码,注意:由于这里是模拟,所以不勾选保存密码 (可能要多输入几次) 6.效果:项目上出现星号图标,各级文件夹和文

SVN操作异常解决日志

1 svn locked某个目录-无法进行更新 产生这种情况大多是因为上次svn命令执行失败且被锁定了.如果cleanup没有效果的话只好手动删除锁定文件. 在命令提示符下cd 到svn项目出现问题的文件所在目录下,然后执行如下命令 del lock /q/s 就把锁删掉了.如图所示: 2.svn remains in conflict错误解决 情形:当有人在对某文件进行修改,假设为A文件,并提交至svn服务器,如果此时你正在修改A页面,并对其进行更新.会出现一些残余文件信息.如果在未删除这些文

Eclipse对svn操作切换账号或更换svn地址方法

1. 切换账号,主要是删除配置文件达到重新更新svn的时候,弹出框让重新输入新的svn用户名和密码. 1.通过删除SVN客户端的账号配置文件   1)查看你的Eclipse中使用的是什么SVN Interface(中文:svn接口)windows > preference > Team > SVN     在右边的设置面板中可以看到SVN Interface或中文的svn接口一栏,Client的选项框中显示的就是你当前用的svn接口 2)如果是用的JavaHL, 找到以下目录     C

coding的svn服务踩坑记

https://www.hojun.cn/https://www.hojun.cn/https://www.hojun.cn/https://www.hojun.cn/https://www.hojun.cn/https://www.hojun.cn/https://www.hojun.cn/https://www.hojun.cn/https://www.hojun.cn/https://www.hojun.cn/ 前言 Q:咳咳,为啥会用到Coding的SVN?A:博主电脑上已经配好一个co

子查询更新操作的坑

子查询我相信大部分人都写过,但是昨天遇到一个比较坑的问题,由于有较好的备份,很短时间就恢复了误操作数据,但是这个问题值得分享.首先建立如下测试表:CREATE TABLE course (student_id INT(11),course VARCHAR(20));INSERT INTO course VALUES ('1', '测试1');INSERT INTO course VALUES ('2', '测试2');INSERT INTO course VALUES ('3', '测试3');