逐浪CLI Studio技术站

vuePress-theme-reco 逐浪CMS发哥    2020 - 2021
逐浪CLI Studio技术站 逐浪CLI Studio技术站

Choose mode

  • dark
  • auto
  • light
首页
导览
  • vue
  • 证书
  • bootstrap
  • css
  • 开发
  • 微软技术
  • windows
  • C#
  • cms
  • 安全
  • 数据库
  • 网络
Bootstrap-Vue
视频
时间线
Bootstrap中国站
下载逐浪CMS
Contact
  • NPM
  • GitHub
  • 73ic工具站
  • 在线Markdown
  • Vs code技巧
  • zico图标
  • 逐浪字库
  • UNI国际字码表
  • 关于逐浪
  • 企业歌曲
author-avatar

逐浪CMS发哥

34

文章

94

标签

首页
导览
  • vue
  • 证书
  • bootstrap
  • css
  • 开发
  • 微软技术
  • windows
  • C#
  • cms
  • 安全
  • 数据库
  • 网络
Bootstrap-Vue
视频
时间线
Bootstrap中国站
下载逐浪CMS
Contact
  • NPM
  • GitHub
  • 73ic工具站
  • 在线Markdown
  • Vs code技巧
  • zico图标
  • 逐浪字库
  • UNI国际字码表
  • 关于逐浪
  • 企业歌曲
  • build

    • C#与dotNET项目想要另存为一个新项目sln文件丢了怎么办
    • CefSharp-基于cSharp的客户端开发框架技术栈开发全记录
    • SVN设置忽略文件列表以及丢失了预定增加的文件解决方法
    • TortoiseSVN管理与命令操作大全
      • TortoiseSVN命令
        • 检出
        • 更新
        • 更新到版本
        • 提交
        • 差异
        • 显示日志
        • 检查修改
        • 版本图
        • 版本库浏览器
        • 编辑冲突
        • 已解决
        • 改名
        • 删除
        • 恢复
        • 清理
        • 获得锁
        • 释放锁
        • 分支/标记
        • 切换
        • 合并
        • 输出
        • 重新定位
        • 在当前位置创建版本库
        • 添加
        • 导入
        • 追溯
        • 加入忽略列表
        • 创建补丁
        • 应用补丁(Apply Patch)
      • 扩展阅读:SVN设置忽略文件列表以及丢失了预定增加的文件解决方法
    • Windows应用开发中程序窗口中的各种图标尺寸
    • dotNET5的MVC页面传值方式总结
    • dotNET开发之MVC中Controller返回值类型ActionResult方法总结
    • 后台大哥请进一步:使用Visual Studio编译scss和souce map实现前后端的完美结合
    • Visual Studio中使用Macros插件给代码添加注释、时间和以及自动脚本
    • 在vs2017和vs2019下发布应用之Windows程序打包-附图标修改和默认安装路径定义全教程
    • 基于WPF的酷炫GUI窗口的实现全过程
    • 基于dotNET 5 MVC经典模式引入Swagger进行web api开发和管理发布OAS3标准接口文档全过程
    • 增强的逐浪CMS安全以及解决ASP.NET从客户端中检测到有潜在危险的 Request.Form值错误全过程演示
    • 如何修改visual-studio的sln文件和project工程名

TortoiseSVN管理与命令操作大全

vuePress-theme-reco 逐浪CMS发哥    2020 - 2021

TortoiseSVN管理与命令操作大全


逐浪CMS发哥 2020-08-12 svn 管理 命令 版权
  • TortoiseSVN命令
    • 检出
    • 更新
    • 更新到版本
    • 提交
    • 差异
    • 显示日志
    • 检查修改
    • 版本图
    • 版本库浏览器
    • 编辑冲突
    • 已解决
    • 改名
    • 删除
    • 恢复
    • 清理
    • 获得锁
    • 释放锁
    • 分支/标记
    • 切换
    • 合并
    • 输出
    • 重新定位
    • 在当前位置创建版本库
    • 添加
    • 导入
    • 追溯
    • 加入忽略列表
    • 创建补丁
    • 应用补丁(Apply Patch)
  • 扩展阅读:SVN设置忽略文件列表以及丢失了预定增加的文件解决方法

