5》svn 命令介绍
将项目检出 至user目录下:svn checkout URL [PATH]
svn checkout svn://localhost/itcast F:\develop\workroom\user
svn checkout svn://localhost/itcast/ F:\develop\workroom\user2
输出内容:
###########################################
# A user\*.* #
# ....... #
# 取出版本1 #
###########################################
将改动的文件提交至版本库:svn commit -m "log des" PATH
我们修改user文档中的HelloTheWrold.jsp文件,修改一些内容,然后提交至版本库:
svn commit -m "this is the first commit " F:\develop\workroom\user\HelloTheWrold.jsp
(如果当前目录已为user, 则只需svn commit -m "this is the first commit " HelloTheWrold.jsp)
输出内容:
###########################################
# 正在发送 HelloTheWrold.jsp #
# 传输文件数据 #
# 提交后的版本为2 #
###########################################
更新你的工作拷贝 : svn update [PATH...]
我们将HelloTheWrold.jsp更改后的内容更新至 user2目录
进入user2目录
cd F:\develop\workroom\user2
svn update
或
svn update F:\develop\workroom\user2
输入内容如下:
###########################################
# U F:\develop\workroom\user2 #
# #
# 更新到版本2 #
###########################################
注意:更新要经常频繁的做,尽量让问题及早暴露,便于处理
提交代码前要更新,否则容易产生版本冲突
向版本库中添加一个新文件:svn add PATH...
我们在user中建立一个新文件UserT.java, 然后添加到版本库中:
svn add F:\develop\workroom\user\UserT.java
输入内容:
###########################################
# A UserT.java #
# #
###########################################
Ok,添加后我们将新文件更新至user2目录中:
进入user2目录
cd F:\develop\workroom\user2\
svn update F:\develop\workroom\user2
输出内容:
###########################################
# 版本2 #
# #
###########################################
但是并没有更新UserT下来。
添加到版本库,文件并没有提交,因此我们需要提交:
svn commit -m "this is the usert class" F:\develop\workroom\user\UserT.java
输出内容:
###########################################
# 添加 UserT.java #
# 传输文件数据。 #
# 提交后的版本为3 #
###########################################
OK,我们对user2再次更新:
svn update F:\develop\workroom\user2
输出内容:
##############################################
# A F:\develop\workroom\user\UserT.java #
# #
# 更新到版本3 #
##############################################
从版本库中删除一个文件:svn delete PATH...
假如我们要删除user下的UserT.java文件:
svn delete F:\develop\workroom\user2\UserT.java
输出内容:
##############################################
# D F:\develop\workroom\user\UserT.java #
# #
# #
##############################################
但注意的是svn delete 不会立即从版本库删除,而是会在下次提交删除。
svn commit -m "delete this class" F:\develop\workroom\user\UserT.java
从版本库中删除一个文件,再取消删除操作:svn revert PATH...
假如我们要删除HelloTheWorld.jsp
svn delete HelloTheWorld.jsp
输出内容:
#####################################################
# D F:\develop\workroom\user\HelloTheWorld.jsp #
# #
# #
#####################################################
但这个时候我们又不想删除了,我们可以:
svn revert HelloTheWorld.jsp
输出内容:
#####################################################
# 已恢复 HelloTheWorld.jsp #
# #
# #
#####################################################
显示本地或远程条目的信息 svn info
我们显示出 本地user 目录的信息
首先进入我们的workroom 目录
svn info user
显示版本库中的条目 svn list
我们显示出版本库中itcast 的条目
svn list svn://localhost/itcast
查看当前工作区状态 svn status
我们进入工作区目录 即 user目录
svn status
系统会列出需要添加,删除或者更新的文件
一般来说有如下几种开头
A添加
D删除
U更新
C冲突
G合并
获取帮助信息: svn help ...
假如我们想查看svn 客户端命令中的 checkout 的使用方法
svn help checkout
获取 add 命令的帮助信息: svn help
svn help add 等同于 svn add --help