如何把项目导入到svn服务器上
一、通过SVN客户端向服务器上面添加项目
1、在服务器上面创建一个文件夹,文件夹以项目名称命名。
2、在合适目录下右击后,点击SVN Checkout,将你在服务器上面创建的目录checkout下来,然后将你在本地项目下的文件或目
录导入到此目录中,然后选中要提交的文件或目录,右击,选择“Add”,会在文件或目录上面显示了“+”号,然后右击,选择
“SVN Commit”,到此完成。
二、通过Eclipse向服务器上面添加项目
1、在Eclipse上右击项目,然后Team-->Share Project-->SVN,选择地址,选择“使用项目名称作为文件夹名”,往下一路到底,最后
会把项目添加上去,然后将项目目录下要提交的文件或目录,右击,直接选择“提交”即可。
如果你之前断开连接的时候没有删除SVN meta-information,那么重新连接的时候只要share project-》选择svn-》use project settings,点finish即可恢复连接。
如果删除了SVN meta-information,那么在share project 后,是否有你这个项目的repository location,若存在,直接选,没有的话,create一个,前提是项目是同一个,不然会出错。
1、选中项目右键到 team>share Project
2、进入到选择界面,选择svn,进入下一个界面
现在可以看到的界面是要选择共享资源的地址了,如果之前已经共享过就会保存在下面了,没有的话我们就自己创建新的资源位置,就是第一个选项。
3、服务器地址填写了,这里信息填写很重要,几个地方容易出错。
上图标注一定要注意,服务器的地址如下:https://服务器的ip地址/svn/svn创建的项目目录/,完成后点击下一步,再点击下一步,如下图:
点击完成就可以把项目上传到服务器了。
4、最后一步:上传完成后现在项目中的文件都没有提交到服务器中,最后一步就是提交项目。
现在就可以了,服务器上面就是一个网站的项目了。下面就是客户端checkout出来就可以了。
5、客户端用户通过import选择svn就可以了,如下图
下面就进入到服务器路径选择问题了,和刚刚将的一样了。
填好之后就可以checkout出来了,当然import出来之后还要根据自己的配置文件配置一些参数,比如jdk,tomcat等。
在Windows环境中,我们一般使用TortoiseSVN来搭建svn环境。在Mac环境下,由于Mac自带了svn的服务器端和客户端功能,所以我们可以在不装任何第三方软件的前提下使用svn功能,不过还需做一下简单的配置。
我们首先来看下,如何在Mac环境下搭建svn服务器端环境。
创建代码仓库,用来存储客户端所上传的代码
我先在/User/apple目录下新建一个svn目录,以后可以在svn目录下创建多个仓库目录
打开终端,创建一个mycode仓库,输入指令:svnadmin create /Users/apple/svn/mycode
指令执行成功后,会发现硬盘上多了个/Users/apple/svn/mycode目录,目录结构如下:
配置svn的用户权限
主要是修改/svn/mycode/conf目录下的三个文件
1打开svnserveconf,将下列配置项前面的#和空格都去掉
[java] view plain copy
# anon-access = read
# auth-access = write
# password-db = passwd
# authz-db = authz
anon-access = read代表匿名访问的时候是只读的,若改为anon-access = none代表禁止匿名访问,需要帐号密码才能访问
2打开passwd,在[users]下面添加帐号和密码,比如:
[java] view plain copy
[users]
mj = 123
jj = 456
帐号是mj,密码是123
3打开authz,配置用户组和权限
我们可以将在passwd里添加的用户分配到不同的用户组里,以后的话,就可以对不同用户组设置不同的权限,没有必要对每个用户进行单独设置权限。
在[groups]下面添加组名和用户名,多个用户之间用逗号(,)隔开
[java] view plain copy
[groups]
topgroup=mj,jj
说明mj和jj都是属于topgroup这个组的,接下来再进行权限配置。
使用[/]代表svn服务器中的所有资源库
[java] view plain copy
[/]
@topgroup = rw
上面的配置说明topgroup这个组中的所有用户对所有资源库都有读写(rw)权限,组名前面要用@
如果是用户名,不用加@,比如mj这个用户有读写权限
[java] view plain copy
[/]
mj = rw
至于其他精细的权限控制,可以参考authz文件中的其他内容
4启动svn服务器
前面配置了这么多,最关键还是看能否正常启动服务器,若启动不来,前面做再多工作也是徒劳。
在终端输入下列指令:svnserve -d -r /Users/apple/svn
或者输入:svnserve -d -r /Users/apple/svn/mycode
没有任何提示就说明启动成功了
5关闭svn服务器
如果你想要关闭svn服务器,最有效的办法是打开实用工具里面的“活动监视器”
综合上述,我们就可以轻松搭建svn服务器环境了
使用svn客户端功能
1从本地导入代码到服务器(第一次初始化导入)
在终端中输入
svn import /Users/apple/Documents/eclipse_workspace/weibo svn://localhost/mycode/weibo --username=mj --password=123 -m "初始化导入"
我解释下指令的意思:将/Users/apple/Documents/eclipse_workspace/weibo中的所有内容,上传到服务器mycode仓库的weibo目录下,后面双引号中的"初始化导入"是注释
2从服务器端下载代码到客户端本地
在终端中输入svn checkout svn://localhost/mycode --username=mj --password=123 /Users/apple/Documents/code
我解释下指令的意思:将服务器中mycode仓库的内容下载到/Users/apple/Documents/code目录中
3提交更改过的代码到服务器
在步骤2中已经将服务器端的代码都下载到/Users/apple/Documents/code目录中,现在修改下里面的一些代码,然后提交这些修改到服务器
1> 打开终端,先定位到/Users/apple/Documents/code目录,输入:cd/Users/apple/Documents/code
2> 输入提交指令:svn commit -m "修改了mainm文件"
这个指令会将/Users/apple/Documents/code下的所有修改都同步到服务器端,假如这次我只修改了main文件
可以看到终端的打印信息:
[java] view plain copy
Sending weibo/weibo/mainm
Transmitting file data
Committed revision 2
4更新服务器端的代码到客户端
这个应该是最简单的指令了,在终端中定位到客户端代码目录后,比如上面的/Users/apple/Documents/code目录,然后再输入指令:svn update
5至于svn的其他用法,可以在终端输入:svn help
这里列出一大堆svn指令,后面括号中的内容的一般代表着指令的简称,比如我们可以用svn ci代替svn commit,用svn co代替svn checkout
一、下载插件并安装
在 Eclipse 中使用 Subversion 来进行版本控制,需要下载插件 Subclipse ,下载网址是 http://subclipsetigrisorg ,需要根据 Eclipse 的版本下载相应版本的 Subclipse ,我们这里下载针对 Eclipse3x 的版本,当前最新版本为 subclipse-103zip 。
解压缩后,文件夹结构如下:
1JPG
在这里,我们将该文件夹拷贝到Eclipse的plugin目录下,并建立相应的目录结构,我们命名为subversion,最终的目录结构如下:
2JPG
同时,我们在eclipse/links目录下,新建subversionlink文件,文件内容只有一行:path=plugin/subversion,然后我们启动Eclipse,在“首选项->小组”中就可以看到Subversion的插件选项了。
3JPG
二、在Eclipse中操作
1、共享项目
在Eclipse中新建项目,然后在项目的右键菜单中选择“小组à共享项目”,
4JPG
在弹出的窗口中选择“SVN”,点击“下一步”,选择“使用已有资源库位置”,然后选择“下一步”直到完成,就可以将新项目导入到Subversion服务器的文件库中进行版本控制。
2、导出项目
点击“新建项目”,在窗口中选择“从SVN取出项目”,然后选择资源库位置,按照提示的操作进行直到完成,这样就可以从Subversion服务器中导出已进行版本控制的项目。
5JPG
取出后的项目目录如下:
6JPG
这时操作菜单如下,
7JPG
具体操作同Subversion客户端相似,这里就不做具体介绍了。
svn5800vt配置?
一,intel版本,带显示器,键盘鼠标
cpu+主板:i59400f+华硕b365m-plusgamings(京东1729元)
显卡:铭_rx5808g(京东939元)
SSD:西部数据sn550512g(京东599元)
内存:威刚ddr42666x2(京东2292=458元)
散热:乔思伯CR-1000(京东88元,4热管带灯)
机箱:银欣PS15B(京东219元,双U3)
电源:长城500w(京东249元)
显示器:戴尔u2417h(京东1299元)
机械键盘:ikbcc87(京东288元)
鼠标:罗技g102(京东109元)
全京东总价:5977元
二,AMD版本,带显示器,键鼠
cpu+主板套装:微星破击炮b450mMortarmax+3600(京东1749元)
显卡:铭_rx5808g(京东939元)
SSD:西部数据sn550512g(京东599元)
内存:十铨ddr43200x2(京东519元)
散热:原装散热
机箱:银欣PS15B(京东219元,双U3)
电源:长城500w(京东249元)
显示器:戴尔u2417h(京东1299元)
机械键盘:ikbcc87(京东288元)
鼠标:罗技g102(京东109元)
全京东总价:5970
其中cpu+主板,ssd如果走淘宝,可以控制总价在5800以内。
若办公需求:显示器推荐u2417h
若游戏需求:显示器推荐AOC144hz238寸24G2,(京东价1169元)
如何在eclipse中配置svn插件?
在Eclipse下安装SVN插件步骤:
1、打开Eclipse,点击菜单Help—>InstallNewSoftware
2、进入安装窗体后,点击安装窗体的Add按钮,然后在弹出的窗体中输入插件安装地址http://subclipsetigrisorg/update_18x
3、等待Eclipse读出安装内容后,勾选需要安装的内容,这里Subclipse是必须安装内容,SVNKit为可选内容(建议全部勾选)
4、点击安装窗体下方的Next按钮,进入下一页后继续点击Next,然后需要手动同意安装许可
5、安装过程中可能会出现安全警告,直接点击OK继续安装即可
6、安装完成后Eclipse会提示是否重启软件,点击Yes重启Eclipse就完成SVN插件的安装了
30怎么安装和使用svn?
SVN,即subversion,是一个开源的版本控制系统,版本控制器。是CVS的派生版。
它是一个C/S模式的软件,既有SVN服务器,也有SVN客户端。利用它可以将数据更新到最新版本,也可以找回历史版本,可以检查文件的修改历史。
1SVN的基本功能
根据文件修改的次数,自动增加版本库的版本号(库中所有的文件共用一个版本号),以便找回历史文件。
防止团队开发时,多人同时修改同一文件导致文件被覆盖或删除。
2软件的安装
服务器的安装(建议先安装服务器)
Setup-Subversion-1617msi
客户端的安装
TortoiseSVN-161621511-win32-svn-1617msi
装完客户端后,需要重启电脑。
安装完毕以后,在桌面右击鼠标,如果出现两个SVN相关的选项,说明SVN安装成功
3服务器的搭建
a创建一个空文件夹,作为SVN服务器的目录例如E:server文件夹的名字可以随便取
b进入该文件夹,右键,选择TortoiseSVN菜单,单击里面的Createrepositoryhere(创建版本库)。系统就会自动在该目录中生成一些文件和文件夹
c修改conf文件夹中的passwd配置文件,添加代码yangjun=123456即添加用户和设置密码
d修改conf文件夹中的svnserveconf主配置文件,去掉#password-db=passwd所在行的注释。(目的是让passwd配置文件生效)
这样,SVN服务器就搭建好了。
4服务器的启动
打开Windows的命令行,执行命令svnserveexe-d-rE:server
之后,SVN服务器的目录(版本库)E:server就可以被SVN客户端访问了。需要注意的是,命令行界面(DOS界面)不能关闭,否则服务就停止了。
5客户端的使用
a新建一个空文件夹作为SVN客户端的目录。例如F:user1
b进入该文件夹,右键,选择TortoiseSVN菜单,单击里面的Repo-browser(浏览版本库),会弹出URL的输入框,输入svn://127001或svn://localhost(前面的表示访问服务器的协议,后面的表示服务器所在主机的ip)。
c右键,选择SVNCheckout(检出),连接服务器(第一次连接服务器的时候,需要检出,以后就不需要了)。
以后,就把SVN客户端的目录F:user1作为自己项目文件的目录,通过SVN服务器进行文件的上传、修改、下载和删除等操作。
6SVN客户端的目录中的文件的图标及含义
问号表示该文件是刚引入的新文件,还未被SVN版本库识别
加号表示该文件已经添加至服务器的观察名单,但还未上传至服务器
对号表示该文件的版本和服务器中的版本是一样的
感叹号表示该文件的内容和服务器中的文件内容不一样,也就是从版本库同步之后,该文件又作了修改,但还未上传至服务器
锁表示该文件已被锁定
客户端目录中新添加的文件,由于还未被服务器识别,所以是以问号标识的。
选择问号标识的文件,右键,选择TortoiseSVN菜单,单击里面的Add选项,添加至服务器的观察名单。这时,问号就变成了加号。
选择加号标识的文件,右键,选择SVNCommit(提交),执行上传。会弹出一个对话框,输入用户名和密码即可。这时,加号就变成了对号。
把对号标识的文件内容进行更改后,对号就变成了感叹号。
选择感叹号标识的文件,右键,选择SVNCommit(提交),执行上传。之后,感叹号就变成了对号。
选择对号标识的文件,右键,选择TortoiseSVN菜单,单击里面的Getlock(锁定)。之后,对号就变成了锁。
选择锁标识的文件,右键,选择TortoiseSVN菜单,单击里面的Releaselock(解锁)。之后,锁就变成了对号。
7远程用户下载SVN服务器中的文件的步骤
这里在F盘新建一个空目录F:user2进行模拟。
进入该文件夹,右键,选择SVNCheckout(检出),连接服务器,输入正确的URL。就会自动把版本库中的所有文件下载到当前目录。
以后,如果版本库中的文件有改动,右键,选择SVNUpdate(更新),就可以和版本库中的文件同步。即当前客户端目录中的文件和版本库中的一致。
可以理解为用户第一次下载用SVNCheckout(检出),以后下载就用SVNUpdate(更新)。
8文件的删除
进入客户端目录F:user1,直接删除你想要删除的文件(这时,只是客户端的文件被删除)。
要想把服务器中的对应文件也删除,可以右键,选择SVNCommit(提交),弹出一个对话框,勾选刚才删除的文件,点击确定。之后服务器中的对应文件也被删除了。
服务器上的某个文件被删除后,当其他客户端的用户,执行SVNUpdate(更新)时,就会和服务器中的文件同步。(对应的文件也会被删除)
9历史版本的找回
如果误删除了服务器上的某个文件,想要找回该文件,可以恢复到历史版本。
在客户端目录F:user1中,右键,选择TortoiseSVN菜单,再单击Updatetorevision,弹出一个对话框,选择revision,输入你想恢复到的版本号(一般是上一个版本号),确定。
10历史版本间的差异对比
如果某一个文件被多个人依次更新修改过,之后,大家也都同步了服务器的版本库。发现,某一个文件被别人更新过,可以通过以下方法查看差异。
选择被更新的文件,右键,选择TortoiseSVN菜单,再单击Diffwithpreviousversion,会对比显示出该文件的历史版本和当前版本的差异。
左边的是历史版本,右边的是当前版本。
11冲突的解决
冲突指定的是,当多个人同时对同一个文件进行修改后,某一个用户(user1)先进行了提交(更新了服务器的版本库),其他用户(user2)后进行的提交,此时,就会出现文件过时而无法提交的现象(因为user2修改的文件版本不是最新版本,所以会提示文件过时,导致无法提交)。
冲突的产生是SVN版本控制器的一个保护措施,可以有效防止客户端中低版本的文件覆盖服务器中高版本的文件。
如何解决冲突?
选择出现冲突的文件,右键,选择TortoiseSVN菜单,再单击Editconflicts,会对比显示出该文件的服务器版本和自身版本的差异。
左边的是服务器的版本,右边的是自身版本。
冲突的解决,是靠人为手动来解决的,一般是冲突相关的多个用户之间商量后,决定以某个文件版本为主。比如,经过大家商量后,决定以服务器中的版本为主。接下来,就应该这样操作:在左边区域(服务器的版本),右键,选择usethiswholefile或者在产生冲突的行,右键,选择usethistextblock来各取所长,依次处理完所有有冲突的行,之后,点击保存,关闭窗口。
然后,选择出现冲突的文件,右键,选择TortoiseSVN菜单,再单击Resolved(已解决)。告诉SVN冲突经大家商量后,已经解决。
这时,该文件就可以正常提交了。选择它,右键,选择SVNCommit(提交),上传至服务器。最后可以看到文件的标识变为对号。
12将SVN服务器安装至系统服务
前面我们说过,SVN客户端操作的过程中,开启SVN服务的命令行窗口不可以关闭,否则,SVN服务也会终止,导致客户端无法连接服务器。
这里,我们可以把SVN服务添加到系统的自启动服务当中。操作方法如下:
重新打开cmd命令行,在命令行中执行以下命令
sccreatesvnservebinpath="D:ProgramFilesSubversionbinsvnserveexe--service--rootE:server"
如果提示“CreateService成功”,则表明创建系统服务成功。此时,添加的服务名为svnserve,状态默认是关闭的,启动方式为手动。
之后,我们就可以利用Windows系统自带的服务管理界面进行管理,比如开启SVN服务,设置为自启动等。而不用通过命令行来控制了。
删除系统服务scdeletesvnserve(如果删除了系统的svnserve服务,我们就又只能通过命令行来开启SVN服务,且不能关闭命令行窗口)
13取消记住的用户名和密码
如果在进行身份验证的时候,我们勾选了记住用户名和密码。那么,当我们需要使用别的用户名进行操作时,便会出现无法更改账号的情况,这时,我们可以取消记住的用户名和密码。下次进行身份验证的时候,我们就可以选择输入其他的用户名和密码。
取消记住用户名和密码的方法:
删除身份验证时保存在系统中的相关文件(auth文件夹)即可。进入C:UsersAdministratorAppDataRoamingSubversion这个目录,删除里面的auth文件夹。
14权限管理
SVN的默认权限设定是匿名用户也可以连接到服务器,访问服务器中的文件,还可以进行下载。也就是说,任何一个人只要知道了SVN服务器所在主机的ip,就可以下载版本库中的所有文件。这种默认的权限设定是不安全的。因此,我们有必要进行SVN服务器的权限管理。
打开SVN服务器的主配置文件E:serverconfsvnserveconf,将这行代码
#anon-access=read
修改成
anon-access=none
保存即可。
之后,匿名用户对服务器就没有读的权限。也就是说,用户在浏览版本库和下载文件时,需要输入用户名和密码。
15权限分配
权限分配指的是,给不同的用户分配不同的权限,比如,需要设定某些用户(管理员)对所有的文件都有读和写的权限,其他用户(普通用户)只有读的权限或者只对服务器目录中的某个文件夹有读和写的权限时,就可以用到权限分配。
这时,我们需要修改服务器配置文件目录(E:serverconf)中的三个配置文件:svnserveconf、passwd和authz。
详细操作方法可自行查阅相关文档·
如何在myeclipse上配置svn插件?
在myeclipse中安装svn图解:
步骤如下:
1找到MyEclipse10在安装目录下的dropins文件夹
2打开dropins文件夹,新建一个svn文件夹
3解压缩下载好的压缩包
4把features和plugins文件夹拷贝到dropins文件夹下的SVN文件夹中
5这样就可以在MyEclipse10中安装好SVN插件了。
方法/步骤
1
下载支持Eclipse的SVN插件,在百度搜索SVN_For_Eclipse,我下载的如下:
2
解压下载的压缩包,看看里面都有些什么。
3
找
到MyEclipse的安装目录下的MyPlugin目录,我的是C:\Users\用户名\AppData\Local\Genuitec
\myPlugin,在里面新建文件夹SVN,把SVN_For_Eclipse下载的解压文件中的features与
plugins文件夹复制到SVN里面。
4
在MyEclipse安装目录下找到dropins文件,在里面新建svnlink,内容是:path=C:/Users/用户名/AppData/Local/Genuitec/myPlugin/SVN,然后保存即可。
path后面的路径及上面新建的SVN文件夹路径。
5
重
启MyEclipse,依次点击"Windows"->"Show View"->"Other",在“Show
View”弹出窗中看见SVN目录即安装成功。点击目录下面的SVN资源库,MyEclipse下面就显示"SVN资源库",就可以开始工作了。这样
SVN插件的安装就OK了,还等什么,试试从SVN服务器下载代码吧。
http://jingyanbaiducom/article/63acb44af8bc2861fcc17e9dhtml
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://19216811/pro/domain
2、往版本库中添加新的文件
svn add file
例如:svn add testphp(添加testphp)
3、删除文件
svn delete path -m “delete test fle“
例如:svn delete svn://19216811/pro/domain/testphp -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固有的问题,即projectpbxproj文件的提交冲突问题。
projectpbxproj文件里面包含了构建过程所需的所有文件,如果你在项目目录下增加了新文件,比如没有通过Xcode,该文件就不在projectpbxproj文件中,就不会生成到app中。同理,如果你从SVN中更新到其他项目成员增加的文件,而没有更新projectpbxproj文件(或者该成员根本就没有提交这个文件),则也会出现相同的现象。
如果项目成员提交了新的projectpbxproj文件,你这边没有在项目中增加新的文件,直接svn update就可以了。
7、Xcode中更新代码后项目文件打不开
若选择更新整个项目经常会出现冲突问题,尤其是projectpbxproj文件。此文件包含了构建过程所需的所有文件,如果在项目目录下增加了新文件,但没有通过Xcode,
该文件就不在projectpbxproj文件中,就不会生成到app中。同理,如果从SVN中更新到其他项目成员增加的文件,
而没有更新projectpbxproj文件(或者该成员根本就没有提交这个文件),则也会出现相同的现象。这一文件冲突将直接导致项目文件打不开。
解决更新代码后打不开项目文件方法:
当项目文件如tobaccoxcodeproj打不开时可以右键选择'显示包内容',会看到有三个文件,projectpbxproj/usermodelv3/userpbxuser。
其中projectpbxproj有三个版本,和解决普通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)
0条评论