# TortoiseSVN命令

# 检出

svn checkout [-depth ARG] [--ignore-externals] [-r rev] URL PATH
1

深度选项框跟-depth参数相关

如果希望忽略外部被选中,使用--ignore-externals选型。

如果你正在检出特定的修订版本,在URL后使用-r指定。

# 更新

svn info URL_of_WC
svn update [-r rev] PATH
1
2

更新多个项目在Subversion还不是原子操作,所以TortoiseSVN会首先找到版本库的HEAD修订版本,然后将所有项目更新到特定修订版本,防止出现混合修订版本的工作副本。

如果只有一个项目被选中更新,或选中的项目来自不同的版本库,TortoiseSVN只会更新到HEAD。

没有使用命令行选项,更新到修订版本也实现了更新命令,但提供了更多的选项。

# 更新到版本

svn info URL_of_WC
svn update [-r rev] [-depth ARG] [--ignore-externals] PATH
1
2

深度选项框跟-depth参数相关

如果希望忽略外部被选中,使用--ignore-externals选型。

# 提交

在TortoiseSVN,提交对话框使用Subversion命令,第一部分是检查工作副本哪些文件可能被提交,然后你可以检查列表,比较与BASE的区别,选择你希望提交包含的项目。

svn status -v PATH
1

如果选择了显示未版本控制的文件,TortoiseSVN会遵循忽略规则显示工作目录中所有未版本控制的文件和文件夹。这个特性在Subversion中没有等价操作,因为svn status 命令不扫描未版本控制的文件夹。

如果你选择了未版本控制的文件和文件夹,这些项目都会先增加到你的工作副本。

svn add PATH...
1

当你点击确认,开始执行Subversion提交。如果你不修改所有的文件检查框,TortoiseSVN 会递归提交工作副本。如果你取消选择一些文件,那么就必须使用非递归提交 (-N) ,每个路径都必须在命令行上单独指定。

svn commit -m "LogMessage" [-depth ARG] [--no-unlock] PATH...
1

日志消息是日志编辑框的内容。它可以为空。

如果选择了保持锁,就使用--no-unlock开关。

# 差异

svn diff PATH
1

如果你在右键菜单使用差异,就会将修改的文件与基础版本比较。控制台的命令输出也是执行这个操作,输出统一差异格式。然而,TortoiseSVN并不采用这种方式。TortoiseSVN 使用TortoiseMerge (或者你选择的比较差异程序)可视化的全文显示差异,所以它没有相同的控制台操作。

你可以使用TortoiseSVN,比较任意两个文件的差异,不管他们是否受版本控制。TortoiseSVN只是把这两个文件传递给已经选择的比较差异程序,让它比较差异。

# 显示日志

svn log -v -r 0:N --limit 100 [--stop-on-copy] PATH
1

或

svn log -v -r M:N [--stop-on-copy] PATH
1

默认情况下,TortoiseSVN尝试用--limit方法取得100个日志消息。如果设置了让它使用旧借口,那么就使用第二种个是获得100个日志消息。

如果选择了停止于复制/改名,就使用--stop-on-copy开关。

# 检查修改

svn status -v PATH
1

或

svn status -u -v PATH
1

只在你的工作副本执行初始的状态检查。如果你点击检查版本库,那么也检查版本库,察看哪些文件会被更新操作修改,它需要-u开关。

如果选择了显示未版本控制的文件,TortoiseSVN会遵循忽略规则显示工作目录中所有未版本控制的文件和文件夹。这个特性在Subversion中没有等价操作,因为svn status 命令不扫描未版本控制的文件夹。

# 版本图

版本图是TortoiseSVN特有的,命令行客户端没有等价实现。

TortoiseSVN执行了这些操作

svn info URL_of_WC
svn log -v URL
1
2

其中URL是版本库的 根,然后分析返回数据。

# 版本库浏览器

svn info URL_of_WC
svn list [-r rev] -v URL
1
2

你可以使用svn info检查版本库的根,它在版本库浏览器的顶级显示。你不能浏览它的上级目录。同样,这个命令返回所有显示在版本库浏览器的锁信息。

