Back to Archived Releases

CVS Repositories View

Tag Management

There are several issues related to how CVS tags are managed in Eclipse

  • Eclipse needs a remote file to determine the tags for a project. By default, the .project file is used. If this file does not exists remotely, no tags will be displayed until the user performs a Configure Branches and Versions and either selects one or more tags or picks an appropriate file. This is confusing because the UI does not lead the user to perform the configure.

  • Eclipse shows all known remote tags for a project. The user can remove tags using the Configure dialog but if a refresh is performed, the tags will reappear. A filtering mechanism of some sort would be beneficial.

  • Eclipse currently only remembers tags for the root folders of a repository. Some repositories are configured such that projects are not located at the repository root. The repository view is of little use in these cases.

  • Some of the modules defined in the CVSROOT/modules file are not expandable in Eclipse due to the complexity of the module definition. Because of this, tags can not be discovered for the module. This could be rectified if an auto-refresh file could be assigned from another project (one that the user knows is in the module). This problem would go away if all modules could be expanded (but the implementation is complicated by an incomplete spec).

  • When performing an operation on several projects, the union of the tags are shown. This can cause unexpected behavior if not all projects contain the selected tag.

  • When performing a Tag with Existing, only tags for the selected project are shown. An option to show all know tags would be helpful for those cases where the user is creating a version or branch of one project to match that of another.

Checkout

There are currently several menu options available for checking out resources: Checkout as Project, Checkout As..., Checkout Into..., and Checkout Module. These should be consolidated to 2 items: Checkout and Checkout As....

  • Checkout As should support the functionality provided by Checkout Into.

  • Checkout as Project and Checkout Module functionality can be combined (i.e. all that is required is multi-select behavior for the Checkout Module logic for it to provide both workflows).

  • Checkout could be supported on files. The operation would either need to create a suitable container project or allow the user to pick from a list of valid existing projects or folders.

View Layout

The Repositories view currently uses a single view to show all remote resource. Also, projects are grouped by branch whereas versions are grouped by project.

  • It would be beneficial to support the inverse groupings of what is currently supported (i.e. projects grouped by versions or branches grouped by project). This could be done in the same view or by using alternate views (e.g. a Tag view or a Project view).

  • Modules and Folders are shown in the same list and differentiated by icon. This can be problematic as it increases the size of the list and a module and folder can have the same name. One suggestion is to provide tabs in the view to show either folders or modules.