UI Actions

The following actions are available in the context menu of Teams widgets, accessible from the top-level Teams menu.

Note that most actions are "contextualized" in the sense that they require certain conditions to be met, in order to work:

  • the widget being operated on,

  • whether or not a selection is available,

  • the state of the selected file(s),

  • …​

Get the latest revision

Sync the selected file(s) (or the entire server contents), to the latest revision.

This effectively updates all local copies of the files, except for those that are currently opened for edition, addition or deletion: those will be left untouched in order to not risk losing user modifications made to them.

Commit…​

Prompts the user for a commit description, and submits the files that are part of the current worklist, to the server.

Once successfully committed, a worklist will disappear and a new entry will be added to the list of commits.

Committed changes (modifications, additions and deletions) are available for all users that can access those files.

Scan and commit

Scan the selected files/folders (or the entire root directory), and create a worklist with all changes that were found: files that have been added, removed, modified, …​

Unless you explicitly tell it not to (by checking the "Do not show this dialog anymore" checkbox), this action will first offer the possibility to refine what exactly the scan should be looking for:

Scan and commit options

Spotting new or deleted files is fairly straightforward, but when it comes to existing files, hvui will also perform a md5 checksum comparison.

If differences are found, IDA will prepare a new worklist with those.

This is especially useful if one had to work on some files while no connection to the server was available (e.g., on a plane).

The files found will be filtered by hvignore.

Details…​ (on "Commits" widget)

Opens a detailed view of the commit details, including a list of the files that were modified:

Commit

Sync to this revision

Retrieve the specified revision from the server, and replace the local file with it.

Diff against previous revision

For each selected file, perform a diff of the selected file, against its previous revision.

NOTE: If a file is opened and has been modified, those yet-unsubmitted modifications will not be part of the diff: only those between the two recorded revisions, will be visible.

Diff against…​

A more powerful version of diff, that lets the user pick for each "side" of the diff:

  • either the current revision, any revision number, or to the local file on disk

  • the path to the file (it is therefore possible to diff entirely unrelated files together)

Checkout for edit

Informs the server that we will be working on those files in the near future.

