CSC/ECE 517 Fall 2009/wiki1a 5 a2: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 12: Line 12:


Revion Control System (RCS) was developed by [http://www.ipd.uka.de/~tichy/ Walter F. Tichy] in the 1980s while he was at the Purdue University. RCS was an improvement when compared to SCCS. It had a better user interface and the method of storage resulted in faster retrieval. It stored the most recent file in entirety. The earlier revisions of the file was stored as reverse differences. This feature made it operate faster than SCCS. RCS was made freely available. It quickly dislodged SCCS from its dominant position and became part of the GNU Project. Last maintenance on RCS was in 1995.  
Revion Control System (RCS) was developed by [http://www.ipd.uka.de/~tichy/ Walter F. Tichy] in the 1980s while he was at the Purdue University. RCS was an improvement when compared to SCCS. It had a better user interface and the method of storage resulted in faster retrieval. It stored the most recent file in entirety. The earlier revisions of the file was stored as reverse differences. This feature made it operate faster than SCCS. RCS was made freely available. It quickly dislodged SCCS from its dominant position and became part of the GNU Project. Last maintenance on RCS was in 1995.  
'''Some limitations of RCS:'''
 
'''Limitations of RCS:'''


- It could only work on single files, not on on project or hierarchies(directories).  
- It could only work on single files, not on on project or hierarchies(directories).  
- At any given time, only one person could edit a file .  
- At any given time, only one person could edit a file .  
- It was not possible to group together files.  
- It was not possible to group together files.  
- RCS directory had to be local.
- RCS directory had to be local.


'''Concurrent Version System (CVS)'''  
'''Concurrent Version System (CVS)'''  


[http://www.cs.vu.nl/~dick/ Dick Grune] of Vrije University, Amsterdam created Concurrent Version System (CVS). He created it so that he could cooperate with two of his students while working on ACK (Amsterdam Compiler Kit) C compiler [1]. CVS used the Client-Server architecture where the server was used as the repository. CVS could handle multiple people working on a set of files simultaneously without resulting in any conflicts. The server was used to store the current version of the project. When someone wants to modify one or more files, he has to check it out, modify and then check-in. The server stored all the relevant information, like revision history, revisions of projects/files, historical snapshot of the project etc. Clients can request these information as needed. Typically, the client and server communicate over LAN or internet. However, this is not a necessity as the client and server could be hosted on the same machine.
[http://www.cs.vu.nl/~dick/ Dick Grune] of Vrije University, Amsterdam created Concurrent Version System (CVS). He created it so that he could cooperate with two of his students while working on ACK (Amsterdam Compiler Kit) C compiler [1]. CVS used the Client-Server architecture where the server was used as the repository. CVS could handle multiple people working on a set of files simultaneously without resulting in any conflicts. The server was used to store the current version of the project. When someone wants to modify one or more files, he has to check it out, modify and then check-in. The server stored all the relevant information, like revision history, revisions of projects/files, historical snapshot of the project etc. Clients can request these information as needed. Typically, the client and server communicate over LAN or internet. However, this is not a necessity as the client and server could be hosted on the same machine.

Revision as of 01:39, 8 September 2009

History of Version Control

Version Control (also called Revision Control, Source Code Control) is a category of software whose purpose is to manage changes to digital information in an automated way. Digital information, in this context could be source code of computer programs, design database or any other piece of work which is stored electronically. Before the advent of electronic storage, a hard copy (such as those on paper) was automatically granted as preserved. With storage getting shifted on to electronic media, it became both possible and necessary to have software which could keep track of changes to the information stored.

Today, with development project typically spanning multiple geographical sites and people with different time schedules, Version Control program have become a necessity.

Source Code Control System (SCCS)

One of the earliest revision control software, Source Code Control System (SCCS) was developed at Bell Labs in 1972 by Marc Rochkind. Though initially written for IBM System/370 computer, it was later re-written for UNIX and subsequently included in several UNIX distributions. SCCS remained the dominant version control system until Revision Control System (RCS) was released. Today, SCCS is considered obsolete; the file format of SCCS is still used by some revision control programs like BitKeeper and TeamWare.

Revion Control System (RCS)

Revion Control System (RCS) was developed by Walter F. Tichy in the 1980s while he was at the Purdue University. RCS was an improvement when compared to SCCS. It had a better user interface and the method of storage resulted in faster retrieval. It stored the most recent file in entirety. The earlier revisions of the file was stored as reverse differences. This feature made it operate faster than SCCS. RCS was made freely available. It quickly dislodged SCCS from its dominant position and became part of the GNU Project. Last maintenance on RCS was in 1995.

Limitations of RCS:

- It could only work on single files, not on on project or hierarchies(directories).

- At any given time, only one person could edit a file .

- It was not possible to group together files.

- RCS directory had to be local.


Concurrent Version System (CVS)

Dick Grune of Vrije University, Amsterdam created Concurrent Version System (CVS). He created it so that he could cooperate with two of his students while working on ACK (Amsterdam Compiler Kit) C compiler [1]. CVS used the Client-Server architecture where the server was used as the repository. CVS could handle multiple people working on a set of files simultaneously without resulting in any conflicts. The server was used to store the current version of the project. When someone wants to modify one or more files, he has to check it out, modify and then check-in. The server stored all the relevant information, like revision history, revisions of projects/files, historical snapshot of the project etc. Clients can request these information as needed. Typically, the client and server communicate over LAN or internet. However, this is not a necessity as the client and server could be hosted on the same machine.