SVN 生命周期

半决赛世界杯

上一节: SVN 环境设置

上一节

下一节: SVN checkout 流程

下一节

SVN 生命周期

生命周期

本章讨论版本控制系统的生命周期。在后面的章节中,我们将为每个操作看到Subversion命令。

创建存储库

存储库是开发人员存储所有工作的中心位置。存储库不仅存储文件,而且还存储有关更改的历史记录。这意味着它将保留文件中所做更改的历史记录。“create”操作用于创建新的存储库。在大多数情况下,此操作仅执行一次。创建新存储库时,VCS会要求您说出一些标识它的信息,例如您希望在何处创建它,或者应给存储库指定什么名称。

Checkout(查看)

“checkout”操作用于从存储库创建工作副本。工作副本是开发人员进行更改并随后将这些更改提交到存储库的私人工作场所。

Update

顾名思义,“update”操作用于更新工作副本。此操作将工作副本与存储库同步。由于所有团队都共享存储库,因此其他开发人员可以提交其更改,并且您的工作副本会更旧。让我们假设Tom和Jerry是从事一个项目的两个开发人员。两者都从存储库中签出最新版本并开始工作。此时,其工作副本已与存储库完全同步。Jerry非常有效地完成了他的工作,并将更改提交到存储库。现在,Tom的工作副本已经过期。更新操作将从存储库中提取Jerry的最新更改,并更新Tom的工作副本。

执行变更

checkout后,您可以执行各种操作来执行更改。编辑是最常见的操作。可以编辑现有文件以从文件中添加/删除内容。一个可以添加文件/目录。但是,这些文件/目录不会立即成为存储库的一部分,而是会被添加到挂起的更改列表中,并在提交操作之后成为存储库的一部分。同样,可以删除文件/目录。删除操作会立即从工作副本中删除文件,但是实际删除文件的操作会添加到挂起的更改列表中,并在提交操作之后对存储库进行更改。“rename”操作更改文件/目录的名称。“移动”操作用于将文件/目录从存储库树中的一个位置移动到另一个位置。

查看变更

当您签出工作副本或更新工作副本时,您的工作副本将与存储库完全同步。但是,当您对工作副本进行更改时,它会比存储库更新。最好在“提交”操作之前检查您的更改。“状态”操作列出了对工作副本所做的修改。如前所述,每当您在工作副本中进行更改时,所有这些更改都会成为挂起的更改列表的一部分。而“状态”操作用于查看挂起的更改列表。“状态”操作仅提供更改列表,但不提供有关更改的详细信息。可以使用diff操作来查看对工作副本进行的修改的详细信息。

解决错误

让我们假设一个人对其工作副本进行了更改,但是现在,他想放弃这些更改。在这种情况下,“还原”操作将有所帮助。还原操作还原对工作副本所做的修改。可以还原一个或多个文件/目录。也可以还原整个工作副本。在这种情况下,“还原”操作将销毁待处理的变更列表,并将工作副本恢复为原始状态。

解决冲突

合并时可能会发生冲突。“合并”操作会自动处理所有可以安全完成的操作。其他一切都被视为冲突。例如,“hello.c”文件在分支中被修改,而在另一个分支中被删除。这种情况需要一个人做出决定。“解决”操作用于帮助用户弄清楚事情并通知VCS有关处理冲突的方式。

提交变更

“提交”操作用于将更改从工作副本应用于存储库。此操作将修改存储库,其他开发人员可以通过更新其工作副本来查看这些更改。在提交之前,必须将文件/目录添加到挂起的更改列表中。这是更改等待提交的地方。使用commit时,我们通常会提供一条日志消息来说明有人进行更改的原因。该日志消息成为存储库历史记录的一部分。提交是一个原子操作,这意味着整个提交成功或回滚。用户永远不会看到半完成的提交。

上一节: SVN 环境设置

上一节

下一节: SVN checkout 流程

下一节

查看笔记 分享笔记

笔记内容:

称呼:

Email:

站点:

分享笔记 重置

分类导航

前端

Ajax 教程

Angular 教程

Aurelia 教程

Bootstrap 教程

