A-  A A+

Rcs is the technology we basically use to track the history of every revision Object

According to standard software technology when multiple users working on same copy of the object and each of them require changing or adding different content then in such cases in stead of moving foward with revision i.e 1.1—>1.2–>1.3

as they are the indicators of the stable versions or product we create branches though Rcs provides the Great facility of creating branches for different users it by default considers that these branches are created on different machines and for that instance even creating the branches for same file on different machine is not at all a problem u just have to provide the higher number than its trunk and automatically branch would be created example:- first check out :- version of which you would be creating branch of

suppose co -l 1.1

now version 1.1 is locked while you check-in example:- first check out :- version of which you would be creating branch of kin your changes you have to tell explicitly if you want to create a branch else it would increment it linearly i.e 1.2 so if you want to create the branch

ci -l 1.1.1<–— doing so would create the branch

these things are very easy to perform but the problem is what if their is single machine and in that case you have to create branches suppose case of server where every locks would be put on the behalf of the server its self not the logged in user in the above case

to understand the single machine problem let us understand how rcs locking works understanding rcs locking would give you the idea why branches are problem in case of server(or single machine)

Locking in rcs :-

in rcs whenever you want to perform some changes to particluar version first you have to check it out from the rcs working file

example co -r 1.1 filename

above would give you version 1.1 at the same time it would perform a lock on the version on behalf of the machine your working with

now suppose a user comes he locks version 1.1.1 and check ins i.e adds his content to the rcs file

in the above case 1.1 is still locked and second user have locked another version 1.1.1 as both the locks to different things one is to trunk and one is to branch and both performed on behalf of same machine now rcs hangs up how —?

as both the locks are on behalf of same user rcs would get confused i.e weather to increment the trunk or the branch the above senario is not a problem if the lock is perfomed on behalf of two different machines here though users are different machines are same

the solution to this is simple

when ever you want to create the branch

lock the the trunk version number from where you want to create the branch example ci -l 1.1 file name

checkout with one higher version number and unlock command i.e

co -u 1.1.1 file name

the above procedure would create and unlock the newly created branch and prevent rcs from getting confused

License:[Source ] June 4, 2018, 11:35 p.m.