Release Notes

Public

5.0.44.629: Dec 10 2014

New

GUI: Improved I3 (black) theme on Windows by using the ClearType Fonts.

New

Visual Studio plugin: Changed 'Branch Explorer' view colors in Visual Studio 2012 or higher. Now, branch explorer colors are clearer so contrast is higher. Old colors had low contrast and they were difficult to distinguish.

New

GUI: Pending changes: Now, extra file info (changeset, size, author and modification date) is displayed for binary files.

New

Command line client: cm mklabel command can now be executed from outside a workspace. The syntax is the following:

cm mklabel lb:labelname@rep:myrep@localhost:9092 --changeset=8733

Note the cset number is mandatory in this case.

Bug

Command line client: cm showacl couldn't be execute from outside a workspace. Fixed.

Bug

Command line client and GUI: Private items excluded from 'ignored' parents couldn't be neither added nor listed in the 'pending changes' view or cm status command.

For instance, using this set of rules in the 'ignore.conf' file:

/src
!/src/bin

the 'pending changes' view and cm status command were hiding all items under /src, even those items under /src/bin.

Fixed. Now, /src path and children paths such as /src/readme.txt, /src/lib/newlib.h, etc. will be correctly shown as 'ignored' items, whereas /src/bin and its children paths (such as /src/bin/client.exe, /src/bin/deps/pom.xml) will be shown as private items.

Remark: The cm status --cutignored will still hide everything under an 'ignored' item.

Bug

Command line client: cm mklabel command was failing when using --changeset option with an invalid changeset number. Fixed. Now, this error condition is notified to the user.

Bug

Merge: Fixed an error performing a 'merge' operation when a directory is removed and reloaded again during the merge resolution. The file conflicts could be lost if they were related to the reloaded directory.

The failing scenario is the following:

* Initial structure:

/
/src
/src/bar.c
/src/foo.c

* Changes in source contributor:

add /doc
ch /src/foo.c
mv /src/foo.c to /doc/foo.c
delete /src

* Changes in destination contributor:

ch /src/foo.c
ch /src/bar.c

Choosing 'keep source' option in the directory conflicts resolutions (DeleteChange + MoveDelete) were causing the changes in the '/src/bar.c' item were lost.

Now the case it's fixed, and the file contents are correctly merged.

New

GitSync: Added support to sync with Git repositories using SSH protocol.

To use this feature correctly, users must have a SSH command line client in the PATH environment variable properly configured (described below).

=== SSH client configuration ===
* A SSH command line client "ssh" should be configured in the PATH environment variable.

* Copy the private key file (usually a file called "id_rsa") to the ssh config folder.
  Usually the folder name is ".ssh", located in the user's HOME folder.  
** On Windows-based OS, the "HOME" environment variable has to be set to the user folder,

   such as "C:\Users\myuser".
** On Linux-based OS, don't forget to set proper permissions to the private key file:
   "$chmod 600 /home/myuser/.ssh/id_rsa"

* Use the GitSync specifying the SSH clone URL.
  Example: "$cm sync rep2 git git@bitbucket.org:myuser/myrepo.git"
  If the private key is protected, the user will be prompted to enter the passphrase.

=== Troubleshooting ===
*  Problem: The ssh server is not listening in port 22, or
   different private keys have to be set for different servers.
** Solution: Create a "config" file in the ".ssh" folder, specifying different settings foreach server.
   Example of "config" file contents:
   
     Host gitolite.elegosoft.com
     User gitolite
     Port 2222
     IdentityFile ~/.ssh/id_rsa

     Host github.com
     User git
     IdentityFile ~/.ssh/github_key

     Host bitbucket.org
     IdentityFile ~/.ssh/id_rsa

*  Problem: I get "An error occurred while connecting to Git".
** Solution: It might be an error related with the configuration of the ssh client.
   It is recommended to use GitSync with the command line client to get more info about the error.
   Example: "$ cm sync rep2 git git@bitbucket.org:myuser/myrepo.git"