洞察探讨小游戏SDK接入的最佳实践以及对企业跨平台开发的优势
872
2022-09-02
Mac下SVN基本操作和常见错误
一、基本操作
1 从服务器上-代码
svn checkout 获取最新的代码
svn update
3 提交代码
svn commit -m 'comment'
4 撤销本地未提交的所有操作
svn revert --recursive .
5 建立远程分支
svn copy -m 'create branch1'
6 添加目录并提交
1)在本地建立test文件夹
2)svn add test
3)svn commit -m 'comment'
7 删除文件和文件夹,比如一个名为test的文件夹,内含一个名为abc的文件
在本地进入到该test文件夹所在的上级目录
输入命令svn rm test
看到如下的显示
D test/abc D test
再提交一下:svn commit -m 'delete test folder'
(注意,提交之前要先到根目录下执行svn update,否则可能会报out of date的错误,意思是说服务器上的代码比本地的代码新)
看到如下的显示 Deleting branches/test
至此,删除成功。本地和远程都不再有test目录
8 远程主干合并到本地分支
1)svn commit -m 'some comment'(提交本地主干里的变化)
2) svn update(更新一下,否则会报错)
3) svn merge -r 版本号一:版本号二 主干svn地址 本地分支路径 (远程主干中版本号一和版本号二之间的变化合并到本地分支)
这里版本号一不算在内,而版本号二算在内。比如1110:1113,则合并的版本号为1111,1112,1113
如果当前路径恰巧就是本地分支路径,则本地分支路径可以不写
例子:svn merge -r 1110:1113 merge -r 1110:head commit -m 'some comment' (本地分支中获得的更新提交到远程分支)
注意:远程分支合并到本地主干、本地主干合并到本地分支、本地分支合并到本地主干也是上述步骤。
SVN合并只能在远程和本地、本地和本地之间进行,不能在本地和远程、远程和远程之间进行。
9 解决冲突
若有冲突,解决完冲突后,要用命令svn resolved 路径
例子:svn resolved dir1/dir2/file.m
10 帮助命令
svn help resolved
此命令可以查看resolved相关的参数和功能
11 查看版本提交日志
svn log
svn log -l15(查看最近15次的改动信息)
12 删除分支
svn rm -m 'delete comment'
svn remove -m 'delete comment'
svn delete -m 'delete comment'
13 创建远程目录
svn mkdir -m 'create my branch directory'
14 svn模拟合并,可以看到操作后的结果但不会真正操作
svn merge --dry-run
15 回滚
假如提交的版本2409,提交之后就是2410。这时发现提交的代码有问题,想回滚到2409,可以用如下命令:
svn up -r 2409
二、常见错误
1 操作:
svn commit -m 'delete svntest'
Deleting svntest
svn: E155011: Commit failed (details follow):
svn: E155011: Directory '/XXX/svntest' is out of date
svn: E170004: Item '/XX/svntest' is out of date
解决:
先在根目录执行svn update,然后再执行svn commit -m 'delete svntest'
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~