1. 将文件checkout到本地目录

svn checkout path(path是服务器上的目录)

例如:

cd /home/www  #进入准备获取的项目路径

svn checkout svn://192.168.1.126/project-tbkt  #chechout指定项目,同时会创建project-tbkt文件夹

svn checkout svn://192.168.1.126/project-tbkt new-name #指定文件名

如果出现svn: Error converting entry in directory 'tbkt' to UTF-8错误,是因为指定项目里面存在乱码文件,删除即可。

svn checkout svn://localhost/mycode --username=xw --password=xw123456 /Users/admin/svn/code

2.更新到最新版本

svn update -r m path
   例如:
   svn update #如果后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本。
   svn update -r 200 test.html #(将版本库中的文件test.html还原到版本200)
   svn update test.html(更新,于版本库同步。如果在提交的时候提示过期的话,是因为冲突,需要先update,修改文件,然后清除svn resolved,最后再提交commit)

svn resolved filename  # 解决冲突

svn revert  # 放弃自己的修改

简写:svn up

3.往版本库中添加新的文件
  svn add file
  例如:svn add test.html(添加test.html)
  svn add *.html(添加当前目录下所有的html文件)

4.查看文件状态

svn status path(目录下的文件和子目录的状态,正常状态不显示)

【?:不在svn的控制中;M:内容被修改;C:发生冲突;A:预定加入到版本库;K:被锁定】

例如: svn status -q #查看哪些文件有改动

5.svn更换IP地址

进入到工作目录

[root@fileserver ~]# cd /home/www/project-tbkt/

[root@fileserver project-tbkt]# svn info

路径: .

URL: svn://192.168.0.123/project-tbkt

版本库根: svn://192.168.0.123/project-tbkt

版本库 UUID: 3b424fa4-6f94-45d2-ae27-6b31a2683abb

版本: 208

节点种类: 目录

调度: 正常

最后修改的作者: cl

最后修改的版本: 208

最后修改的时间: 2013-08-16 09:25:32 +0800 (五, 2013-08-16)

svn switch --relocate http://oldPath http://newpath

例如:svn switch --relocate svn://192.168.0.123/project-tbkt https://192.168.0.126/project-tbkt

6.提交文件

svn commit -m "LogMessage"  [-N] [--no-unlock] PATH(如果选择了保持锁,就使用–no-unlock开关)

例如:svn commit -m "add test file for my test"  test.py

svn commit -m "commit"  # 后面不跟路径则提交所有文件,包含新增文件

7. svn 批量添加、删除

vi ~/.bash_profile
添加如下:
svnadd(){
svn status|grep ? |awk '{print $2}'|xargs svn add
}
svndel(){
svn status|grep ! |awk '{print $2}'|xargs svn del
}

8、svn 设置忽略文件

8.1全局忽略

# vi ~/.subversion/config

找到 global-ignores 一行,去掉注释,编辑成:

global-ignores = bin gen .DS_Store *.log .settings *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo .sass-cache node_modules

8.2 局部忽略

# svn propedit svn:ignore .   # 先进入需要设置的仓库目录,注意后面"."不能省略,执行该命令相当于在当前目录创建一个#svn-prop.tmp# 文件,然后输入你要忽略的文件或文件夹以换行分隔。

# svn ci -m '忽略settings.py文件'   # 我们需要提交,然后这个svn:ignore属性才会起作用

例题代码:

# svn propset svn:ignore 'test' .    # 多个文件可以在字符串中换行,注意后面的"."不能扔掉
# svn update
# svn commit -m "add a ignore dir"

代码链接:

http://yansu.org/2013/04/22/add-svn-ignore-file.html

http://www.subversion.org.cn/svnbook/1.4/svn.advanced.props.special.ignore.html

mac下svn 默认编辑器是emacs, 进入emacs编辑器后可使用control+x在control+c,根据提示输入相应命令退出。

修改svn默认编辑器 export SVN_EDITOR=vim,为了方便使用可以加入到.bash_profile里面去。

更多设置请参考:

http://tortoisesvn.net/docs/release/TortoiseSVN_zh_CN/index.html

http://svndoc.iusesvn.com/svnbook/1.4/

