SVN 一些常用指令
背景
有很多时候,是没办法用小乌龟的,所以,还是得记一下一些常用指令,能不能加班,有时候就看这些细节了。
指令
1、查看文件与版本对比
svn diff xxx.java
2、SVN 只checkout 目录
svn co --depth=immediates https://{ip}:{port}/svn/trunk/path-a/path-a-x/patha-x-1/
--depth 是有几个选项的,
- empty:只checkout空目录
- files:只co文件
- immediates:只co当前一层的文件/文件夹
- infinity:遍历co当前及以下所有的文件及文件夹
所以,如果只想把 path-a 目录下的文件全部co下来,就在当前文件夹中,找开控制台窗口
svn co --depth=immediates https://{ip}:{port}/svn/trunk/path-a/
然后,再进入下一级,如果这个时候,想再把 path-a-x 目录更新下来,如果这个时候,直接 svn update 的话,是没有效果的,
还是需要 svn co --depth=infinity https://{ip}:{port}/svn/trunk/path-a/path-a-x/ 改一下 --depth 的参数才行。
对了,呃,如果想要checkout path-a-x 目录的所有文件夹,是需要去到它的父级目录下(即 path-a目录下找开命令行窗口),执行 svn co --depth=immediates https://{ip}:{port}/svn/trunk/path-a/path-a-x,否则它是没有用的~
3、将本地文件夹推送到远端 SVN 仓库,并将其挂载到一个新的地址
比如当下有一个 test2025/ 一个文件次,现在 svn 上已经有了 https://10.1.101.100:8800/svn/资料/2023,https://10.1.101.100:8800/svn/资料/2024, 现在想要新增一个 https://10.1.101.100:8800/svn/资料/2025
checkout的时候,分别把 2023,2024 check 下来,并没有把上一级(https://10.1.101.100:8800/svn/资料/) checkout下来,所以没办法直接创建2025,add, commit 上去。
这个时候可以使用: svn import 2025/ https://10.1.101.100:8800/svn/资料/2025 -m "创建2025年资料"
这样就方便多了。
嗯,反正试多几下就可以了。

浙公网安备 33010602011771号