svn (二) 拉库

一般开发的时候需要在本地创建一个工作副本,这个过程叫做拉库
拉完整库
  • 拉库1
svn co file:///opt/svn/repo/svn_project1  // 拉取整个项目

  • 拉库2
svn co svn://127.0.0.1/svn_project1
拉库的一部分
  • /root/learn_svn/svn_protocol/svn_project1
--------------------------------------------------------------------创建文件夹dir1,并上库
[root@YUM svn_project1]# mkdir dir1
[root@YUM svn_project1]# echo `date` >> dir1/file2
[root@YUM svn_project1]# cat dir1/file2 
20200316日 星期一 00:41:10 CST
[root@YUM svn_project1]# svn add dir1 
A         dir1
A         dir1/file2
[root@YUM svn_project1]# svn commit -m "add dir1"
增加           dir1
增加           dir1/file2
传输文件数据.
提交后的版本为 4[root@YUM svn_project1]# svn update
版本 4--------------------------------------------------------------------从库上,只拉取文件夹dir1

[root@YUM svn_project1]# mkdir /root/learn_svn/part_repo && cd /root/learn_svn/part_repo
[root@YUM part_repo]# ls
[root@YUM part_repo]# svn co svn://127.0.0.1/svn_project1/dir1    
A    dir1/file2
取出版本 4[root@YUM part_repo]# ls 
dir1
[root@YUM part_repo]# cat dir1/file2 
20200316日 星期一 00:41:10 CST
拉库的一部分,并重命名本地仓库
  • /root/learn_svn/part_repo
[root@YUM part_repo]# ls
dir1
[root@YUM part_repo]# svn co file:///opt/svn/repo/svn_project1/dir1 new-name 
A    new-name/file2
取出版本 4[root@YUM part_repo]# ls
dir1  new-name
[root@YUM part_repo]# cat new-name/file2 
20200316日 星期一 00:41:10 CST
拉库,指定版本
// 这两个拉出来的库 在树结构上没有区别,.svn/wc.db有区别.
svn checkout http://svn.example.com/svn/repo/trunk@1729 trunk-1729 
svn checkout http://svn.example.com/svn/repo/trunk -r 1729 trunk-1729

拉库,不要.svn (注意:这种状态下不是一个工作副本,不能在此目录下执行 svn 命令,意思是这个目录下不能上库了)
# Export the trunk from the latest revision.
$ svn export http://svn.example.com/svn/repo/trunk trunk-export
…
--------------------下面的两个命令没有任何区别
# Export the trunk from r1729.
$ svn export http://svn.example.com/svn/repo/trunk@1729 trunk-1729# Export the current trunk as it looked in r1729. 
$ svn export http://svn.example.com/svn/repo/trunk -r 1729 trunk-1729
…
$
拉库被断开
$ svn checkout file:///var/svn/repos/test mine
A    mine/a
A    mine/b
^C
svn: The operation was interrupted
svn: caught SIGINT
$ svn checkout file:///var/svn/repos/test mine
A    mine/c
^C
svn: The operation was interrupted
svn: caught SIGINT
$ svn update mine
A    mine/d
Updated to revision 20.
$

其他

  • 拉库基础命令
svn checkout 	xxx
简写
svn co 	xxx
xxx 是 地址
地址的拼写  和 协议有关
svn 支持 file http https svn svn+ssh

[root@YUM learn_svn]# svn co file:///opt/svn/repo/svn_project1/file # 最后一个/右边的单词必须是一个目录
svn: URL “file:///opt/svn/repo/svn_project1/file” 指向一个文件,不是目录

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值