svn 检出 旧版本文件.

************************************************************
svn 检出 旧版本文件.
************************************************************

不能直接用checkout, 而需要先建对应svn目录, 再调用svn update.

核心只是这一句话, 下面给个例子,详细说明操作过程.


命令: svn update -r <版本号> <文件名>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
例如: 查看README 的提交历史
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
$ svn log README
------------------------------------------------------------------------
r1586 | hejinjing | 2020-08-24 11:45:43 +0800 (Mon, 2020-08-24) | 1 行

修订README
------------------------------------------------------------------------
r1510 | hejinjing | 2020-06-02 15:17:07 +0800 (Tue, 2020-06-02) | 1 行

修改根文件系统使初始化server 与 ip 对应
------------------------------------------------------------------------
r311 | hejinjing | 2018-02-27 14:53:42 +0800 (Tue, 2018-02-27) | 1 行

add hostClient code
------------------------------------------------------------------------
r35 | hejinjing | 2017-08-25 11:51:11 +0800 (Fri, 2017-08-25) | 1 行

add IMX6 system file
------------------------------------------------------------------------


想拿到r35 版本的README
你只需要用:
svn update -r r35 README 就可以了.


如果你不想在你的工作目录下做变更,想用一个临时目录呢?

首先说, 直接去checkout 一个文件是不行的.
hjj@hjj-Inspiron:~$ svn checkout svn://192.168.0.2/TECHWIN/Software/HOST/IMX6/README
svn: E200007: URL “svn://192.168.0.2/TECHWIN/Software/HOST/IMX6/README” 指向一个文件,不是目录
还是要分两步走:
------------------------------------------------------------
1. 需要先建立一个空的svn检出 目录. 为了不要真正checkout 大量东西,你可以制定--depth=empty
------------------------------------------------------------
把svn的一个目录checkout 到test 目录下, 但先不要checkout 任何文件.

例子:不要照抄,要明白其意思.
hjj@hjj-Inspiron:~$ svn checkout --depth=empty svn://192.168.0.2/TECHWIN/Software/HOST/IMX6 test
 U   test
 取出版本 1586。

 hjj@hjj-Inspiron:~$ cd test
 hjj@hjj-Inspiron:~/test$ ls .* -d
 .  ..  .svn
hjj@hjj-Inspiron:~/test$ svn st
查阅信息
hjj@hjj-Inspiron:~/test$ svn info
路径: .
工作副本根目录: /home/hjj/test
URL: svn://192.168.0.2/TECHWIN/Software/HOST/IMX6
Relative URL: ^/Software/HOST/IMX6
版本库根: svn://192.168.0.2/TECHWIN
版本库 UUID: bb293511-e4eb-40db-a587-96b450cb634e
版本: 1586
节点种类: 目录
调度: 正常
深度: 空
就是说,你还是要建立一个svn目录. svn log 可以看到整个的提交列表
------------------------------------------------------------
2. 然后可以update 指定的文件, 早期版本需要指定版本号
------------------------------------------------------------
获取旧版本的命令
$ svn update -r 35 README
 正在升级 'README':
 U    README
 更新到版本 35。

hjj@hjj-Inspiron:~/test$ ls
README

$ svn log README
此时你只能看到早期的提交列表,看不到最新的.
------------------------------------------------------------------------
r35 | hejinjing | 2017-08-25 11:51:11 +0800 (Fri, 2017-08-25) | 1 行

add IMX6 system file
------------------------------------------------------------------------

更新到最新版的命令:
hjj@hjj-Inspiron:~/test$ svn update README
正在升级 'README':
U    README
更新到版本 1586。
hjj@hjj-Inspiron:~/test$ svn log README
你就能看到整个的提交列表了.

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值