Linux 下SVN新手操作手册

下面来介绍Linux 下 SVN操作方法:

1、SVN的安装

Centos 7 安装Subversion

sudo yum -y install subversion

Ubuntu 安装Subversion

sudo apt-get install subversion

自定义安装,官方地址:https://subversion.apache.org/

2、SVN的使用

2.1、Checkout

svn checkout URL [目录]//不指定目录
svn checkout svn://192.168.1.1/project
//指定目录
svn checkout svn://192.168.1.1/project test
//下载到当前目录
svn checkout svn://192.168.1.1/project ./

注:目录可以有,也可以没有;若本地目录已有文件/目录,一般会有冲突,得解决冲突;一般建议将有完整项目文件的本地作为源数据上传,这就会友好此。

2.2 Update

svn update [文件或目录]//更新当前目录
svn update ./
//更新具体文件
svn update ./test.txt//更新到某个版本
svn update -r m path//将版本库中的文件test.php还原到版本200
svn update -r 200 ./test.php

注:如果在提交的时候提示过期的话,是因为冲突,需要先update,修改文件,然后清除 svn resolved,最后再提交commit 

2.3 Add

svn add [文件或目录]//添加某目录
svn add ./test
//添加某文件
svn add ./test.txt
//添加当前目录下所有的php文件
svn  add  *.php

请指定要添加的文件或目录,批量添加如下:

# 批量添加所有新文件到版本控制
svn add * --force*代表当前目录下的所有文件和目录,--force参数确保svn也检查子目录。
注意,这不会添加已经被忽略的文件(即在.svnignore中指定的文件)

2.4 Commit

//将本地更改提交到仓库
svn commit -m "提交信息" [文件或目录]
//提交某文件
svn commit -m "提交信息" ./test.txt

若提交时碰到如下提示:

在操作命令后加上“--force-log”,如下:

注:

a、-m “提交信息” 是必须提供的,用于描述本次提交的内容或目的;
b、[文件或目录] 是可选参数,指定要提交的特定文件或目录。如果不指定,则提交当前目录下的所有更改。

2.5 Delete

//从版本控制中删除文件或目录。
svn delete [文件或目录] -m “delete test file”//单个删除
svn delete 1.txt
# 批量删除方法
svn delete 1.txt 2.txt//删除文件加备注
svn delete path -m “delete test fle“//单个删除
svn delete 1.txt -m “delete test file”
# 批量删除方法
svn delete 1.txt 2.txt -m “delete test file”

2.6 Revert

//撤销对文件或目录的本地更改
svn revert [文件或目录]# 当前目录下递归地还原所有修改过的文件,包括子目录下的文件
svn revert -R .

 注:[文件或目录] 指定要还原的文件或目录。如果要还原所有更改,可以使用递归选项 -R

2.7 Diff

//查看文件的更改详情,将修改的文件与基础版本比较
svn diff [文件]//示例
svn diff test.php//对版本m和版本n比较差异
svn diff -r m:n path//示例
svn diff -r 200:201 test.php

注:[文件] 是可选参数,指定要查看差异的文件。如果不指定,则显示所有更改的文件的差异。 

2.8 Log

//查看仓库的提交历史
svn log [文件或目录]

注:[文件或目录] 是可选参数,指定要查看历史的特定文件或目录;显示这个文件的所有修改记录,及其版本号的变化

2.9 Status 

//查看本地副本的状态
svn status [path]# svn status 命令可以用来查看工作副本中文件和目录的状态。下面是一些可能的状态标识及其含义:
A - Added(已添加):文件或目录是新添加的,尚未被提交到版本库。
C - Conflict(冲突):文件出现了冲突,需要解决冲突后才能继续操作。
D - Deleted(已删除):文件或目录被删除,但尚未提交删除操作。
I - Ignored(已忽略):文件或目录被设置为被忽略,不会被版本控制跟踪。
M - Modified(已修改):文件已经被修改过。
R - Replaced(已替换):文件被替换。
X - External(外部定义):目录是外部定义的。
K :被锁定
? - Not under version control(未加入版本控制):文件或目录未被添加到版本控制中。
! - Missing(缺失):文件或目录在工作副本中存在,但磁盘上已经不存在。//显示文件和子目录状态
svn status -v path//第一列保持相同,第二列显示工作版本号,第三和第四列显示最后一次修改的版本号和修改人。

