SVN的基本使用
2020年7月6日
为什么需要版本控制?
- 需要清晰地保存某些文件的不同修订版本
- 控制文件的发屐过程,找出导致 BUG 的原因
- 轻松将项目或文件恢复到指定版本
- 极大方便团队之间协同开发,防止出现混乱
- 在工作中,时刻谨记“数据无价,再怎么备份也不足为过
SVN简介
SVN全称SubVersion,他属于C/S结构软件,SVN是一个自由与开源的版本控制系统。操作简单,入门容易、支持跨平台操作。它采用了分支管理系统。
服务端软件:VisuaISVN
客户端软件:Tortoisesvn
特点:
- 操作简单,入门容易
- 支持跨平台
- 支持版本回退
作用:
- 协作开发
- 远程开发
- 版本回退
svn的使用
安装svn,汉化后需要重启。
新建一个文件夹。svn介绍,然后此文件夹中新建一个文件夹svn版本库
右键,在此创建版本库。(这个就是我们的代码库)
选中程序员A,然后检出,版本库地址选版本库,然后检出到程序员A
然后程序员A新建了一个程序员1。
然后程序员B检出版本库。这样程序员B就有了程序员A的代码。
然后程序员B提交了自己修改后的代码。
然后程序员A进行svn更新。此时,就是程序员B修改后的代码。
然后程序员C进行检出版本库,那么此时就是B修改后的代码。
程序员C新建了一个程序员3.txt文件、
右键,然后提交svn。
接下来。程序员A或者程序员B直接更新,就可以获取到程序员3.txt
新建一个程序D,然后,检出。这样我们就有的了版本库中最新的代码。
添加文件:找到随便一个受svn控制的文件夹,在里面放你的文件,然后在这个受控制的文件上右键,提交即可实现。
删除文件:右键选择文件,点击删除(是svn里面的删除按钮),然后必须返回上级文件夹右键提交。
重命名:右键,选择svn里面的重命名,然后返回到上级目录后,进行svn提交。提交后,其他的文件就可以更新到最新的了。
移动:右键找到svn的"版本库浏览器",随意拖拽文件的位置即可实现文件的移动效果。(注意:如果是在服务器的版本库浏览器设置,直接可以实现一个默认的提交,如果不是在服务器的版本浏览器设置,就必须回到上级目录点击提交才可以)
获取历史版本:更新至版本,右键——更新至版本——显示日志——找到想要的版本。点击确定即可。
svn的几个操作说明:
1、Check out(检出):从服务器端取得代码
把服务器资料库里存放的某个项目代码取出来,放到本地主机中,这个动作叫做“check out”。使用具体步骤:进入要安装项目文件的目录中,点击鼠标右键,选择SVN Check out项,然后填写项目的原始路径和安装路径后点击“ok”即可。
2、Update(更新):更新项目代码
以前checkout过的一个项目代码,当服务器上有了更新的代码,或者本地代码损坏或丢失,update可以自动判断本地哪些文件较旧,或者缺少,都会自 动更新。当然,你也可以删除掉本地代码,重新check out。使用具体步骤为:在要更新的项目上点击鼠标右键,选择“SVN Update”项即可。
3、Commit(提交):将本地代码上传到服务器
当修改(增加,删除,修改等所有写操作)过本地代码后,这个动做会把新代码提交到SVN。如果本地代码做了修改,不执行commit操作,SVN服务器上是 不会有这个新版本的,也就是说其它人也得不到。对代码做过修改后,应尽快commit。使用具体步骤:在修改完待上传的项目上点击鼠标右键,选择 “SVN Commit”项即可。
版本冲突如何解决
原因:多个用户对同一个仓库进行了更改。这样就存在冲突了。
解决方案:右键,编辑冲突。然后保存,然后标记一下,解决冲突。这样就可以了。
在开发冲突的时候,我们尽量避免解决冲突。最好每次先更新,然后提交。
SVN的基本使用的更多相关文章
- svn 常用命令总结
svn 命令篇 svn pget svn:ignore // 查看忽略项 svn commit -m "提交说明" // 提交修改 svn up(update) // 获取最新版本 ...
- svn常用命令
1.新建版本库 [root@localhost repos]# mkdir -p project [root@localhost repos]# svnadmin create project [ro ...
- 对Maven、gradle、svn、spring 3.0 fragment、git的想法
1.Maven Maven可以构建项目,采用pom方式配置主项目和其他需要引用的项目.同时可结合spring3.0的新特性web fragment. 从现实出发,特别是对于管理不到位,程序员整体素质 ...
- 电脑新建svn仓库
步骤1:安转svg: 注意事项: 安装的时候选择:Modify 安装到以下图片的步骤时: 黄色区域选择: 步骤2:新建svn仓库文件夹(本教程例子:D:\svn-5gpos),选择文件夹右键,点击下图 ...
- 项目持续集成环境(jenkins + SVN + maven + tomcat)
整体流程 每次SVN上代码有变动,触发自动构建动作,并部署到服务器的tomcat上,具体流程: 1.SVN上提交代码修改 2.maven执行Goals 3.将web工程打成war包 4.关闭服务器的t ...
- Jenkins配置MSBuild实现自动部署(MSBuild+SVN/Subversion+FTP+BAT)
所要用到的主要插件: [MSBuild Plugin] 具体操作: 1.配置MSBuild的版本 [系统管理]->[Global Tool Configuration]->[MSBuild ...
- ASP.NET Aries 2.0 发布(原来的源码SVN已关闭,开源源码已迁移到GitHub)
主要更新: 1:增加子目录部署支持. 2:增加Taurus.MVC支持. 3:优化及Bug修复. 1:增加子目录部署支持: 其实在重写Aries框架的时候,我是去掉了目录部署功能的,主要是为了加快Ar ...
- [开源]QuickSwitchSVNClient,快速完成SVN Switch的工具
在实际的开发中,我们一般使用SVN工具进行源代码的管理.在实际的产品开发中,根据项目的一些定制要求,往往需要对某一些代码的修改,但是又不想影响主要的开发,这个时候需要对当前的主分支做一些分支处理(br ...
- 使用Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境(二)
前言 上一篇随笔Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境(一)介绍maven和nexus的环境搭建,以及如何使用maven和nexus统一管理库 ...
- 使用Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境(一)
前言 但凡一个略有规模的项目都需要一个持续集成环境的支撑,为什么需要持续集成环境,我们来看一个例子.假如一个项目,由A.B两位程序员来协作开发,A负责前端模块,B负责后端模块,前端依赖后端.A ...
随机推荐
- 因为喜欢所以升级,MyStaging-3.0 继续
我为什么维护MyStaging 目前该项目只有我一个人在维护,权当学习交流.为什么要继续维护呢,说一千道一万,还是因为喜欢,由于他的简单易用,从而促使我决定对 MyStaging 进行升级,目前 3. ...
- 《笨办法学 Python(第四版)》高清PDF|百度网盘免费下载|Python编程
<笨办法学 Python(第四版)>高清PDF|百度网盘免费下载|Python编程 提取码:jcl8 笨办法学 Python是Zed Shaw 编写的一本Python入门书籍.适合对计算机 ...
- JAVA JDBC Template的使用
JAVA JDBC Template的使用 什么是Template? Spring框架对JDBC的简单封装.提供了一个JDBCTemplate对象简化JDBC的开发 Template使用步骤 导入ja ...
- 解决SyntaxError: Non-UTF-8 code starting with '\xbb'问题
在第一行加入 # coding=utf-8 2020-06-13
- pandas_使用透视表与交叉表查看业绩汇总数据
# 使用透视表与交叉表查看业绩汇总数据 import pandas as pd import numpy as np import copy # 设置列对齐 pd.set_option("d ...
- PHP xml_error_string() 函数
定义和用法 xml_error_string() 函数获取 XML 解析器的错误描述.高佣联盟 www.cgewang.com 如果成功,该函数则返回错误描述.如果失败,则返回 FALSE. 语法 x ...
- Blob分析之 ball.hdev
* ball.hdev: Inspection of Ball Bonding * 关闭窗体更新 dev_update_window ('off')*关闭窗体dev_close_window ()*打 ...
- bzoj 2780 [Spoj]8093 Sevenk Love Oimaster
LINK:Sevenk Love Oimaster 询问一个模式串在多少个文本串中出现过. 考虑广义SAM 统计这种数量问题一般有三种做法. 一种 暴力bitset 这道题可能可以过? 一种 暴力跳p ...
- Java线程池的了解使用—筑基篇
前言 Java中的线程池是一个很重要的概念,它的应用场景十分广泛,可以被广泛的用于高并发的处理场景.J.U.C提供的线程池:ThreadPoolExecutor类,可以帮助我们管理线程并方便地并行执行 ...
- Redis好文章推荐
文章来源:掘金 作者:敖丙 Redis-避免缓存穿透的利器之BloomFilter <我们一起进大厂>系列- Redis基础 <我们一起进大厂>系列-缓存雪崩.击穿.穿透 ...