一次向svn中增加所有新增文件 svn add all new files

2023-05-16

http://wp4d.sinaapp.com/2012/02/19/%E4%B8%80%E6%AC%A1%E5%90%91svn%E4%B8%AD%E5%A2%9E%E5%8A%A0%E6%89%80%E6%9C%89%E6%96%B0%E5%A2%9E%E6%96%87%E4%BB%B6-svn-add-all-new-files/


驯服Subversion命令行

总有些时候,没有别的什么工具或是开源项目能恰好满足你的需要,这时就该你自己动手制造“填木”和“夹铁”了。这一章介绍了很多种制造工具的方式,下面就是一些在真实项目中用这些工具来解决问题的例子。

我是开源版本控制系统Subversion的忠实粉丝,在我看来它就是强大、简单和易用的完美结合。归根到底Subversion是一个基于命令行的版本控制系统,不过有很多开发者为它开发了前端工具(我的最爱是与Windows资源管理器集成的Tortoise)。尽管如此,Subversion最大的威力还是在命令行,我们来看一个例子。

我经常会一次往Subversion里添加一批文件。在使用命令行做这件事时,你必须指定所有想要添加的文件名。如果文件不多的话这还不算太糟糕,但如果你要添加20个文件,那就费事了。当然你也可以用通配符,但这样一来就可能匹配到已经在版本控制之下的文件(这不会有什么损害,只不过会输出一堆错误信息,可能会跟别的错误信息混淆)。为了解决这个问题,我写了一行简单的bash命令:

svn st | grep '^\?' | tr '^\?' ' ' | sed 's/[ ]*//' | sed 's/[ ]/\\ /g' | xargs svn add

表4.3详细解释了这一行命令。

独家:卓有成效的程序员---自动化

我大概花了15分钟写出这条命令,然后用了它成百上千次。

 用Ruby编写SQL拆分工具

在从前的一个项目中,我和一个同事需要解析一个巨大(38,000行)的遗留SQL文件。为了让解析的工作变得容易一点,我们想把这个铁板一块的文件分成每块1,000行左右的小块。我们稍微考虑了一下手工做这件事,不过很快就明白将其自动化会是更好的办法。我们也考虑用sed来实现,不过似乎会很复杂。最终,我们选定了Ruby。大约一个小时以后,我们得到了这个:

独家:卓有成效的程序员---自动化

这个Ruby小程序从源文件中逐行读取,直到读满1,000行为止,然后从中寻找包含GO或者END的行,如果找到就结束当前文件的查找,开始下一个文件。



来源:http://linux.ctocio.com.cn/496/8873996_8.shtml

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

