AccuRev File Statuses

File Status Reference

Link-Related Indicators

Presence of the Element in the Workspace or Stream

Changes to the Element

Relationship to the Version in the Parent Stream

File Status Diagram

Development work involves making changes to elements -- both files and directories. As files get edited in workspaces, new versions get created in workspace streams, and existing versions get promoted to higher-level streams, AccuRev shows you the current status of each element. Keep in mind that the status of an element in your workspace may be different from its status in other workspaces and streams.

An element's file status is indicated by a set of one or more status indicators (or flags), each in the form of a parenthesized word. For example:

(overlap)(kept)(member)

Even though we use the term "file status", each directory element also has a status in each workspace and stream. A subset of the status indicators is used to report directory statuses.

These controls affect the File Browser's display of elements and their file statuses:

File Status Reference

The following sections detail the AccuRev status indicators, organized by category:

Link-Related Indicators

 

(elink)

The element is an element link. (The link's icon is .)

(slink)

The element is a symbolic link. (The link's icon is .)

(missing-target)

For an element link, the target element is not present in the workspace or stream. This can occur if the target element is removed from the workspace tree by an operating system command. It can also result from an Include from Stream or Exclude command. For a symbolic link, there is no object at the target pathname.

(modified-target)

For an element link, the target element has been modified (either a content change or a namespace change) in the workspace or stream.

(corrupted)

For an element link in a workspace, AccuRev and the operating system disagree on the link target. That is, the target element recorded in the AccuRev repository differs from the target in the operating system’s instantiation of the link in the workspace tree. This can occur if you modify or replace a link using operating system commands instead of AccuRev commands.

A cross-linked element (see (xlinked) below) gets (corrupted) status if AccuRev does not overwrite the element during execution of the Include from Stream command, because the element has (modified) or (kept) status in the workspace. This should not occur during normal operation.

Presence of the Element in the Workspace or Stream

(defunct)

The element has been marked for removal from the workspace or stream with the Defunct command.

Workspace: the element has already been removed from the workspace tree (local disk storage). It will be removed from the workspace stream (in the depot) when you Promote the element to the parent stream.

Dynamic stream: the element will be removed from the stream (in the depot) when you Promote the element to the parent stream.

(external)

(workspace only) The file or directory has not been placed under version control The discipline of keeping track of the changes made over time to a file or directory.. (There's an object in the workspace tree The ordinary directory tree, located in the user's disk storage, in which the user performs development tasks and executes AccuRev commands., but no element A file or directory that is under AccuRev version control. See version. has been created in the workspace stream The private stream that is built into a workspace. All new versions of elements are originally created in workspaces; AccuRev records these versions in workspace streams..)

(excluded)

The element does not appear in the workspace because it has been excluded, using the include/exclude facility. For file elements, it's likely that the exclusion was explicitly set on the directory in which the file resides, or on a higher-level directory that includes the file.

(xlinked)

This version of the element appears in the workspace or stream by virtue of a cross-link An include/exclude mode operation ('Include from Stream') that includes an element in a workspace or stream, specifying an alternative backing stream for that element. Cross-linking a directory also cross-links the entire subtree below it. Cross-linked elements have (xlinked) status.(xlinked) status.(Include from Stream command) — either on the element itself or on its parent directory or a higher-level directory.

(missing)

(workspace only) The workspace "should" include a version of this element, but doesn't. This occurs when you delete version-controlled files from the workspace tree using operating system commands, or using the AccuRev Delete command. If an operation causes the target of an element link (element-link element) An element whose contents is a pointer to another element, which must be in the same depot. The target element can be a directory element, a file element, another element link, or a symbolic link. to be removed from a workspace, AccuRev removes the element link, also, causing it to have (missing) status.

Notes (click to view):

(twin)

The element is one of multiple elements in the workspace that exist at the same pathname. At most one of these elements can be accessed through the pathname; the other(s) can be accessed through their unique element-IDs The unique, immutable integer identifier by which AccuRev tracks the changes to a particular file element or directory element. An element's name or pathname can change, but its element-ID never changes..

(stranded)

The element is active in the workspace or stream, but there currently is no pathname to the element.

See also ...

"Version Control of Namespace-Related Changes" in AccuRev Technical Notes.

Changes to the Element

(modified)

(workspace only) The file has been modified in the workspace since the most recent Update or Keep. You can control how AccuRev determines whether a file has this status.

(kept)

A new version of the element has been created with Keep, Rename, or Defunct (or the CLI command undefunct) and the file has not subsequently been modified, promoted to the backing stream, or purged (Revert to Backed).

(member)

The element is active An element is said to be active in a workspace or stream if a new version of the element has been created there, and that version has not been either (1) promoted to the parent stream or (2) purged from the workspace or stream. See default group, backed, passive. in the workspace. Commands that create a new version in the workspace or stream also make the element active there (if it isn't already).

Relationship to the Version in the Parent Stream

(backed)

The version in the workspace stream is the same as the version in the backing stream. And you have not changed the element since the last time you Promote'd it or purged it with Revert to Backed, or since the most recent Update of your workspace.

(stale)

(workspace only) The element needs to be updated, because the version in the backing stream has changed since the workspace's latest Update. And since you have not changed the element in your workspace, it can be safely updated (no unpreserved changes will be overwritten).

(overlap)

The element has changed both in this workspace or stream, and in the parent stream. This indicates that a merge An operation that combines the contents of two versions (contributors) of the same element. To merge the contents of text files, AccuRev uses a '3-way merge' algorithm: it compares the two files line-by-line with a third file, the version that is the closest common ancestor of the other two. Merging of namespace changes also takes into account the closest common ancestor. is required before you can promote The operation (promote command) that transitions a version from being active in one workspace or stream to being active in the parent stream (or some other stream). This operation creates a new virtual version in the parent stream; the virtual version provides an alias for the real version, which was originally created in some user’s workspace. See version. your changes to the parent stream. Elements with this status appear with a yellow highlight.

(underlap)

The element has changed both in this workspace or stream, and in the parent stream -- but the parent stream already contains the changes in this workspace or stream. In many cases, it is most appropriate to use Revert to Backed to remove your changes from this workspace stream. [note In a workspace, Revert to Backed restores the version of an element that was in the parent stream at the time of your workspace’s most recent Update. You might need to perform another Update to bring the version causing the (underlap) status into the workspace.] In other cases, you can merge and promote The operation (promote command) that transitions a version from being active in one workspace or stream to being active in the parent stream (or some other stream). This operation creates a new virtual version in the parent stream; the virtual version provides an alias for the real version, which was originally created in some user’s workspace. See version., just as with an (overlap)-status element.

File Status Diagram

This diagram shows many of the file statuses, illustrating how an element's changing status indicates its development progress. This diagram suggests that as more work is performed on an element, it "rises to a higher level" of development. (That's the idea behind having a command named "promote".) The diagram also depicts the fact that AccuRev tracks changes to an element in two "dimensions":

This diagram captures the following facts:

See Also ...

How the File Browser searches relate to this diagram