SVN一些常用命令

作者: 云计算机网 分类: 云计算知识 发布时间: 2016-09-15 12:34

SVN 是什么?

SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。


SVN的安装分客户端和服务端。

你可以在如下地址找到下 载:http://subversion.tigris.org/

这篇文章主要介绍的是svn 客 户端的命令,你至少需要安装客户端。默认就是以SVN 做版本控制的。如果你不想在自己机器上 安装服务版,google code是个练习svn 命令的好地方。

http://code.google.com上申请托管项目很简单,但 是现在不支持svn lock。目前最大支持1G空间。

以下是svn 客 户端常用命令一览:

svn add [path]

别名:无

描述:添加文件或目录到你的wc,打上新增标记。这些文件会在下一次你提 交wc的时候提交到svn 服务器。

在提交前,你也可以用svn revert撤销新增的文件。

访问库:否

eg: svn add file.cpp

svn blame Target[@REV]

别名:praise,annotate,ann

描述:显示某个已受控文件的每一行的最后修改版本和作者

访问库:是

eg: svn blame file.cpp

eg: svn blame --xml file.cpp ##加上xml参数可以以xml格式显示每一行的属性。

svn cat TARGET[@REV]

别名:无

描述:输出指定目标的内容,这里的目标一般是文件。

访问库:是

eg:svn cat file.cpp

eg:svn cat file.cpp -r 2 ##显示版本号为二的file.cpp内容。

eg:svn cat file.cpp --revision HEAD ##显示最新版本的file.cpp内容。

svn changelist CLNAME TARGET...

svn changelist --remove TARGET

别名:cl

描述:可以将wc中的文件从逻辑上分组.

访问库:否

eg:svn cl clName file.cpp file2.cpp file3.cpp ##将file.cpp等三个文件加入名叫clName的changelist

eg:svn commit --changelist clName -m "ci" ##将clName下的所有文件提交

svn checkout URL[@REV]... [PATH]

别名:co

描述:检出

访问库:否

eg:svn checkout file:///var/svn /repos/test file:///var/svn /repos/quiz working-copies

eg:svn checkout -r 2 file:///var/svn /repos/test mine ##check out 版本号为2的项目

svn cleanup [PATH...]

别名:无

描述:递归的清理WC中过期的锁和未完成的操作。

访问库:否

eg:svn cleanup

svn commit [PATH...]

别名:ci

描述:把你WC的更改提交到仓库

访问库:是

eg:svn commit -m "added howto section." ##默认情况下提交必须提供log message


svn copy SRC[@REV]... DST

别名:cp

描述:copy操作可以从WC到WC;WC到URL;URL到 WC;URL到URL。现在SVN 只支持同一个仓库内文件的拷贝,不允许跨仓库操作。

  • 对于数据库运维人员来说,想要保证数据库在高效平稳的运行就有点像杂技演员在转盘子,需要灵活、专注、能快速做出反应、并且拥有冷静的头脑。数据库几乎是所有能够成功运行系统的核心。而数据库运维人员对组织的数据负责,能找到可依靠的工具来更加高效的管理数据库,并且轻松的维护日常的工作就变得格外重要。数据库运维人员因此需要更好的工具来使得他们的系统平稳运行。那什么工具才是对MySQL管理者来说是经过测试并且值得相信的呢?这里推荐5款开源工具是如何应用的。

    Mycli

    其只要的特征如下,

    • 提供了代码补全,语法高亮等功能

    • 自动通过输入第一个字符检索表名或字段名

    • 通过命令行模式

      其中,命令行模式的好处在于,在有着远程操作或者双重认证等安全限制的环境中,不受制约,而图像化的工具未必好用。

      #p#分页标题#e#

      Gh-ost

      大多数的数据库运维人员都很担心改变MySQL的大表表结构会影响业务,gh-ost的设计号称无触发器,可监控,可动态调整暂停等,更重要的是切换方案的优秀设计。

      通常业内的处理方式无外乎三种,一是利用Percona的pt-online-schema-change,Facebook的OSC等三方工具,二是在备库修改通过切换实现滚动变更,三则是升级MySQL到5.6/5.7通过官方Online DDL实现部分变更。然而,引入触发器带来的锁竞争问题,主备切换带来的附加成本以及Online DDL的局限性都不让DBA省心。

      那么gh-ost是怎么工作的呢?官方架构图如下:

      其有两种工作方式如下:

      1. 连接主库直接修改

      • middot;直连主库

      • middot;主库上创建ghost表

      • middot;新表(ghost表)上直接alter修改表结构#p#分页标题#e#

      • middot;迁移原表数据到新表

      • middot;拉取解析binlog事件,应用到新表

      • middot;cut-over阶段,用新表替换掉原表

        2. 连接从库间接应用到主库

        • 连接从库

        • 校验完后,在主库创建新表

        • 迁移原表数据到新表

        • 模拟从库的从库,拉取解析增量binlog应用到主库

        • cut-over阶段,用新表替换掉原表

          两者不同的点就在于,通过连接从库来进行变更,对主库的性能影响最小。#p#分页标题#e#

          PhpMyAdmin

          资历最老并且最成熟的WEB版MySQL工具。允许数据库运维人员通过浏览器对数据表进行操作。而且具有丰富的格式来展示数据。

          能够动态地将问题、连接数/进程、流量绘制成图形。并且检测当性能下降时自动提供解决建议的功能。

          Sqlcheck

          在MySQL的反模式中,有兴趣的同学可以看下相关资料(SQL anti-patterns)。

          SqlCheck能将够定位的问题分为3类,高风险,中风险,低风险。这个能帮助列出哪些是最影响你效率的问题。你所要做的就是将文件名称当作参数输入到工具中,如下图

          Orchestrator

          orchestrator是一款非常实用的数据复制管理工具。它能够通过抓取数据库主从关系来生成拓扑图。并且可以通过拖拉拽的方式来重构你的数据库关系。这些操作非常安全,不会因为非法操作来损坏你的数据库。

          最后,orchestrator能够恢复当其中的节点发生故障,它应用了状态的概念来正确的恢复并且在适当的时候与主库进行连接。#p#分页标题#e#

        • 相关推荐:

        • 2017年5款常用的mysql数据
        • 最新资讯速递弹窗关闭
        • 最新如何去掉资讯速递弹
        • Win10常用设置项怎么固定
        • 分享Windows运行命令大全
        • 电脑定时关机
        • diy装机常用跳线安装教程
        • 最常用的键盘快捷键大全
        • 维修电脑常用的方法
        • LOL英雄联盟提示:抱歉!
        • 网站内容禁止违规转载,转载授权联系中国云计算网