Linux下SVN客户端基本使用教程-使用命令

2023-11-04

Subversion(SVN)是一个版本控制系统,用于管理文件和目录的历史记录。在 Linux 中,SVN 客户端提供了一组命令,用于与 SVN 服务器交互、检出、提交、更新和管理版本控制项目。以下是一些 Linux SVN 客户端常用的命令及其详细介绍:

将文件checkout到本地目录

1. svn checkout

svn checkout 命令用于从 SVN 仓库检出(下载)项目的一个副本到本地工作目录。语法如下:

svn checkout URL

示例:

svn checkout https://svn.example.com/svn/myproject

svn checkout svn_path local_path

//例如:

svn checkout svn://10.16.3.219/53 ~/53SVN

//简写

svn co svn://10.16.3.219/53   不写local_path 默认当前目录

更新

2. svn update

svn update 命令用于更新本地工作副本,以便与 SVN 仓库中的最新版本保持同步。语法如下:

svn update [path]

示例:

svn update

提交修改

3. svn commit

svn commit 命令用于将本地修改提交到 SVN 仓库。通常需要提供一个提交消息,以便其他开发人员了解修改的内容。语法如下:

svn commit -m "提交消息" [path]

示例:

svn commit -m "修复了一个 bug"

添加新文件

4. svn add

svn add 命令用于将新文件或目录添加到 SVN 版本控制。语法如下:

svn add [path]

示例:

svn add newfile.txt

删除

5. svn delete (或 svn remove)

svn delete 命令用于从 SVN 版本控制中删除文件或目录。语法如下:

svn delete [path]

示例:

svn delete oldfile.txt

显示状态

6. svn status

svn status 命令用于显示本地工作副本的状态,包括未提交的修改、添加和删除。语法如下:

svn status [path]

示例:

svn status

日志

7. svn log

svn log 命令用于查看 SVN 仓库的提交日志。可以查看每个提交的作者、日期、提交消息等信息。语法如下:

svn log [path]

示例:

svn log

废弃修改

8. svn revert

svn revert 命令用于取消对文件的本地修改,恢复文件到最后一次提交的状态。语法如下:

svn revert [path]

示例:

svn revert myfile.txt

信息

9. svn info

svn info 命令用于查看工作副本或文件的详细信息,包括 URL、版本号、作者等。语法如下:

svn info [path]

示例:

svn info myfile.txt

常用组合命令

废弃更改

如果你改动了本地仓库的代码,但是又不想上传SVN可以使用如下命令废弃掉修改过的文件,废弃更改:

恢复修改过的文件

svn st | awk '{if ($1 == "M") {print $2}}' |xargs svn revert

当前目录都revert

svn revert . -R

有新增文件时如何commit

commit时,如果有新增文件,直接使用命令svn st | awk '{if ($1 == "?") {print $2} }' | xargs svn add 将新增的文件添加到SVN 后再commit。

如果有要删除的问题要先执行svn st | awk '{if ($1 == "!") {print $2}}' | xargs svn rm 将要删除的文件删除后再commit。

如果你的修改没有增加或者删除问题件,直接commit就行了。

往版本库添加新的文件

svn add file //例如(添加test.php): svn add test.php //添加当前目录下所有的php文件 svn add *.php //添加user目录(同时将目录下所有内容(递归)添加) svn add user

添加完成以后需要提交到版本库。

把所有文件添加到版本库

svn add . --no-ignore --force

将改动的文件提交到版本库

svn commit -m '注释内容' [-N] [--no-unlock] PATH //简写 svn ci //提交文件夹及目录 svn ci -m '添加新文件' test.php svn ci -m '添加新目录(递归)' user

svn ci -m '添加新文件' *

这个命令只会commit SVN仓库上已有的软件,不会把新增的文件和删除的问题commit上去

查看日志

svn log PATH //例如: //显示这个文件的修改记录,及版本号的变化 svn log svn log test.php

svn log |head -n 30

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

Linux下SVN客户端基本使用教程-使用命令 的相关文章