给出URL和可选的版本号,svn list列出目录中的内容。

# 编辑冲突

这个命令没有控制台等价实现。它调用TortoiseMerge或者外部三路差异/合并工具察看棘手的冲突,挑选出冲突行。

# 已解决

svn resolved PATH
1

# 改名

svn rename CURR_PATH NEW_PATH
1

# 删除

svn delete PATH
1

# 恢复

svn status -v PATH
1

首先开始状态检查,察看你的工作副本有哪些项目可以被撤销。你可以复审文件列表,检查这些文件的修改,然后选择你要撤销的项目。

当你点击确认时,开始Subversion撤销操作。如果你不修改所有的文件检查框,TortoiseSVN 会递归撤销 (-R)工作副本的修改。如果你取消选择一些文件,那么就必须使用非递归撤销 ,每个路径都必须在命令行上单独指定。"

svn revert [-R] PATH...
1

# 清理

svn cleanup PATH
1

# 获得锁

svn status -v PATH
1

首先开始状态检查,察看你的工作副本有哪些项目可以被加锁。你可以选择想加锁的项目。

svn lock -m "LockMessage" [--force] PATH...
1

加锁信息是加锁编辑框的内容。它可以为空。"

如果选择了强制锁定 ,就使用--force开关。

# 释放锁

svn unlock PATH
1

# 分支/标记

svn copy -m "LogMessage" URL URL
1

或

svn copy -m "LogMessage" URL@rev URL@rev
1

或

svn copy -m "LogMessage" PATH URL
1

分支/标签对话框在版本库执行复制。有三个单选按钮:

版本库中的最新版本 指定版本库中的版本 工作副本 对应上面的三个命令行参数。

日志消息是日志编辑框的内容。它可以为空。

# 切换

svn info URL_of_WC
svn switch [-r rev] URL PATH
1
2

# 合并

svn merge [--dry-run] --force From_URL@revN To_URL@revM PATH
1

测试合并与使用--dry-run选项的合并相同。

svn diff From_URL@revN To_URL@revM
1

Unified diff显示了用来合并的区别操作。

# 输出

svn export [-r rev] [--ignore-externals] URL Export_PATH
1

这个形式是当从一个未版本控制目录访问,并且文件夹作为目标。

导出一个工作副本到一个目录没有使用Subversion的库,所以没有等同的命令行匹配。

TortoiseSVN做的只是将所有文件复制到一个新的位置,并且会显示操作的过程。未版本控制的文件/文件夹也可以被导出。

在两种情况下,如果Omit externals被选中,就相当于使用了--ignore-externals选项。

# 重新定位

svn switch --relocate From_URL To_URL
1

# 在当前位置创建版本库

svnadmin create --fs-type fsfs PATH
1

# 添加

svn add PATH...
1

如果选择了一个文件夹,TortoiseSVN会首先会递归的访问可以添加的条目。

# 导入

svn import -m LogMessage PATH URL
1

日志消息是日志编辑框的内容。它可以为空。

# 追溯

svn blame -r N:M -v PATH
svn log -r N:M PATH
1
2

如果你使用TortoiseBlame来查看追溯信息,文件日志也需要在工具提示上显示日志信息,如果你以文件方式查看追溯,这个信息是不需要的。

# 加入忽略列表

svn propget svn:ignore PATH > tempfile
{编辑新的忽略内容到tempfile文件中}
svn propset svn:ignore -F tempfile PATH
1
2
3

因为svn:ignore属性通常是多行的,这里是通过文件显示所修改的内容,而不是直接使用命令行操作。

# 创建补丁

svn diff PATH > patch-file
1

TortoiseSVN通过比较工作拷贝和基础版本(BASE version),使用统一的diff(差异)格式创一个补丁文件。

# 应用补丁(Apply Patch)

如果补丁和工作副本不是同一版本的话,那么应用补丁会是一件很棘手的事情。幸运的是,你可以使用 TortoiseMerge(在Subversion中没有等同的工具)。

# 扩展阅读:SVN设置忽略文件列表以及丢失了预定增加的文件解决方法

SVN设置忽略文件列表以及丢失了预定增加的文件解决方法