ChartJS 教程

CSS 教程

ES6 教程

FontAwesome 教程

HTML 教程

HTML 字符集 教程

HTML 游戏 教程

JavaScript 教程

jQuery 教程

Less 教程

React 教程

Sass 教程

Stylus 教程

TypeScript 教程

Unity 教程

Vue.js 教程

WebAssembly 教程

XAML 教程

颜色 教程

服务端

C# 教程

C++ 教程

COBOL 教程

C语言 教程

Fortran 教程

Go 教程

Groovy 教程

Java 教程

JSP 教程

JVM 教程

Kotlin 教程

Lisp 教程

Lua 教程

Node.js 教程

Pascal 教程

Perl 教程

PHP 教程

Python 教程

Python 3 教程

Ruby 教程

Rust 教程

Scala 教程

Spring 教程

Spring Boot 教程

Spring Cloud 教程

VB.Net 教程

移动端

Android 教程

IOS 教程

Objective-C 教程

React Native 教程

Swift 教程

小程序 教程

数据库

Access 教程

DB2 教程

Mariadb 教程

Memcached 教程

MongoDB 教程

MySQL 教程

Neo4j 教程

PL/SQL 教程

PostgreSQL 教程

Redis 教程

SQL 教程

SQL Server 教程

SQLite 教程

T-SQL 教程

数据格式

Jackson 教程

JSON 教程

SVG 教程

XML 教程

开发工具

ActiveMQ 教程

Ant 教程

Apache HttpClient 教程

Apache POI PPT 教程

AWS 教程

Docker 教程

ElasticSearch 教程

ExpressJS 教程

GIT 教程

GitLab 教程

Google Maps 教程

Gradle 教程

Java NIO 教程

JavaFX 教程

JavaMail 教程

JDBC 教程

jMeter 教程

JPA 教程

jsoup 教程

Junit 教程

KoaJS 教程

Kubernetes 教程

Log4j 教程

Logstash 教程

Lucene 教程

Makefile 教程

Maven 教程

RESTful 教程

Sed 教程

SEO 教程

Servlet 教程

SLF4J 教程

Socket.IO 教程

Struts 教程

SVN 教程

TestNG 教程

UML 教程

UNIX / LINUX 教程

WebSocket 教程

WPF 教程

xStream 教程

区块链 教程

数据处理

Flink 教程

Flume 教程

Hadoop 教程

Hbase 教程

Hive 教程

Kafka 教程

Kibana 教程

MapReduce 教程

MATLAB 教程

MyBatis 教程

Pig 教程

R语言 教程

Solr 教程

Spark 教程

Storm 教程

Zookeeper 教程

大数据分析 教程

数据仓库 教程

数据挖掘 教程

计算机基础

HTTP 教程

IPv4 教程

IPv6 教程

Ubantu 教程

WebServices 教程

嵌入式系统 教程

操作系统 教程

数据结构和算法 教程

汇编语言 教程

物联网 教程

电子电路基础 教程

编译器设计 教程

网站开发 教程

计算机 教程

计算机基础 教程

计算机网络 教程

设计模式 教程

AI

CNTK 教程

Keras 教程

PyTorch 教程

TensorFlow 教程

人工智能 教程

机器学习 教程

Python 技术

Django 教程

Flask 教程

NumPy 教程

Pandas 教程

Pillow 教程

PyGTK 教程

PyQt5 教程

PySpark 教程

pytest 教程

Python -数据科学 教程

Python MySQL 教程

Python 取证 教程

Python 数据结构 教程

Python 文本处理 教程

Python 网络编程 教程

Python 网页抓取 教程

Python 设计模式 教程

RxPY 教程

SciPy 教程

Seaborn 教程

SymPy 教程

wxPython 教程

框架

Laravel 教程

Web 图标Icon 教程

Web2py 教程

WebGL 教程

WebRTC 教程

WordPress 教程

Yii 教程

Zend Framework 教程

SAP

Crystal Reports 教程

雪莉隔4年「告白退出原因」自問:我為什麼要做這些? 宋茜發文回應粉絲心疼
饥荒结局有哪些 三个隐藏结局攻略