For one of my project I'm using Subversion(Rabbit VCS). The revision number is incremented for every check-in, but I'm unable to understand all the factors on which amount of increment in revision number on check-in depends. Check-ins caused an increment from 1 to 25
and branch merge did an increment of 94
. Can anyone point out to algo used for calculating this revision number change.

- 1,468
- 3
- 19
- 31
1 Answers
Every single commit against Subversion counts as one revision, regardless of branch. The number reported by Subversion is simply the sequence number of that commit with the respective repository. Each repository has its own count.
For example if there is a jump of 94 between any two of your commits one or more other users of the subversion repository have completed 93 other commits.
In some development environments in addition to humans there are also automated processes, e.g. automated builds that create tags or branches, and therefore cause the revision number to increase.
The algorithm used by Subversion is very simple: Start with zero when the repository is created then count the number of successful commits against the repository. Note that commits are atomic (or transactional) and hence completely sequential similar to a database system with transaction support.

- 5,320
- 3
- 35
- 29
-
Leaving aside that merge which caused an increment of 94, in logs in which there is an increment of more than 1, there are no commits in between + as far as I know there are no automated processes – r15habh Nov 25 '11 at 06:18
-
4You need to look at the whole repository, not just your project. I. e. `svn log file:///svn` instead of `svn log file:///svn/yourproj` – tripleee Nov 25 '11 at 06:39
-
ohh...so the revision number belongs to SVN rather than some proj in SVN, I thought every project had its own revision (would had been troublesome to manage revisions in such a way). Thanks for the comment :) – r15habh Nov 25 '11 at 07:04