Directory Tree and File Table
The directory tree and the file table show the local directories/files
below the project’s root directory. .svn
-directories, ignored
directories and files within other ignored directories are not
displayed.
Directory States/Directory Tree
The directory tree shows the project’s directories and their SVN states, which are denoted by different icons. The primary directory states are listed in Primary Directory States. Every primary state may be combined with additional states listed in Additional Directory States. In case of a versioned directory, the corresponding revision number is displayed after the name of the directory. The revision will be omitted if it’s equal to its parent directory revision. If the directory hasn’t been checked out with depth Fully recursive, the check out depth will be displayed in parantheses, too. The tooltip shows detailed SVN information for the corresponding directory, similar to the contents of the file table, see below.
Primary Directory States
Unchanged | Directory is under version control, not modified and equal to its revision in the repository (i.e. to its pristine copy). | |
Unversioned | Directory is not under version control and hence only exists locally. | |
Ignored | Directory is not under version control (exists only locally) and is marked as to be ignored. | |
Modified | Directory itself is modified in its properties (compared to its revision in the repository, i.e. to its pristine copy.) | |
Added | Directory is scheduled for addition. | |
Removed | Directory is scheduled for removal. | |
Replaced | Directory has been scheduled for removal and was added again. | |
Copied | Directory has been added with history. | |
History-Scheduled | A parent directory has been added with history, which implicitly adds this directory with history. | |
Missing | Directory is versioned, but does not exist locally. | |
Added-Missing | The directory has been scheduled for addition, but is locally missing. Refer to the Fix command . | |
Conflict | An update command lead to conflicting changes in directories’ properties. | |
Incomplete | A previous update was not completed. Run the update again to finish it. | |
Root | Directory is either the project root or an external root. | |
Nested Root | Directory is a nested working copy root, but no external. Refer to the Fix command . | |
Obstructed | A file exists locally, but according to the pristine copy (i.e. the information from the repository) it should be a directory. Please backup the file, then remove it and update the directory from the repository. | |
Phantom | The directory neither exists locally nor is versioned, but is still present in the working copy metadata (.svn directory). It’s probably part of a tree conflict . | |
Remote | Directory only exists in the repository. This state is only used for the remote state command (see Remote State). | |
Unscanned | Directory has not been scanned yet (see Refresh). |
Additional Directory States
Switched | Directory is switched (compared to its parent); see Switch. | |
Locked | Directory is locked locally because an operation has been interrupted before. A Cleanup should fix the problem. | |
Direct Local Changes | There are local changes to this directory itself. | |
Indirect Local Changes | There are local changes to one of its files or to one of the subdirectories of this directory. | |
Direct Remote Changes | There are remote changes to this directory itself, see Remote State. | |
Indirect Remote Changes | There are remote changes to one of its files or to one of the subdirectories of this directory, see Remote State. | |
Tree Conflict | The directory is part of a tree-conflict, see Tree Conflicts for details. |
To speed search the directory tree for a certain directory, click into the tree (so the Directories view becomes active) and start typing the directory name. This will make a small popup come up, which displays the characters you have already entered. Wildcard symbols ‘*’ and ‘%’ can be used with the usual meaning.
File States/File Table
The file table shows the project’s files with their SVN states and various additional information. The primary file states are listed in Primary File States. Every primary state may be combined with additional states listed in Additional File States. The rest of this section explains configuration options for the file table. They are always related only to the current project and are also stored with the current project.
Name Filters
The toolbar of the file table contains the Filter input field, which can be used to restrict the displayed files to a certain file name pattern. By default, simple patterns, including the wildcard symbols ‘*’ and ‘%’, are supported. You can also use ‘!’ at the beginning of a pattern to invert it. For example, ‘!*.txt’ will show all files which don’t have the .txt extension.
To clear the Filter field, click on the button on the right side of the field. In the drop-down menu on the left side of the Filter field, you can select Regular Expressions instead of simple patterns. For details on the supported regular expression constructs refer to http://java.sun.com/j2se/1.5.0/docs/api/java/util/regex/Pattern.html. With Save Pattern you can save a pattern. Once a pattern is saved it will be displayed in the top of the drop-down menu. It can be used by selecting it and removed again by Remove Pattern.
Similar to the directory tree, the speed search is also available for the file table.
Common Primary File States
Unchanged | File is under version control, not modified and equal to its revision in the repository (i.e. to its pristine copy). | |
Unversioned | File is not under version control, but only exists locally. | |
Ignored | File is not under version control (exists only locally) and is marked as to be ignored. | |
Modified | File is modified in its content but not in its properties (compared to its revision in the repository, i.e. to its pristine copy). | |
Modified (properties only) | File is modified in its properties but not in its content (compared to its revision in the repository, i.e. to its pristine copy). | |
Modified (properties only) | File is modified in its content and properties (compared to its revision in the repository, i.e. to its pristine copy). | |
Missing | File is under version control, but does not exist locally. | |
Added | File is scheduled for addition. | |
Removed | File is scheduled for removal. | |
Replaced | File has been scheduled for removal and was added again. | |
Copied | File has been added with history. | |
History-Scheduled | A parent directory has been added with history, which implicitly adds this file with history. | |
Remote | File does not exist locally, but only in the repository. This state is only used for the remote state (see Remote State). | |
Conflict | An update command lead to conflicting changes either in content or in properties. | |
Merged | The file has been merged. Refer to the Merge command for details. | |
Incomplete | A previous update was not completed. Run the update again to finish it. | |
Name conflict | There exists another file in the repository with the same name, only differing in upper/lower case. Such files can’t be checked out on case-insensitive file systems. To fix this problem the corresponding files have to be renamed in the repository. | |
Obstructed | A directory exists locally, but according to the pristine copy (i.e. the information from the repository) it should be a file. Please backup the contents of the directory, then remove it and update the file from the repository. | |
Inaccessible | The file’s content is not accessible, hence its state (modification) can’t be determined. It’s probably locked by another application. | |
Phantom | The file neither exists locally nor is versioned, but is still present in the working copy metadata (.svn directory). It’s probably part of a tree conflict . | |
Case-Changed | The case of the file name has changed on an operating system that is case-insensitive with respect to file names. Refer to the Fix command on how to handle such files. |
Additional File States
Switched | File is switched (compared to its parent directory); see Switch. | |
Tree Conflict | The file is part of a tree-conflict, see Tree Conflicts for details. |
‘Lock’ column states
Locked (Self) | The file is locked in the repository by yourself (or more specifically, it is locked for the current working copy). See Locks. | |
Locked (Other) | The file is locked in the repository by some other user, see Locks. | |
Lock Necessary | The file needs to be locked before starting to work, see Change ‘Needs Lock’. |
State Filters
With the menu items in the View menu, you can also set filters to display only files which meet certain criteria. Refer to the View menu for details. The filter behavior can be customized in the Preferences with Hide ignored and repository-only directories according to View-menu filters on the User Interface page.
Double Click
By default, if you double-click on a file in the file table, the file will be ‘opened’ in one of several ways, depending on its file state:
- For an unchanged file which is remotely changed (see Remote State), the Compare with HEAD command is invoked.
- An unchanged, unversioned or added file is opened with the file editor, see the Query|Open command (Query) for further details.
- A conflicting file is opened with the Conflict Solver (Conflict Solver).
- All other files are opened by comparing them (Show Changes).
If, for example, you want to always open (Edit) the file independent of its state by double-clicking it, assign the <Enter>-keystroke accelerator (Preferences) to the Query|Open menu item.