Linux下版本控制器(SVN) -命令行客户端

简介: Linux下版本控制器(SVN) -命令行客户端

image.png
@[toc]

进阶知识-Linux下版本控制器(SVN)

5、命令行客户端

5.1 创建两个工作区目录模拟两个开发人员

mkdir -p /root/workspace/harry
mkdir -p /root/workspace/sally

5.2 检出

  • 作用:完整下载版本库中的全部内容。

  • 命令:

    svn checkout svn://192.168.70.140/pro_oa ./
    
  • 附加效果

    • 在指定目录下创建.svn目录
    • 保存本地目录和文件状态信息,用来和SVN服务器进行交互
  • 工作副本

    • .svn所在的目录
    • 版本控制相关操作都需要在工作副本目录下执行。例如:提交、更新等等这样的操作。
    • 为了保证工作副本能够正常和服务器进行交互,请不要删除或修改.svn目

录中的内容。

5.3 添加

  • SVN要求提交一个新建的文件前先把这个文件添加到版本控制体系中。

    svn add文件名
    

5.4 提交

  • 要求1:附加日志信息

    • 日志信息相当于写Java代码时的注释,用来标记本次操作所做的修改。
    svn commit -m "xxx" [文件名]
    
  • 要求2:必须具备相应的权限

    • 使用文本编辑器打开版本库根目录/conf/svnserve.conf文件

image.png

[root@rich harry]# svn commit hello.txt
svn:提交失败(细节如下):svn:“/root/workspace/harry/hello.txt”尚未纳入版本控制
[root@rich harry]# svn add hello.txt
A hello.txt
[root@rich harry]# svn commit hello.txt
svn:提交失败(细节如下):
svn:无法使用外部编辑器获得日志信息;考虑设置环境变量 $SVN_EDITOR,或者使用--message (-m)或 --file (-F)选项
svn:没有设置 SVN_EDITOR,VISUAL或 EDITOR环境变量,运行时的配置参数中也没有“editor-cmd”选项
[root@rich harry]# svn commit -m "My first commit" hello.txt
svn:提交失败(细节如下):
svn:认证失败
[root@rich harry]# svn commit -m "My first commit" hello.txt
增加 hello.txt
传输文件数据.
提交后的版本为 1。

5.5 查看服务器端文件内容

[root@rich harry]# svn list svn://192.168.70.140/pro_oa
good.log
hello.txt

5.6 更新操作

  • 作用:把服务器端文件所产生的所有修改下载到本地
命令:svn update [文件名]

5.7 冲突

5.7.1 过时的文件

  • 概念:在一个相对服务器端版本来说是旧版本的基础上进行了修改的文件。

  • 要求:所有过时的文件都必须先执行更新操作,更新后在最新版基础上修改的

文件才允许提交。

5.7.2 冲突的产生

  • 条件1:本地当前编辑的文件已经过时。

  • 条件2:从服务器端更新下来的修改和本地的修改在“同文件同位置”不一致。

5.7.3 冲突的表现

  • 文件内

image.png

  • 目录内

image.png

xxx.mine文件:发生冲突时本地文件内容
xxx.r[小版本号]文件:发生冲突前文件内容
xxx.r[大版本号]文件:发生冲突时服务器端文件内容

5.7.4 冲突的手动解决

  • 第一步:删除冲突发生时产生的三个多余文件

  • 第二步:删除冲突文件内多余的符号

  • 第三步:把文件编辑到满意的状态

  • 第四步:提交

5.7.5 冲突的半自动解决

  • 设置SVN_EDITOR环境变量

image.png

vim /etc/profile
-------------------------------------------
SVN_EDITOR=/usr/bin/vim
export SVN_EDITOR
-------------------------------------------
source /etc/profileecho $SVN_EDITOR
  • 解决的过程

    • 使用e选项进入文件内容编辑界面

image.png

  • 进入vim编辑器编辑文件内容

image.png

  • 编辑完成后使用r选项标记为已解决

image.png

5.7.6 减少冲突的发生

  • 尽可能在修改文件前先进行更新操作,尽量在最新版基础上修改文件内容。

  • 尽量减少多人修改同一个文件的可能性。

  • 加强团队成员之间的沟通。