注:svn status、svn diff和 svn revert这三条命令在没有网络的情况下也可以执行的,原因是svn在本地的.svn中保留了本地版本的原始拷贝。 

2.10 Info

//获取文件或目录的版本控制信息
svn info [文件或目录]

注:[文件或目录] 是可选参数,指定要获取信息的文件或目录。 

2.11 resolved

// 标记冲突为解决
svn resolved [文件路径]

 注: 本子命令不会依语法来解决冲突或是移除冲突标记;它只是移除冲突的
相关文件,然后让 PATH 可以再次提交。

 2.12 lock/unlock

//加锁
svn lock -m “LockMessage“  [ --force ] PATH
//加锁示例
svn lock -m “lock test file“ test.php//解锁
svn unlock PATH

2.13 merge

//合并
svn merge -r m:n path//示例
svn merge -r 200:205 test.php

 注:将版本200与205之间的差异合并到当前文件,但是一般都会产生冲突,需要处理一下

2.14 list

//版本库下的文件和目录列表
svn list path

注:显示path目录下的所有属于版本库的文件和目录

2.25 help

SVN 帮助

2.26 mkdir

//创建纳入版本控制下的新目录
svn mkdirsvn mkdir PATH//创建版本控制的目录
svn mkdir URL

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/890558.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ArcGIS Pro 3.4新功能3:空间统计新特性,基于森林和增强分类与回归,过滤空间自相关

目录 应用 1:它是相关性还是托布勒第一定律? 应用 2:将空间带入非空间模型 结论 在 ArcGIS Pro 3.4 中,我们在新的空间组件实用程序(Moran 特征向量)工具集中发布了一个新工具 - 从字段过滤空间自相关。…

自定义一个maven骨架 | 最佳实践

自定义一个maven骨架 | 最佳实践 目的:将一个多模块项目的基础结构制作成maven骨架,实现项目的快速构建,风格统一 公司内部会制定自己的规范及包结构。当创建新项目的时候就需要选择骨架,即可生成包结构。 Archetype都为不同类型的…

CTFHUB-web进阶(Bypassdisable_function)

LD_PRELOAD 来到首页发现有一句话直接就可以用蚁剑连接 根目录里有/flag但是不能看;命令也被ban了就需要绕过了 绕过工具在插件市场就可以下载 如果进不去的话 项目地址: #本地仓库;插件存放 antSword\antData\plugins 绕过选择 上传后我们点进去可以看到多了一个绕过的文件;…

workman服务端开发模式-GatewayWorker的使用

一、GatewayWorker介绍 Workerman是一个使用PHP开发的高性能组件,用于构建高性能的异步并发TCP、UDP、Unix Socket、HTTP、Websocket服务。 GatewayWorker是基于Workerman开发的一套TCP长连接的应用框架,实现了单发、群发、广播等接口,内置了…

oracle linux8.10+ oracle 23ai安装

介质准备: 数据库23ai https://edelivery.oracle.com 上述网站下载基础版本,本次未使用。 本次是安装了带补丁的版本: Database Release Update 23.6.0.24.10 GoldImage表示带补丁用于直接安装的软件包 查找888.1对应Primary Note for …

《软件设计的哲学》阅读摘要之设计原则

《软件设计的哲学》(A Philosophy of Software Design)是一本在软件架构与设计领域颇具影响力的书籍,作者 John Ousterhout 在书中分享了诸多深刻且实用的软件设计理念。书中列举的这些设计原则,汇聚了作者丰富的实战经验与深邃的…

uniApp打包H5发布到服务器(docker)

使用docker部署uniApp打包后的H5项目记录,好像和VUE项目打包没什么区别... 用HX打开项目,首先调整manifest.json文件 开始用HX打包 填服务器域名和端口号~ 打包完成后可以看到控制台信息 我们可以在web文件夹下拿到下面打包好的静态文件 用FinalShell或…

项目实战——高并发内存池

一.项目介绍 本项目——高并发内存池,是通过学习并模仿简化 google 的一个开源项目 tcmalloc ,全称 Thread-Caching Malloc,即线程缓存的malloc,模拟实现了一个自己的高并发内存池,用于高效的多线程内存管理&#xff…

Apache Log4j漏洞复现