随机推荐

  • nginx参数tcp_nopush和tcp_nodelay

    参数说明 你的数据传输并不需要总是准确地遵守某一选项或者其它选择 在那种情况下 你可能想要采取更为灵活的措施来控制网络连接 在发送一系列当作单一消息的数据之前设置TCP CORK 而且在发送应立即发出的短消息之前设置TCP NODELAY
  • Mybatis 个人总结

    目录 MyBatis 框架 第一章 框架的概述 1 三层架构 2 三层架构处理的流程 3 为什么使用三层架构 4 三层框架模式和框架 5 框架 6 框架解决的问题 7 jdbc访问数据库的优缺点 8 Mybatis框架 第二章 Mybati
  • H3C配置ssh密码认证登录

    注 在用户使用SSH登录交换机时 交换机对所要登录的用户使用密码对其进行身份验证 生成RSA和DSA密钥对 H3C rsa local key pair create H3C public key local create dsa 设置用户
  • MinGW-w64 C/C++编译器下载和安装

    目录 1 安装包下载 方法一 下载Installer在线安装 费时 方法二 下载离线包 较快 2 环境变量配置 3 小试牛刀 如果电脑没有安装MinGW w64 C C 编译器 在Windows的命令窗口键入gcc会提示 gcc 不是内部或
  • 单元测试_接口测试用例设计思路

    下图是 单元测试之道Java版 的脑图笔记 加上在工作中的总结
  • 重置标准输出

    import org apache log4j Appender import org apache log4j Logger import org apache log4j WriterAppender import java io Bu
  • 配置IDEA下springboot项目显示Run Dashboard面板

    在 idea workspace xml 中搜索
  • Websocket协议解析与QT代码示例

    文章目录 1 Websocket是什么 2 Websocket诞生的原因 3 Websocket与HTTP的相同点与不同点 相同点 不同点 4 Websocket实现原理 5 Websocket代码示例 效果图 核心代码 6 Wiresha
  • openldap 2.3 安装配置详解

    安装逻辑 1 安装配置master 初始化数据 将系统账户导入ldap 详细见openldap自我整理下的 openldap安装注意 配置master slapd conf文件 replogfile var lib ldap openlda
  • 如何完全卸载VS2010

    1 首先用360卸载 当卸载完成后 提示有残余的话 就强力清除2 接着 下载IobitUninstaller工具3 按照下面进行卸载1 Microsoft NET Framework 4 框架 建议保留 很多东西会用到 1 1 Micros
  • 电子学会2022年12月青少年软件编程(图形化)等级考试试卷(四级)答案解析

    目录 一 单选题 共15题 共30分 二 判断题 共10题 共20分 三 编程题 共3题 共50分
  • Cannot resolve plugin org.apache.maven.plugins:maven-install-plugin:2.5.2

    项目场景 今天在创建springboot项目的时候 遇到一个与maven相关的报错 仅此记录一下 防止以后继续踩坑 问题描述 在idea gt settings设置maven的目录信息完后 就遇到了以下报错 原因分析 经排查后发现是自己的本
  • vs code 用户代码片段失效问题

    例如 vue1 scope javascript typescript prefix v1 body new Vue el data description Log output to console 注意 1 如果没有scope的话 试着
  • 【深度学习】yolov5+deepsort 完成计数和行人行人重识别的追踪

    文章目录 前言 1 知识体系 1 1 前置说明 1 2 Sort的工作流程 1 3 deepsort 2 实践应用 3 干货补充 总结 前言 行人重识别是计算机视觉的基本任务之一 首先要有一个detector 检测器来检测到目标 然后将检测
  • Multitor:一款带有负载均衡功能的多Tor实例创建工具

    关于Multitor Multitor是一款带有负载均衡功能的多Tor实例创建工具 Multitor的主要目的是以最快的速度完成大量Tor进程的初始化 并将大量实例应用到我们日常使用的程序中 例如Web浏览器和聊天工具等等 除此之外 在该工
  • Linux配置SSH无密码登录

    下文以配置2台主机无密码登录为例 本机名为master 另外一台机子名为slave1 1 配置主机名 分别修改2台机子的主机名为master和slave1 具体方法 CentOS修改主机名 hostname 2 配置hosts 在2台主机上
  • 媒体查询响应式布局

    移动端样式开始 移动端共用样式开始 media screen and min width 320px and max width 1169px 移动端共用样式结束 768 1169样式开始 1169根据设计图内容宽度来定 media scr
  • odoo13源码-004: models_1

    coding utf 8 Part of Odoo See LICENSE file for full copyright and licensing details Object Relational Mapping module Hie
  • 基于Qt5的计算器设计

    Qt5的信号与槽 描述 信号槽是 Qt 框架引以为豪的机制之一 所谓信号槽 实际就是观察者模式 发布 订阅模式 当某个事件发生之后 比如 按钮检测到自己被点击了一下 它就会发出一个信号 signal 这种发出是没有目的的 类似广播 如果有对
  • Linux下SVN客户端基本使用教程-使用命令

    Subversion SVN 是一个版本控制系统 用于管理文件和目录的历史记录 在 Linux 中 SVN 客户端提供了一组命令 用于与 SVN 服务器交互 检出 提交 更新和管理版本控制项目 以下是一些 Linux SVN 客户端常用的命