What's New in TortoiseSVN 1.6
TortoiseSVN 1.6 is a superset of all previous TortoiseSVN releases, and is considered the current stable and "best" release. Anything in earlier versions is also in 1.6, but 1.6 contains features and bugfixes not present in any earlier release.
Compatibility Concerns
Older clients and servers interoperate transparently with 1.6 servers and clients. However, some of the new 1.6 features may not be available unless both client and server are the latest version. There are also cases where a new feature will work but will run less efficiently if the client is new and the server old.
New Feature Compatibility Table
New Feature | Minimum Client | Minimum Server | Minimum Repository | Notes |
---|
handling of tree conflicts | any | any | any | Using servers older than 1.6 is possible, but some kinds of conflicts will not be detected. |
New Features / Enhancements
file:/// access to BDB repositories
TortoiseSVN 1.6 no longer supports access to BDB repositories via the file:///
url. This doesn't affect accessing BDB repositories over svn://
or http://
though.
If you have a BDB repository that you still access via the file:///
url, you have to convert the repository to the FSFS format with the svnadmin tool which is available in the SVN command line client.
Please follow the instructions in the Subversion book to convert the repository.
Improved handling of tree conflicts
Subversion 1.6 can detect tree conflicts during update/merge/switch operations. Those items are then marked as conflicted to indicate the problem.
Note that Subversion is still treating renames as a "copy+delete" operation, so file renames causing tree conflicts can only be detected in terms of file additions and deletions. Because of this, false positives during tree conflict detection are possible.
TortoiseSVN 1.6 shows those tree conflicts during the operation when they happen, and also with a conflict overlay and in the Check-for-modifications dialog.
A new conflict resolve dialog helps with resolving such conflicts, indicating the type of tree conflict and hints on how you can resolve those conflicts.
Log Cache
The log cache introduced in TortoiseSVN 1.5 has been improved to run more smoothly. An extensive set of options is available to control the cache management. See the settings dialog for details.
Also, repositories sharing the same URL or UUID are now fully supported.
Revision Graph
The revision graph has changed dramatically and has been rewritten almost completely.
The new revision graph has many more options to tweak the output. For example, it is now possible to hide/show individual subtrees.
IBugtraq provider plugin enhancements
A new interface IBugtraqProvider2 can be used by plugins get more control over commits and provide more information for the user.
This new interface allows a plugin to reject a commit, execute a task after a successful commit (to e.g., add an entry to the issue in the issue tracker). It also allows plugins to show an options/settings dialog. And a plugin can add revision properties with each commit.
Developers interested in writing a plugin for an issue tracker can get the code for example plugins in C++ and C# from our contrib folder.
Misc changes
There are many more changes in 1.6 worth mentioning:
- Ignoring multiple files by extension
- Filtering by bug ID in the log dialog
- Negating the filter in the log dialog
- Better handling of "runas" in the status cache
- Items are grouped by external in dialogs if no changelists are present
- Overlays in status lists for checkout depths and external/nested items
Of course, those are not all the enhancements/changes that were done for this 1.6 release. You can get a more detailed list of changes from the changelog or by showing the SVN log on our repository.
Known issues in 1.6
File externals
Subversion 1.6 now supports single file externals as well as folder externals. However, there are some significant issues you should be aware of before using them.
A file external is created by adding a value to the svn:externals
property of a folder. However, once such a file external has been added it cannot be removed from the working copy, even if you delete the svn:externals
property. The only way to remove the file from your working copy is to make a fresh checkout. See Subversion issue #3351
It is currently not possible to add a binary file as an external. See See Subversion issue #3368