所用环境 宝塔云服务器 log4j2 是Apache的⼀个java日志框架,我们借助它进行日志相关操作管理,然而在2021年末log4j2爆出了远程代码执行漏洞,属于严重等级的漏洞。 apache log4j通过定义每⼀条日志信息的级别能够更加细致地控制日志⽣成地过…

自动驾驶控制算法-横向误差微分方程LQR前馈控制

本文是学习自动驾驶控制算法第六讲 前馈控制与航向误差以及前两节的学习笔记。 1 横向误差微分方程 以规划的轨迹作为自然坐标系,计算自车在轨迹上的投影点,进而计算误差: 如图所示,横向误差为 d d d,航向误差为 θ…

Apache RocketMQ 5.1.3安装部署文档

官方文档不好使,可以说是一坨… 关键词:Apache RocketMQ 5.0 JDK 17 废话少说,开整。 1.版本 官网地址,版本如下。 https://rocketmq.apache.org/download2.配置文件 2.1namesrv端口 在ROCKETMQ_HOME/conf下 新增namesrv.pro…

Google Cloud Kubernetes Anthos是什么,和Istio有什么关联

Google Cloud Platform (GCP) Kubernetes Anthos 是 Google 推出的一种多云管理平台,基于 Kubernetes,旨在帮助企业在多个云环境中管理和运行容器化应用程序。 https://cloud.google.com/blog/topics/hybrid-cloud/5-frequently-asked-questions-about-…

多摩川编码器协议

多摩川编码器是一种常用的绝对值编码器,其协议基于485硬件接口的标准NRZ协议,通讯波特率为固定的2.5Mbps。以下是多摩川编码器协议的详细说明: 硬件接口 多摩川编码器使用RS485接口进行通信,接口定义如下: 5V供电&…

AI新书推荐:深度学习和大模型原理与实践(清华社)

本书简介 在这个信息爆炸、技术革新日新月异的时代,深度学习作为人工智能领域的重要分支,正引领着新一轮的技术革命。《深度学习和大模型原理与实践》一书,旨在为读者提供深度学习及其大模型技术的全面知识和实践应用的指南。 本书特色在于…

webrtc音频模块(三) windows Core Audio API及声音的播放

在前面介绍了ADM(Audio Device Module),它用于抽象音频设备管理和音频数据采集/播放接口。windows的实现是AudioDeviceWinowCode,它封装了Core Audio APIs实现了对音频设备的操作。 Core Audio APIs windows提供了多种音频操作API,比如最常…

cursor保存更改操作技巧

1. 当我们在agent模式时,要求cursor更改代码时,cursor回答后,就已经更改了代码了,这时候就可以对程序进行编译和测试, 不一定先要点” accept“, 先测试如果没有问题再点“accept”,这样composer就会多一条…

运维工程师面试系统监控与优化自动化与脚本云计算的理解虚拟化技术的优点和缺点

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默, 忍不住分享一下给大家。点击跳转到网站 学习总结 1、掌握 JAVA入门到进阶知识(持续写作中……) 2、学会Oracle数据库入门到入土用法(创作中……) 3、手把…

2.在 Vue 3 中使用 ECharts 实现动态时间轴效果

在前端开发中,时间轴(Timeline)是一种常见且有效的方式来展示时间相关的数据。在本篇文章中,我们将展示如何在 Vue 3 项目中使用 ECharts 创建一个具有动态时间范围的时间轴,并添加了今日时间的标记以及通过按钮来前进…

Android修行手册 - 移动端几种常用动画方案对比

Unity3D特效百例案例项目实战源码Android-Unity实战问题汇总游戏脚本-辅助自动化Android控件全解手册再战Android系列Scratch编程案例软考全系列Unity3D学习专栏蓝桥系列ChatGPT和AIGC 👉关于作者 专注于Android/Unity和各种游戏开发技巧,以及各种资源分…

Java日志框架:log4j、log4j2、logback

文章目录 配置文件相关1. properties测试 2. XMl使用Dom4j解析XML Log4j与Log4j2日志门面 一、Log4j1.1 Logges1.2 Appenders1.3 Layouts1.4 使用1.5 配置文件详解1.5.1 配置根目录1.5.2 配置日志信息输出目的地Appender1.5.3 输出格式设置 二、Log4j22.1 XML配置文件解析2.2 使…