美文网首页
SVN个人小结

SVN个人小结

作者: 话说我是认真的 | 来源:发表于2018-04-25 16:18 被阅读0次

之前版本控制用的是Git,然后新项目的开展,用的是SVN。这使得对SVN八窍通了七窍的我很难不舒服。同事告诉我了一些在webstorm上面的基本用法,但是用命令行习惯的我,觉得还是用命令行比较习惯。终于我决定学习一下SVN的用法。
其实,SVN在一定程度上面和Git还是很相似的,一些merge,commit,等等的基本用法还是相通的,不一样的可能就是SVN没有push以及pull的操作。
1.首先,我们先来一些SVN的基本用法:

# 万能方法
    svn help
# 查看当前更改的文件
    svn status(st) 
# 将文件从远程仓库拷贝到本地的工作目录
    svn checkout(co) 你需要copy的远程仓库地址
# 往版本库中添加新的文件
    svn add file
# 提交代码
    svn commit(ci) -m"your comments"  文件名
# 更新代码
    svn update(up) 更新的文件或者文件目录 如果不写,默认将当前目录更新到最新状态
# 查看本项目的信息
    svn info
# 查看指定文件的信息
    svn info filename
# 查看本项目的日志
    svn log
# 查看指定文件的日志
    svn log filename
# 查看分支的从哪个版本来的
svn log --verbose --stop-on-copy | tail -10
   M /tags/version3.3.0(0417)/www/js/app.config.js
app.config.js 添加 年月日字段: APP_UPDATEVERSION
------------------------------------------------------------------------
r1034 | XXX | 2018-04-17 11:15:26 +0800 (二, 17  4 2018) | 1 line
Changed paths:
   A /tags/version3.3.0(0417) (from /trunk:1033)
------------------------------------------------------------------------
# 比较差异
    svn diff(di) path(将修改的文件与基础版本比较)
    svn diff -r m:n path(对版本m和版本n比较差异)
image.png

使用svn update在开始工作时和提交之前先做一次更新是一个良好的习惯。
假如在我们修改工作目录的同时,有人也更新了同样的文件并已经提交到远程仓库,那我们在更新时有可能就会遇到冲突(conflict)。
可以设定’accept’参数,指定’working’, ‘base’,

    (p) postpone: 暂时推后处理
    (df) diff-full:       把所有的修改列出来,比比看
    (e) edit:           直接编辑冲突的文件
    (mc) mine-conflict:    用你的修改
    (tc) theirs-conflict:   用别人的修改
    (s) show all options:  显示其他可用的命令

我们可以选择以上命令中的任何一个在解决冲突,一般选择p的话,后续要用svn resolve标识已解决冲突的文件。


2.分支以及标签的管理:

# 创建分支:
    svn copy(cp) trunkUrl branchesUrl -m"create branches"
# 删除分支:
    svn delete(rm/remove) branchesUrl -m "delete branches "
# 创建tag:
    svn copy(cp) trunkUrl tagUrl -m"create tag"
# 删除tag:
    svn delete(rm/remove) tagUrl -m "delete tag"
# 分支合并到主干 注意:此时需要在trunk下进行
    svn merge -r 1069(分支创建时的版本):1092(分支现在的版本) branchesUrl
# 查看当前Branch中已经有那些改动已经被合并到Trunk中
    svn mergeinfo svn://branch/path
# 查看Branch中那些改动还未合并
    svn mergeinfo branchesUrl --show-revs eligible
# 主干合并到分支 注意:此时需要在分支下进行
    svn merge -r 1069(分支创建时的版本):25(trunk现在的版本) trunkUrl
# 切换分支
    svn switch (sw) 要切换的地址

刚开始用命令行的SVN操作来管理版本,这些只是基础操作,以后,用到的会及时更新。

相关文章

  • SVN个人小结

    之前版本控制用的是Git,然后新项目的开展,用的是SVN。这使得对SVN八窍通了七窍的我很难不舒服。同事告诉我了一...

  • git本地项目代码上传至码云远程仓库总结

    git基本使用小结 之前公司的版本控制工具一直用的是svn,最近要改用git,之前用svn一直很熟,没用过git,...

  • GIT常用命令

    GIT常用命令(小结) 谈及源码管理工具,首选SVN和GIT,在工作中也都有所接触,但个人更喜欢使用GIT,下面就...

  • 常用的SVN命令小结

    1,基础命令 2,branch & tag 所谓打tag,要从SVN官方推荐的目录结构说起了。SVN官方推荐在一个...

  • 训练营 总结

    昨天做了个小结,今天做个小结的小结,其实应该这么说,昨天小结了个人收获,今天小结一下总体的情况。 非常令我意外,一...

  • Git 与 SVN对比详解

    一、Git vs SVN Git 和 SVN 孰优孰好,每个人有不同的体验。 Git是分布式的,SVN是集中式的 ...

  • SVN

    SVN check:svn checkout svn:svn地址 update:svn up/update svn...

  • SVN使用

    .使用 SVN 终端命令 (个人开发) 1.SVN 帮助 svnhelp 查看全部功能选项 2.初始化项目 例 ...

  • linux svn 操作

    svn 增加新的文件svn add 文件名 svn 从svn还原svn resolved 文件名 svn 更新...

  • SVN命令行

    从svn仓库中取出 svn checkout svn://localhost/仓库名 svn加入版本控制 svn ...

网友评论

      本文标题:SVN个人小结

      本文链接:https://www.haomeiwen.com/subject/cvuelftx.html