SVN客户端常用命令的更多相关文章

  1. linux svn客户端 常用命令

    查看文件或者目录状态: [root@v01 ~]# svn status online/ #正常情况下没显示 [root@v01 ~]# svn status online/ #如果有变动会有如下显示 ...

  2. CentOS系统下安装SVN及常用命令

    1.SVN的安装: yum install subversion 2.服务端命令 svnserver -- 控制svn系统服务的启动等 svnadmin -- 版本库的创建.导出.导入.删除等 svn ...

  3. SVN使用—常用命令及避免冲突的方法

    一.SVN启动 [root@localhost ~]# mkdir /data/svn [root@localhost ~]# svnadmin create /data/svn/test [root ...

  4. SVN 部分常用命令

    1. svn status 提交前显示出本地文本和版本库文本的区别 [url=] L abc.c # svn已经在.svn目录锁定了abc.c M bar.c # bar.c的内容已经在本地修改过了 ...

  5. svn的常用命令

    svn :看log.版本库.增删.提交 (1)svn up //代码更新到最新版本. (2)svn checkout //将代码checkout出来. (3)svn revert -R ./ //将代 ...

  6. svn版本控制常用命令

    查看未提交的文件(含新增的和修改过得) svn status   检出代码 svn checkout svn://192.168.0.10/v2019.1/spark \ /Users/zhangsa ...

  7. 锐捷linux客户端常用命令(主要用来连接校园网或公司局域网)

     锐捷访问校园网,.sh脚本文件rjsu*.sh-u 用户名-P 密码-S 参数1保存密码参数0不保存密码   其实:  直接使用md5认证方式输入用户名密码并且配置好ip之后,重新打开网卡即可有一定 ...

  8. oozie 客户端常用命令

    1.提交作业,作业进入PREP状态 oozie job -oozie http://localhost:11000/oozie -config job.properties -submit job: ...

  9. SVN常用命令说明

    本文转载至  http://www.blogjava.net/jasmine214--love/archive/2011/01/12/342839.html :1.5 及更新版本 名词说明: WC:W ...

随机推荐

  1. 自定义viewgroup实现ArcMenu

    最终效果如下 实现思路 通过效果图,会有几个问题: a.动画效果如何实现 可以看出动画是从顶点外外发射的,可能有人说,那还不简单,默认元素都在定点位置,然后TraslateAnimation就好了:这 ...

  2. ***PHP中empty()和isset()的区别

    对于初学php的人来说,empty()和和isset()用法的区别是很难搞清楚的,他们的用法的差别不仔细去琢磨的话确实很难弄清楚. 先说一下他们的共同点: 都可以判定一个变量是否为空: 都返回bool ...

  3. PHP生成不重复随机数的方法

    无论是Web应用,还是WAP或者移动应用,随机数都有其用武之地.在最近接触的几个小项目中,我也经常需要和随机数或者随机数组打交道,所以,对于PHP如何产生不重复随机数常用的几种方法小结一下. 方法一: ...

  4. 简单灵活的 PHP页面跳转函数

    <?         function Location($url = ,) == ,) === ,) ===  ) {                                 $pro ...

  5. myeclipse打war包

    转自:http://wjlvivid.iteye.com/blog/1401707 右键选中项目,选择export然后选择J2EE->WAR File,点击next 接下来指定war包的存放路径 ...

  6. 使用AIDL远程调用服务中的方法

    AIDL:android interface define language(接口定义语言) 作用:方便远程调用其他服务中的方法 注意:安卓四大组件都要在清单文件注册 aidl创建图: AIDL的全称 ...

  7. Scala中的Implicit(隐式转换,隐式参数,隐式类)

    文章来自:http://www.cnblogs.com/hark0623/p/4196452.html  转发请注明 代码如下: /** * 隐式转换 隐式参数 隐式类 */ //隐式转换 class ...

  8. finally 语句

    package unit5; public class FinallyDemo { int no1,no2; public FinallyDemo(String[] args) { try{ no1= ...

  9. Spring的qualifier标签

    @Autowired是根据类型进行自动装配的.如果当Spring上下文中存在不止一个UserDao类型的bean时,就会抛出BeanCreationException异常;如果Spring上下文中不存 ...

  10. jquery概要--基础01

    jquery对象,DOM对象 var $cr = $('#cr');          var cr = $cr[0]; /var cr = $cr.get(0); var cr = document ...