svn 详解
1、检出
svncohttp://路径(目录或文件的全路径) [本地目录全路径]
--username 用户名 --password 密码svncosvn://路径(目录或文件的全路径) [本地目录全路径]--username 用户名 --password 密码
svncheckouthttp://路径(目录或文件的全路径) [本地目录全路径] --username 用户名
svncheckoutsvn://路径(目录或文件的全路径) [本地目录全路径]--username 用户名
注:如果不带--password 参数传输密码的话,会提示输入密码,建议不要用明文的--password 选项。
其中 username 与 password前是两个短线,不是一个。
不指定本地目录全路径,则检出到当前目录下。
例子:
svn co svn://localhost/测试工具/home/testtools--usernamewzhnsc
svn co http://localhost/test/testapp--usernamewzhnsc
svn checkout svn://localhost/测试工具/home/testtools--usernamewzhnsc
svncheckouthttp://localhost/test/testapp--usernamewzhnsc
2 、 导出(导出一个干净的不带svn文件夹的目录树 )
svnexport[-r 版本号]http://路径(目录或文件的全路径) [本地目录全路径] --username 用户名
svnexport[-r 版本号]svn://路径(目录或文件的全路径) [本地目录全路径] --username 用户名
svnexport本地检出的(即带有svn文件夹的)目录全路径要导出的本地目录全路径
注:第一种从版本库导出干净工作目录树的形式是指定URL,
如果指定了修订版本号,会导出相应的版本,
如果没有指定修订版本,则会导出最新的,导出到指定位置。
如果省略本地目录全路径,URL的最后一部分会作为本地目录的名字。
第二种形式是指定 本地检出的目录全路径 到 要导出的本地目录全路径,所有的本地修改将会保留,
但是不在版本控制下(即没提交的新文件,因为svn文件夹里没有与之相关的信息记录)的文件不会拷贝。
例子:
svn export svn://localhost/测试工具/home/testtools--usernamewzhnsc
svn export svn://localhost/test/testapp--usernamewzhnsc
svn export /home/testapp/home/testtools
3、添加新文件
svn add 文件名
注:告诉SVN服务器要添加文件了,还要用svn commint -m真实的上传上去!
例子:
svn addtestphp<-添加testphp
svn commit -m“添加我的测试用testphp“ testphp
svn addphp<-添加当前目录下所有的php文件
svn commit -m“添加我的测试用全部php文件“ php
4、提交
svn commit -m “提交备注信息文本“ [-N] [--no-unlock] 文件名
svn ci -m “提交备注信息文本“ [-N] [--no-unlock] 文件名
必须带上-m参数,参数可以为空,但是必须写上-m
例子:
svn commit -m“提交当前目录下的全部在版本控制下的文件“ <-注意这个表示全部文件
svn commit -m“提交我的测试用testphp“ testphp
svn commit -m“提交我的测试用testphp“-N --no-unlocktestphp<-保持锁就用–no-unlock开关
svn ci -m“提交当前目录下的全部在版本控制下的文件“ <-注意这个表示全部文件
svn ci -m“提交我的测试用testphp“ testphp
svn ci -m“提交我的测试用testphp“-N --no-unlocktestphp<-保持锁就用–no-unlock开关
5、更新文件
svn update
svn update -r 修正版本 文件名
svn update 文件名
例子:
svn update<- 后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本
svn update -r200 testcpp<-将版本库中的文件 testcpp 还原到修正版本(revision)200
svn updatetestphp<-更新与版本库同步。
提交的时候提示过期冲突,需要先 update 修改文件,
然后清除svn resolved,最后再提交commit。
6、删除文件
svn delete svn://路径(目录或文件的全路径) -m “删除备注信息文本”
推荐如下操作:
svn delete文件名
svn ci -m“删除备注信息文本”
例子:
svn delete svn://localhost/testapp/testphp-m“删除测试文件testphp”
推荐如下操作:
svn deletetestphp
svn ci -m“删除测试文件testphp”
7、加锁/解锁
svn lock -m “加锁备注信息文本“ [--force] 文件名
svn unlock 文件名
例子:
svn lock -m“锁信测试用testphp文件“ testphp
svn unlocktestphp
8、比较差异
svn diff 文件名
svn diff -r 修正版本号m:修正版本号n 文件名
例子:
svn difftestphp<-将修改的文件与基础版本比较
svn diff -r200:201 testphp<-对 修正版本号200 和 修正版本号201 比较差异
9、查看文件或者目录状态
svn st目录路径/名
svn status 目录路径/名<-目录下的文件和子目录的状态,正常状态不显示
:不在svn的控制中;M:内容被修改;C:发生冲突;
A:预定加入到版本库;K:被锁定
svn-v 目录路径/名
svn status -v 目录路径/名<-显示文件和子目录状态
第一列保持相同,第二列显示工作版本号,
第三和第四列显示最后一次修改的版本号和修改人
注:svn status、svn diff和 svn revert这三条命令在没有网络的情况下也可以执行的,
原因是svn在本地的svn中保留了本地版本的原始拷贝。
10、查看日志
svn log 文件名
例子:
svn logtestphp<-显示这个文件的所有修改记录,及其版本号的变化
11、查看文件详细信息
svn info 文件名
例子:
svn infotestphp
12、SVN 帮助
svn help<-全部功能选项
svn help ci<- 具体功能的说明
13、查看版本库下的文件和目录列表
svn list svn://路径(目录或文件的全路径)
svn ls svn://路径(目录或文件的全路径)
例子:
svn list svn://localhost/test
svn ls svn://localhost/test<-显示svn://localhost/test目录下的所有属于版本库的文件和目录
14、创建纳入版本控制下的新目录
svn mkdir 目录名
svn mkdir -m "新增目录备注文本" http://目录全路径
例子:
svn mkdirnewdir
svn mkdir -m"Making a new dir"svn://localhost/test/newdir
注:添加完子目录后,一定要回到根目录更新一下,不然在该目录下提交文件会提示“提交失败”
svn update
注:如果手工在checkout出来的目录里创建了一个新文件夹newsubdir,
再用svn mkdirnewsubdir命令后,SVN会提示:
svn: 尝试用 “svn add”或 “svn add --non-recursive”代替?
svn: 无法创建目录“hello”: 文件已经存在
此时,用如下命令解决:
svn add --non-recursivenewsubdir
在进入这个newsubdir文件夹,用ls -a查看它下面的全部目录与文件,会发现多了:svn目录
再用 svn mkdir -m "添hello功能模块文件" svn://localhost/test/newdir/newsubdir 命令,
SVN提示:
svn: File already exists: filesystem '/data/svnroot/test/db', transaction '4541-1',
path '/newdir/newsubdir '
15、恢复本地修改
svn revert [--recursive] 文件名
注意: 本子命令不会存取网络,并且会解除冲突的状况。但是它不会恢复被删除的目录。
例子:
svn revertfooc<-丢弃对一个文件的修改
svn revert --recursive<-恢复一整个目录的文件, 为当前目录
16、把工作拷贝更新到别的URL
svn switch http://目录全路径 本地目录全路径
例子:
svn switch http://localhost/test/456 <- (原为123的分支)当前所在目录分支到localhost/test/456
17、解决冲突
svn resolved [本地目录全路径]
例子:
$ svn update
C fooc
Updated to revision 31
如果你在更新时得到冲突,你的工作拷贝会产生三个新的文件:
$ ls
fooc
foocmine
foocr30
foocr31
当你解决了fooc的冲突,并且准备提交,运行svn resolved让你的工作拷贝知道你已经完成了所有事情。
你可以仅仅删除冲突的文件并且提交,但是svn resolved除了删除冲突文件,还修正了一些记录在工作拷贝管理区域的记录数据,所以我们推荐你使用这个命令。
18、不checkout而查看输出特定文件或URL的内容
svn cat http://文件全路径
例子:
svn cat http://localhost/test/readmetxt
19、新建一个分支copy
svn copybranchA branchB-m "make B branch" // 从branchA拷贝出一个新分支branchB
20、合并内容到分支merge
svn mergebranchA branchB// 把对branchA的修改合并到分支branchB
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插件了。
你download下来的是服务器端储存的文件而不是你想要的带文件结构的文件。托管在百度云上貌似实现不了,因为VirtualSVNserver是基于操作系统的,而百度云说白了就是一块很大的硬盘,所以你的文件是SVN的存储文件而不是你想要的带目录结构的文件。下面是搭建SVN服务器你可以看看。
使用 VisualSVN Server来实现主要的 SVN功能则要比使用原始的 SVN和Apache相配合来实现源代码的 SVN管理简单的多,下面是详细的说明。
VisualSVN Server的下载地址如下,是免费的,随意不必有顾虑
http://wwwvisualsvncom/server/download/
SVN 的下载地址如下
http://tortoisesvnnet/downloadshtml
1、使用SVN,首先要安装TortoiseSVN,就是上面的SVN下载地址。
2、 安装VIsualSVN。
=======================================
VisualSVN Server 的安装目前最新版本是400
一 、Visual SVN的安装非常的简单
1、几乎是下一步。
2、选择 visualVSN服务器和管理控制台 或只有管理控制权限
3、选择程序安装的路径、Subversion Repository(库)的路径和所使用的协议和端口。
可以选择HTTP和HTTPS两种协议,如需使用svn协议也非常的方便,在14版本后,Subversion加入了Service运行的功能。端口号可以任意定义。对于HTTPS的端口号默认可以选择443和8443,对于HTTP默认可以选择80、8080和81。
下面的用于验证的身份,一个是windows验证,一个是Subversion身份验证,这里默认是Subversion身份验证。
4、接着就是复制文件的过程。
5、安装完成后会询问是否需要运行VisualSVN Server Manager(一个非常有用的管理工具)
6、打开“ VisualSVN Server Manager ”,如下:
二 、下面是 VisualSVN Server的配置和使用方法服务器端
1、下面添加一个代码库Repository,如下图:
2、点击Repository右键
3、按上图所示,创建新的代码库,在下图所示的文本框中输入代码库名称:
注意:上图中的CheckBox如果选中,则在代码库StartKit下面会创建trunk、branches、tags三个子目录;不选中,则只创建空的代码库StartKit。
点击OK按钮,代码库就创建成功了。
创建完代码库后,没有任何内容在里面
4、下面,开始安全性设置,在左侧的Users上点击右键:
输入上面的信息,点击OK,就创建一个用户了。按照上面的过程,分别添加用户其他用户就可以了。
下面开始添加这些用户到刚才创建的项目里。
点击刚才创建的库,Lenovo,右击选择属性(Properties)
5、点击上图中的"Add"按钮,在下图中选择刚才添加的用户,
注意这里的权限设置,要选择好。
点击"确定"按钮,上面的用户就具有了访问StartKit代码库的不同权限。
=======================================
三、签入源代码到SVN服务器
1、假如使用Visual Studio在文件夹lenovo中创建了一个项目,要把这个项目的源代码签入到SVN Server上的代码库中里,首先右键点击lenovo文件夹,这时候的右键菜单如下图所示:选择copy URL toCLipboard,就是复制统一资源定位符(URL)到剪贴板中
2、然后再电脑的空白处单击右键,选择小海龟的图标/ 导出
3、之后弹出对话框,将刚出的地址粘贴到第一个地址栏中
提交后要更新,不然服务器是不显示文件,
更新是选择 SVN更新和提交类似这里就不在重复了。
至此 SVN服务器以搭建完毕。
1、TortoiseSVN连接不上SVN服务器的问题:
解决:因为我是局域网的域用户,所以需要设置代理。
在settings->NetWork里,勾选Enable Proxy Server
设置Server address和端口
username
password
设置完后就可以链接上了。
2、问题解决了,是版本库创建的不对,我是直接在svn目录下用TortoiseSVN创建的,但是似乎svn目录是不能直接访问的,所以我总是出错,必须创建子文件夹才成
一、安装 SVN服务器程序
11运行 VisualSVN-Server-172msi
12选择程序安装目录 和 SVN仓库目录
我程序装在 C:\Program Files\VisualSVN Server , SVN仓库目录在 D:\SVN
13 安装完成,立即运行
二、服务器配置
21服务器维护界面
22仓库目录默认的内容
23创建新项目wapzucom
23创建用户ve
24设置项目的用户权限
Properties Security Add 选择刚创建的用户 ve ok 应用 确认
三、创建测试服务器目录 D:\WWWROOT ,本地开发目录 D:\WORKDIR
四、将代码(D:\Code )导入到项目仓库
输入用户名 密码 并 勾选 保存认证
导入成功,并返回版本号1
五、导出项目代码到工作副本、测试服务器目录
同理,另外导出一份到测试服务器目录D:\WWWROOT (测试服务器的Apache目录指向该位置)
六、使用Hooks自动更新测试服务器代码D:\WWWROOT
61 进入 D:\SVN\wapzucom\hooks 建立 post-commitbat 文件
编辑其内容 为"C:\Program Files\VisualSVN Server\bin\svnexe" update "D:\www\test" --quiet --username name --password pwd
或者可参考下面这段话:
接下来最关键的一步是,我们需要找到服务器上安装的版本库的路径下面,以版本库名称命名的文件夹下,有一个名字为hooks的文件夹,在这个文件夹下建立post-commitbat这样一个批处理文件,里面的内容如下:
@echo off
“D:\VisualSVN Server\bin\svnexe” update “D:\Apache Software Foundation\Apache22\htdocs\soupei360″ _username XXXXX _password XXXXX
update前面的路径,是SVN服务器端程序的执行文件路径, 后面的是在服务器上同步到的目录的路径,username和password后面是刚才建立用户的用户名和密码,这段批处理的意思是,当我们在本地编写代码,然后通过svn的commit提交时候,首先提交到版本库中,然后版本库自动用这个批处理,把内容同步到服务器上之前指定的文件夹中,从而实现本地和远程同步操作。
两款SVN配置软件的具体配置教程可以通过搜索引擎得到具体设置方法,在此需要特意强调的是,一定要将本地和服务器上的目录都check out后,批处理才能够自动同步,服务器上的目标文件夹没有check out的话,即使设置的路径正确,也是不能同步的。
62 设置访问权限
我的电脑 右键 管理 服务和应用程序 服务 VisualSVN Server 右键 属性 登陆 添加访问权限 用系统管理员账号(我这里是user)
重启服务器
63测试Hooks工作是否正常
修改 indexphp 状态
提交修改
最后打开D:\WWWROOT\indexphp 可以发现代码已经被成功update
PS : 目录说明
C:\Program Files\VisualSVN Server 服务器安装目录
D:\SVN 仓库更目录
D:\WORKDIR 本地开发用的工作目录
D:\WWWROOT 服务器测试目录(Apache 指向该目录,即可实现工作目录内容修改后提交到SVN自动发布到测试目录)
SVN分客户端和服务器端,如果已经有SVN服务器了(比如公司已经架设了SVN服务器),那么你电脑上只要装客户端就可以了,最常用的客户端是TortoiseSVN,另外也有用于Eclipse的SVN插件,看你平时用SVN来做什么了。
如果没有服务器端,那就要自己架设SVN服务器,那么你的电脑上就客户端、服务器端都要安装,服务器端推荐Collabnet 的SVN Edge版服务器安装包,相对而言安装配置比较简单,自带服务器管理控制台,而且免费。
看我的百度文库,有SVN服务器架设与SVN使用相关的文档。
0条评论