Please note : This help page is not for the latest version of Enterprise Architect. The latest help can be found here.

Prev Next

Repository Options

The Version Control facility can be used in many different ways, although these roughly fall into one of four types of use as discussed in this table.

Usage

Type

Details

See also

Single Shared model

Users share a model stored in a central project file or DBMS repository. In this configuration you can view changes to other users' Packages without explicitly having to check them out, by simply refreshing your view of the model.

Version Control is used to:

  • Archive successive versions of your work to date
  • Maintain Package revision history
  • Recover from unwanted changes or accidental deletions, through an 'Undo' facility
  • Regulate access to Packages

Multiple Private models

One model is created by a single user who configures it for Version Control. The model file is then distributed to other users, with each user storing their own private copy of the model.

Version Control is used to:

  • Propagate changes to the model, throughout the team
  • Archive successive versions of your work to date
  • Maintain Package revision history
  • Recover from unwanted changes or accidental deletions, through an 'undo' facility
  • Regulate access to Packages

Shared Packages

Individual users create separate models but share one or more Packages:

  • Users share Packages through Version Control

Standard Packages

A company might have a standard set of read-only Packages that are broadly shared:

  • Individual users retrieve Packages with the Get Package menu option

Factors to consider

Factor

Detail

See also

System Requirements and Configuration

You apply Version Control through a third-party source-code control application that manages access to and stores revisions of the controlled Packages.

Typically the configuration consists of:

  • A server component that manages a Version Control repository, and
  • Client components on the workstations, that manage local working copies of controlled files

Enterprise Architect uses the client component to communicate with the server. A Version Control client must be installed on every machine where you run Enterprise Architect and want to access your Version Control system.

System Requirements

Version Control Usage

There are two main ways in which projects can be deployed:

  • Centralized Shared Model
  • Distributed Private Models

Version Control is employed in the same way for both scenarios; however, when using Private Model deployment you have the additional facility of propagating model updates throughout the team.

Version Control can also be used to share standard Packages between different projects.

Version Control Usage

Team Deployment

Consider the process of setting up a Version Control environment and applying Version Control to a project to be accessed by a number of users.

Applying Version Control in a Team Environment

Version Control Basics

Enterprise Architect enforces serialized editing of Version Controlled Packages, using the lock-modify-unlock mode of operation.

Version Control Locking Overview

Applying Version Control to Models

Using Version Control consists of placing individual model Packages under Version Control, rather than Version Controlling the project as a whole.

Version Control Of Model Data Version Control Nested Packages

Version Control and Project Reference Data

To share changes in reference data between users in a version-controlled project deployed as multiple private models, you periodically export the reference data from the model where the changes were made, and import it into the other models maintained by the team.

Version Control and Reference Data

Offline Version Control

You can prevent the system from attempting to make any Version Control connections by choosing to Work Offline before loading a model.

If Enterprise Architect is unable to connect a Version Control Configuration for any reason, it displays warning messages to notify you and provides 'offline' Version Control functionality for all Packages associated with the failed connection.

Offline Version Control