本人其他相关文章链接

1.Linux下版本控制器(SVN) -服务器端环境搭建步骤
2.Linux下版本控制器(SVN) -命令行客户端

image.png

重要信息

image.png
image.png
image.png
image.png

目录
相关文章
|
8天前
|
NoSQL IDE MongoDB
Studio 3T 2025.10 (macOS, Linux, Windows) - MongoDB 的终极 GUI、IDE 和 客户端
Studio 3T 2025.10 (macOS, Linux, Windows) - MongoDB 的终极 GUI、IDE 和 客户端
62 0
Studio 3T 2025.10 (macOS, Linux, Windows) - MongoDB 的终极 GUI、IDE 和 客户端
|
9天前
|
Linux
Linux下版本控制器(SVN) -服务器端环境搭建步骤
Linux下版本控制器(SVN) -服务器端环境搭建步骤
23 0
Linux下版本控制器(SVN) -服务器端环境搭建步骤
|
26天前
|
Linux 数据安全/隐私保护
使用Linux命令行接入无线网络Wi-Fi的示例。
现在,你已经使用命令行成功地连接到 Wi-Fi 网络了。这两个示例涵盖了用 `nmcli` 和 `wpa_supplicant` 连接无线网络的常见场景,让你能够不依赖图形化界面来完成这个任务。在日常使用中熟练掌握这些基本操作能增强你对 Linux 系统的理解,帮助你更有效地处理各种问题。
57 12
|
2月前
|
运维 安全 Linux
试试Linux设备命令行运维工具——Wowkey
WowKey 是一款专为 Linux 设备设计的命令行运维工具,提供自动化、批量化、标准化、简单化的运维解决方案。它简单易用、高效集成且无依赖,仅需 WIS 指令剧本文件、APT 账号密码文件和 wowkey 命令即可操作。通过分离鉴权内容与执行内容,WowKey 让运维人员专注于决策,摆脱繁琐的交互与执行细节工作,大幅提升运维效率与质量。无论是健康检查、数据采集还是配置更新,WowKey 都能助您轻松应对大规模设备运维挑战。立即从官方资源了解更多信息:https://atsight.top/training。
|
2月前
|
数据采集 运维 安全
Linux设备命令行运维工具WowKey问答
WowKey 是一款用于 Linux 设备运维的工具,可通过命令行手动或自动执行指令剧本,实现批量、标准化操作,如健康检查、数据采集、配置更新等。它简单易用,只需编写 WIS 指令剧本和 APT 帐号密码表文件,学习成本极低。支持不同流派的 Linux 系统,如 RHEL、Debian、SUSE 等,只要使用通用 Shell 命令即可通吃Linux设备。
|
2月前
|
SQL Linux 数据库
YashanDB Linux客户端安装
本文详细介绍了YashanDB客户端在Linux系统中的安装、使用与卸载步骤。安装方法包括适用于所有Linux平台的脚本安装和专用于CentOS的rpm安装。脚本安装需解压软件包并配置环境变量,而rpm安装则需以root用户执行相关命令。此外,文章还说明了如何通过yasql连接YashanDB并进行数据库操作,以及两种安装方式对应的卸载方法,帮助用户顺利完成客户端的管理与维护。
|
Ubuntu 安全 网络安全
百度搜索:蓝易云【Ubuntu系统SVN服务器搭建教程】
现在,你已经成功在Ubuntu系统上搭建了SVN服务器。其他用户可以通过SVN客户端连接到你的SVN服务器,进行代码版本管理和协作开发。注意,为了安全起见,建议配置SSL加密以保护数据传输。
151 1
|
存储 网络协议 Ubuntu
Linux环境下的SVN服务器搭建并结合内网穿透实现远程连接
Linux环境下的SVN服务器搭建并结合内网穿透实现远程连接
310 0
|
Apache 项目管理 数据安全/隐私保护
【cpolar】TortoiseSVN如何安装并实现公网提交文件到本地SVN服务器
【cpolar】TortoiseSVN如何安装并实现公网提交文件到本地SVN服务器
203 0
|
8月前
|
Linux 数据安全/隐私保护 Windows
centos 7.2 搭建svn服务器
centos 7.2 搭建svn服务器
293 0