subversion-fundamental concepts

1.在使用svn 的时候,版本号version的问题一直困恼。

如在目录/app/controller上面右键选择查看该目录的 show log ,弹出的窗口显示的Revision log.单击每一条log, 都可以查看到这次修改/删除/新增了哪些文件和目录。

点击该目录,进去查看里面的某个文件, 查看 show log ,弹出的窗口显示的是, revision 的数字和目录的很不一样。

   另外一个文件show log   ,再来一个文件的 show log 

注意3810, 3609, 3606, 3604 , 3601这几个revision number.

 

下面的文档讲得不错:

http://svnbook.red-bean.com/en/1.6/svn.basic.in-action.html

Version Control the Subversion Way

We've mentioned already that Subversion is a modern, network-aware version control system. As we described in the section called “Version Control Basics” (our high-level version control overview), a repository serves as the core storage mechanism for Subversion's versioned data, and it's via working copies that users and their software programs interact with that data. In this section, we'll begin to introduce the specific ways in which Subversion implements version control.

Subversion Repositories

Subversion implements the concept of a version control repository much as any other modern version control system would. Unlike a working copy, a Subversion repository is an abstract entity, able to be operated upon almost exclusively by Subversion's own libraries and tools. As most of a user's Subversion interactions involve the use of the Subversion client and occur in the context of a working copy, we spend the majority of this book discussing the Subversion working copy and how to manipulate it. For the finer details of the repository, though, check out Chapter 5, Repository Administration.

Revisions

A Subversion client commits (that is, communicates the changes made to) any number of files and directories as a single atomic transaction. By atomic transaction, we mean simply this: either all of the changes are accepted into the repository, or none of them is. Subversion tries to retain this atomicity in the face of program crashes, system crashes, network problems, and other users' actions.

Each time the repository accepts a commit, this creates a new state of the filesystem tree, called a revision. Each revision is assigned a unique natural number, one greater than the number assigned to the previous revision. The initial revision of a freshly created repository is numbered 0 and consists of nothing but an empty root directory.

Figure 1.6, “Tree changes over time” illustrates a nice way to visualize the repository. Imagine an array of revision numbers, starting at 0, stretching from left to right. Each revision number has a filesystem tree hanging below it, and each tree is a snapshot” of the way the repository looked after a commit.

Figure 1.6. Tree changes over time

Tree changes over time
原文地址:https://www.cnblogs.com/oxspirt/p/6113644.html