They will be added to the worklist number 1 (which will be created if it doesn't exist), and will turn bold, to draw attention to them.

Add to vault

Informs the server that we wish to add the selected file(s) to the list of files managed by the server.

They will be added to the worklist number 1 (which will be created if it doesn't exist), and will turn bold, to draw attention to them.

The files selected will be filtered by hvignore.

Checkout for delete

Informs the server that we wish to delete the selected file(s) from the list of files managed by the server.

They will be added to the worklist number 1 (which will be created if it doesn't exist), and will turn bold, to draw attention to them.

Checkout for move/rename…​

For each selected file (or directory), prompt the user for a new name to rename to.

This is the equivalent of executing Checkout for copy..., followed by Checkout for delete....

Checkout for copy…​

For each selected file or directory, prompt the user for a new name to create a copy into.

The copied files will be added to the worklist number 1 (which will be created if it doesn't exist).

Open this revision

For each selected file, launch the associated application.

NOTE: The file is retrieved from the server, and downloaded into a temporary location. It is cleaned after the application exits.

File history

For each selected file, open a history widget showing the list of modifications that were made to the file.

Revert…​

Reverts the selection - that is: remove from the worklist(s), and restore the current revision from the server.

circle-info

This action will lose all changes made to the selected file(s), and thus will first prompt for confirmation.

See also Revert if unchanged.

Revert if unchanged

A "safe" version of Revert, that will first verify if files have been modified, before reverting them.

Files that have not been modified, will be reverted. Those that have been, will remain untouched.

Since this is a safe operation (in the sense that no data can be lost), this action will not ask for confirmation.

Open

For each entry in the selection, launch the associated "View" application.

If no association is present for a specific file extension (or if the file does not have an extension), the default * association will be used.

Open the containing folder

For each folder in the selection, asks the OS to open a file browser at the corresponding place.

What file browser is opened, depends on the OS's settings.

Resolve actions

Teams comes with many strategies to resolve files:

Resolve actions prolog

The first thing that happens is that the last revision of the file is retrieved from the server (and stored in a temporary location).

Then (for all but Use local, discard remote... and Use remote, discard local...) IDA will be launched in a special mode, and with different set of parameters that depend on the exact nature of the operation.

Auto resolve (if no conflicts)…​

Perform the "resolve actions" prolog, then launch IDA non-interactively: IDA will attempt merging the changes made to the local file with those that were made to the last revision of the file, and succeed if no conflicting changes were found.

This is a safe operation in the sense that, should there be any conflict, it will not touch the local file.

Auto resolve, prefer local…​

Perform the "resolve actions" prolog, then launch IDA non-interactively: IDA will merge the changes made to the local file with those that were made to the last revision of the file. Each time a conflict is found, automatically pick the local change.

Auto resolve, prefer remote…​

Perform the "resolve actions" prolog, then launch IDA non-interactively: IDA will merge the changes made to the local file with those that were made to the last revision of the file. Each time a conflict is found, automatically pick the other change.

Interactive merge

Perform the "resolve actions" prolog, then launch IDA interactively: the user will be presented with a 3-panel IDA instance, where it will be possible to manually pick either the local, or the remote change, for each conflict.

Once the user is done and exits IDA saving the resulting database, the file will be considered resolved.

Use local, discard remote…​

Perform the "resolve actions" prolog, then just consider that our local version of the file is the correct one.

Use remote, discard local…​

Perform the "resolve actions" prolog, then replace the local version of the file with the other one.

Diff against the local file

Retrieve the specified file(s) from the server (and store them in a temporary location), then launch the associated "Diff" application to compare them against their local versions.

Find in vault…​

Prompt the user for a pattern/substring to be looking for, and queries the server.

If a match is found, it will be selected in the vault files widget. It is then possible to move forward/backward in the search results.

Next search result

Move forward in the result set of a find operation.

Previous search result

Move backward in the result set of a find operation.

Refresh

Clears the local caches of all the data that was retrieved from the local filesystem & the Hex-Rays Vault server, and force a refresh of all widgets.

Show in Vault files/Show in Local files

Find the corresponding selection in the other view, select it, and give focus to that view.

This is helpful to navigate between vault files and local files.

Show deleted files

Toggle the visibility of files that have been deleted.

When a file is deleted in revision #N, its revisions up to #N-1 are still kept on the server (but not visible by default.)

This offers the opportunity to view (and possibly resurrect) such deleted files.

Add new site…​

Create a new site.

While logged in as a non-administrator, you won't have the choice but to associate the site to the current user. However, when logged in as an administrator, it is necessary to provide the user's name as well.

Edit site…​

Offers the ability to modify the following properties of a site:

  • Its root directory

  • The client's host

  • Optional site filters

Delete site…​

Delete the selected site (after prompting for confirmation.)

Naturally, deleting a site will also delete the worklists that were associated with that site. The commits that were made from that site will not be deleted.

Use this site…​

Make IDA switch to the selected site.

This can be useful if you have more than one site on your machine.

Switching to a site requires that the client host matches that of the current machine, and that the site belongs to the user who's currently logged-in.

Add new user…​

Prompts the administrator for various bits of information about the user: login, real name, license ID, password, …​ and registers that information on the server.

Edit user…​

Lets an administrator change all information about a particular user, with the exception of their login (immutable) and password (use the dedicated action to do that.)

Delete user…​

Asks the administrator for confirmation, then deletes the user from the server.

Deleting a user also deletes the worklists that belonged to the user. The commits made by that user won't be impacted.

Set password…​

Prompts for a new password (and its confirmation), and applies the changes on the server.

Add new worklist…​

Prompts the user for a brief worklist description (which can remain empty at this point), and create a new, empty worklist.

Edit worklist…​

Shows worklist details, and offers to edit its description.

This action can only be performed on worklists that belong to the current user.

View worklist…​

Shows other users' worklists details, in read-only mode.

Delete worklist…​

Prompts for confirmation, and deletes the worklist.

All modifications (including additions & deletions of files), will be abandoned/reverted.

Migrate to another worklist…​

Lets the user pick another one of his pending worklists (or, alternatively, create a new one), then moves the files to that worklist.

Show other users' worklists

Toggle between the two following states:

  1. show this user's worklists on this site,

  2. show all worklists (from all users, and on all sites)

Last updated

Was this helpful?