-
Notifications
You must be signed in to change notification settings - Fork 0
DTU Version Control Wiki
The version control system builds on some core objects, with the users data, that can be created, updated and deleted:
A project is a collection of componenttypes. The project also contains members that are allowed to change the objects in the project.
The componenttypes are at the core of the system. A componenttype represents a thing the team is developing as a concept. The componenttype contains a description of the concept along with a storage number.
The description should explain the componenttypes properties and its use.
The storage should be used to indicate how many physical items of the componenttype exists it is a high number and creating individual components is not desired.
More in-depth information about the componenttype should be stored as components and documents in the componenttype.
Where the componenttype is a concept, the component is a physical item of that componenttype, like a prototype. A team may have made two copies of a componenttype, each copy should then be represented as a component.
The component has a status that describes the state of the component. Examples of the status could be: 'Broken', 'Good' or 'Out of house' and so on.
The component also has a comment field. The comment is, for example, used to describe minor differences from the componenttype.
A document is one of the most simple objects in the system. A document represents a file that documents or contains information about a componenttype.
The log is used to store different versions of the before mentioned objects. Whenever a change happens in a project, a log is created that documents the change.
The log object references the version of the object before the change, this is used for rolling back changes.
The log also logs who made the change, the time of change, an event that describes the type of change (Created, Updated, Deleted or Rolled back) and lastly a comment by the user describing the change that happened to the object.
A category is used by componenttypes to describe their familiarity to other componenttypes.
A user is contains contact information to the person that owns it. A user has a role in each project they are related to: (Guest, Member, Admin or Super Admin)
The project:
Name: DTU SpoonRunners
Members: Bob Spoon and Alice Spork
contains a their new idea, a spoon!, it is represented as a componenttype:
Name: Spoon
Description: This is the brand new spoon, it is made of plastic and great for eating soup
The componenttype contains a document describing the design plans for the spoon:
Name: SpoonDesign.pdf
and two prototypes of the spoon as components:
Component 1:
Status: Missing
Comment: This one is red
Component 2:
Status: Good
Comment: This one is blue