一次向svn中增加所有新增文件 svn add all new files 的相关文章

  • Access VBA随机改变大小写

    我在 MS Access 中有一个编码项目 有一些开发人员编码并将源代码签入 SVN 服务器 由于 SVN 服务器用于管理代码 因此它可以识别源代码文件中的更改 这些源代码文件中存在问题 VBA经常改变大小写字母 但我们不知道为什么 当我进
  • 将大型 SVN 存储库迁移到 git

    我有一个大型 SVN 存储库 大约 140GB 其中包含许多项目 并且不遵循 svn 推荐的目录结构 从所有这些数据 包括二进制文件 发布版本和依赖项 来看 我真正关心的是特定路径 与其他所有数据相比 该路径实际上具有非常小的历史记录 到目
  • Xcode 10 不支持 SVN (Subversion)

    新安装的Xcode 10 测试版版本 看不到 SVN 的选项Xcode gt Preferences gt Source Control 我可以单独看到 Git 我猜 Xcode 10 删除了 SVN GUI 而是仅支持 Git 或者我错过
  • 如何统计SVN分支中更改或添加的行数?

    我想将 SVN 分支中的行更改数量相加 这样我就可以从另一方知道我在项目过程中走了多远 并估计当我将其与主干合并时发生冲突的概率 我能想到的方法是获取统一的 diff 并进行一些 grep wc l hack 但问题是很难分离不同的文件类型
  • svn:E155021:此客户端太旧,无法使用 xxx 处的工作副本(格式“31”)

    我正在尝试在 Spring Tool Suite 中导入一些 gradle 项目 我在我的 STS 中安装了 Subclipse 1 10 5 在我的机器上安装的 svn 客户端是 1 8 8 我已尝试在 Mac 上降级到 1 7 10 但
  • 在 Windows powershell 中使用 svn 缺少参数 -m

    我正在尝试在 Windows PowerShell 上运行它 svn ci m directory name 但它返回 svn E205005 日志消息是一个路径名 F 是故意的吗 使用 force log 覆盖 我尝试 cd 该目录并在没
  • 更改 Subversion 错误消息的语言

    由于某种原因 subversion 返回了我认为是德语的错误消息 svn up svn Zielpfad existiert nicht 不幸的是 我不懂那种语言 在我诉诸使用在线翻译引擎来解决这个问题之前 我想我会尝试修复它 我想我只是做
  • AnkhSVN 和 VisualSVN 可以同时使用吗?

    我想尝试 AnkhSVN 的一项功能 即与 Red Gate SQL Changeset 工具集成 而无需完全卸载 VisualSVN 这感觉很危险 所以我想看看其他人是否有经验可以减轻或证实我的恐惧 Update所以我尝试卸载 Visua
  • 修复颠覆中犯下的错误

    这似乎是人们可能想要用颠覆做的最基本的事情之一 但我使用版本控制系统的时间并不长 不知怎的 我似乎无法弄清楚这一点 而且我不知道在哪里svn文档看看 基本上 修订版 167 工作得很好 但我犯了一个错误 并将其提交为修订版 168 而且我不
  • git svn clone 在 Mac OS X 上失败:“名称为‘svn_delta’的临时文件已在使用中”

    我已经从 MacPorts 在我的 Mac 上安装了 git core svn 这给了我 git core 1 7 12 2 0 credential osxkeychain doc pcre python27 svn subversion
  • 如何在 svn 存储库中搜索任何修订版中是否存在文件

    如何搜索名为foo txt曾经提交到我的 svn 存储库 在任何修订版中 右键单击签出文件夹的根目录 gt TortoiseSVN gt 显示日志 您也可以在那里输入文件名
  • 当主干/分支/标签结构混乱时,如何从 Subversion 迁移到 Mercurial?

    我想将存储库从 Subversion 转换为 Mercurial 但是当我最初设置存储库时 我以最懒的方式完成了它 随着时间的推移 该结构不断变形和恶化 此时已有 5 年历史 尽管如此 我还是想保留尽可能多的历史 即使我必须弄脏并手动将东西
  • 如何隔离特定的颠覆修订版?

    我有一个已提交给 SVN trunk 的修订版 我想回滚它 但是 我想以某种方式保留更改 例如分支甚至补丁文件 有什么建议么 反向合并 我认为这就是这个术语 提交 仅此而已 对于 反向合并 部分 TSVN 有一个很酷的功能 称为 恢复到此版
  • Subversion:暂存文件以显式提交?

    我已经非常习惯 git 的方式 即必须接触要提交的每个文件 并且在执行此操作时仔细检查差异 现在在工作中我必须使用 svn 并且我总是不小心提交一些东西 有没有办法让 subversion 的行为像 git 一样 因为我必须明确告诉每个文件
  • 如何在 Eclipse 中使用 ssh 隧道设置 Subversion?

    我有一个远程服务器 在非标准 ssh 端口上托管我的 subversion 存储库 我想使用 Eclipse 的 subclipse 插件作为客户端来访问 SVN 存储库 我可以使用 svn specialssh 来访问存储库 其中spec
  • virtualenv、python 和 subversion

    我正在尝试在 python subversion SWIG 库中使用virtualenv no site packages环境 我怎样才能做到这一点 你可以从 svn 将其安装在 virtualenv 中 source home you v
  • Eclipse、Subclipse 1.8.2、SVN 1.7.0 每次操作都要求输入密码

    我安装新的后日食靛蓝 它会要求我输入密码SVN存储库透视图 例如 浏览每个文件夹并再次询问密码 正常使用SVNKit 它要求输入密码每次会话一次 SVNKit 不支持SVN 1 7 0 yet 我该如何解决这个问题 或者这是 JavaHL
  • 在 SVN 存储库中导入 Android Studio 项目的正确方法是什么?

    我正在尝试在 SVN 存储库中导入 Android Studio 项目 我显然尝试过 VCS gt 导入到版本控制 gt 导入到 Subversion 但问题是 即使取消选中Include ignored resources框内 软件不断将
  • 有没有办法过滤掉 TortoiseSVN 日志中仅属性的更改?

    SVN 的 mergeinfo 功能确实很有用 但是当文件上的所有更改都是 svn 属性时 它会在修订日志中放置一个日志条目 而我们通常不希望看到这些 有没有办法过滤掉 TortoiseSVN 日志中仅属性的更改 拉起日志 选择您要比较的两
  • 贾瓦尔 (JNI) 不可用

    Windows 7 64 位 Eclipse Indigo SlickSVN 1 6 17 均已安装 并带有在 Windows 中输入的库的路径 为什么我收到消息 JAVAHL JNI Not available 以及为什么 Eclipse

随机推荐

  • 如何使用SQL Profiler 性能分析器

    http blog csdn net ylqmf article details 6541625 ysql 的 sql 性能分析器主要用途是显示 sql 执行的整个过程中各项资源的使用情况 分析器可以更好的展示出不良 SQL 的性能问题所在
  • magento中生成https链接的简单方法

    有关magento中https的基础知识 xff0c 请看 magento中的启用https 如果是在项目的后期才决定采用https xff0c 那么就要面临一个问题 xff1a 大量的生成url的代码需要修改 xff0c 这是一个很大的工
  • 树莓派无屏幕连接WiFi

    将刷好 Raspbian 系统的 SD 卡用电脑读取 在 boot 分区 xff0c 也就是树莓派的 boot 目录下新建 wpa supplicant conf 文件 xff0c 按照下面的参考格式填入内容并保存 wpa supplica
  • MySQL数据库存储引擎MyISAM和InnoDB的对比详解

    http www mysqlops com 2011 12 09 myisam E5 92 8Cinnodb E5 AF B9 E6 AF 94 E8 AF A6 E8 A7 A3 html 之前Eugene兄已经写过两篇关于myisam转
  • 为什么magento的rewrite方法对抽象类无效

    magento中 xff0c 是没法通过Mage getModel 34 xx xx 34 配合xml中的 lt rewrite gt 实现abstruct class的rewrite 为什么 xff1f 这需要详细了解一下magento中
  • magento中在.htaccess设置website code

    在 htaccess中 xff0c 添加以下的内容 xff1a SetEnvIf Host www newjueqi com MAGE RUN CODE 61 newjueqi SetEnvIf Host www newjueqi com
  • apache两种工作模式详解

    http blog chinaunix net space php uid 61 20541969 amp do 61 blog amp id 61 351485 刚接触这两个配置时很迷糊 xff0c 全部开启或全部注释没有几多变化 今天搜
  • Apache处理http请求的生命周期

    Apache请求处理循环详解 Apache请求处理循环的11个阶段都做了哪些事情呢 xff1f 1 Post Read Request阶段 在正常请求处理流程中 xff0c 这是模块可以插入钩子的第一个阶段 对于那些想很早进入处理请求的模块
  • 提高MySQL插入记录的速度

    http hi baidu com jackbillow blog item 65ea47248f645521d50742e7 html 在myisam engine下 1 尽量使用insert into table name values
  • 最常用的http状态码

    200 OK 找到了该资源 xff0c 并且一切正常 202 Accepted 服务器已接受请求 xff0c 但尚未处理 amp bsp 301 Moved Permanently 被请求的资源已永久移动到新位置 302 Found 请求的
  • shell中通过ftp批量上传文件

    为了在shell中上传文件 xff0c 需要避免在控制台中通过交互的方式输入ftp的登录密码 xff0c 这时要安装一个强大的ftp命令行工具 xff1a lftp xff0c 通过lftp登录ftp服务器的格式如下 xff1a lftp
  • 你可能不了解的strtotime函数

    出处 xff1a http www phppan com 2011 06 php strtotime 作者 xff1a 胖胖 在前面的文章中 xff0c 我们提到strtotime函数在使用strtotime 1 month 求上一个月的今
  • PHP的词法解析器:re2c

    出处 xff1a http www phppan com 2011 09 php lexical re2c 作者 xff1a 胖胖 re2c是一个扫描器制作工具 xff0c 可以创建非常快速灵活的扫描器 它可以产生高效代码 xff0c 基于
  • 由浅入深探究mysql索引结构原理、性能分析与优化

    出处 xff1a http www phpben com post 61 74 摘要 xff1a 第一部分 xff1a 基础知识 第二部分 xff1a MYISAM 和 INNODB 索引结构 1 简单介绍 B tree B 43 tree
  • php的strtotime函数源码分析

    最近想实现一个多语言版的strtotime函数 xff0c 所以阅读了php源码中strtotime函数的实现 xff0c 很感谢 胖胖 大大的文章 xff08 http www phppan com 2011 06 php strtoti
  • 新浪微博,腾讯微博mysql数据库主表猜想

    出处 http blog csdn net cleanfield article details 6339428 注意 xff0c 原文下面的评论也是难得的学习资料 xff0c 千万不能错过 用户信息表 xff08 t user info
  • linux shell 常见的时间戳操作

    获取当前的时间戳 span class hljs keyword date span 43 span class hljs variable s span 获取某个时间点的时间戳 span class hljs keyword date s
  • Mantis: SVN integration in 1.2.x

    http blog crazytje be mantis svn integration in the 1 2 x Recently I upgrade my mantis version from 1 1 8 to 1 2 6 first
  • Mantis SVN Integration : Adding extra info to the Note

    http blog crazytje be mantis svn integration adding extra info to the note In my previous post I talked about Mantis and
  • 一次向svn中增加所有新增文件 svn add all new files

    http wp4d sinaapp com 2012 02 19 E4 B8 80 E6 AC A1 E5 90 91svn E4 B8 AD E5 A2 9E E5 8A A0 E6 89 80 E6 9C 89 E6 96 B0 E5