AnkhSVN FAQ
AnkhSVN Frequently Asked Questions
What versions of VS.NET does Ankh run on?
Ankh currently supports both VS.NET 2002 and VS.NET 2003. It is the same install file (msi) for both versions.
What else do I need to have installed to use Ankh?
Ankh links into the same libraries that svn.exe does, so if the Subversion repository is already created it is possible to use Ankh
without ever installing Subversion at all. However, with Ankh you cannot yet do some things, including but not limited to creating a repository,
merging, copying or moving. It is highly recommended that Subversion be installed as well at this point.
You can install Subversion from http://subversion.tigris.org.
Other than that all you need is VS.NET.
I have Ankh installed but the menu entries are disabled or I don't see any at all.
It is possible that Ankh was somehow disabled in the VS.NET Add-in Manager.
To enable it, in VS.NET go to the Tools menu and select Add-in Manager. There should be an entry for the AnkhSVN add-in that you need to check.
You should check the Startup box as well so Ankh will load when VS.NET starts, but not the Command Line box.
After doing so green checks and other icons will become visible in the Solution Explorer form next to the files in your project that are
in your Subversion working copy.
I uninstalled Ankh, but the menu entries are still there, how can I get rid of them?
You can run devenv /setup from the command line which will set VS.NET back to the default state. However
if you have any VS.NET customizations you may lose them.
Can I use Ankh with CVS?
No, Ankh only works with subversion, it will not work with CVS. To use CVS with VS.NET Jalindi Igloo is available at
http://www.jalindi.com/igloo.
How can I set up a Subversion server on Windows?
Here are instructions for setting up an Apache server on Windows http://tortoisesvn.tigris.org/serverinstall.html.
I am getting the error "Unable to retrieve folder information from the server with my ASP.NET web project".
This problem is described in detail
here.
The solution is to avoid using the Web Project wizard and to create or convert your projects to
use standard class libraries, which you then tweak to enable use of all the web component wizards. A
description of how to do that is here (for VB) : http://blog.steeleprice.net/posts/134.aspx
which refers to here for C#: http://staff.develop.com/onion/Samples/aspdotnet_without_web_projects.htm.
Also, Mark Griffiths came up with a workaround where you create two .cmd files in each web project:
hide-svn.cmd:
@ECHO OFF
FOR /R %%f IN (.svn) DO IF EXIST "%%f" (
ATTRIB -h "%%f"
RENAME "%%f" _svn
)
restore-svn.cmd:
@ECHO OFF
FOR /R %%f IN (_svn) DO IF EXIST "%%f" (
RENAME "%%f" .svn
ATTRIB +h "%%~pf\.svn"
)
Before opening the web project, run hide-svn. After the project is loaded (and refreshed it's vswebcache), run restore-svn.
It is only during initial loading and when using the refresh button in solution explorer that the .svn directories get in the way.
I installed Ankh, Ankh menu entries are there but right clicking on a versioned file gives me a null pointer exception.
Make sure the .sln file is under version control. See the readme file for more information.
Why do I have to use Ankh rename and not the VS.NET rename to rename a versioned file?
We were unable to get the VS.NET rename to work with Ankh for various reasons. Unfortunately,
the ItemRenamed event only occurs (as indicated by the name) AFTER the IDE has renamed the file.
It was attempted to work around that by first renaming the file in question back to it's original
name and then invoking Subversion's rename functionality on it. Kludgy, but it works. However,
Subversion doesn't permit you to rename an item more than once, nor does it allow you to rename
items that have local modifications. Attempting to do so will cause an exception to be thrown.
It was attempted to work around that by catching that exception, and renaming the project
item back to the original name by calling SaveAs on the ProjectItem object. But this DOES NOT WORK for
folders - you cannot call SaveAs on a ProjectItem if it represents a folder.
In light of this, we found that the current approach was a better idea
I am getting an svn client error exception for svn_io_file_open: can't open (then a path to a file with a .projdata extension)
You cannot put the .projdata file under Subversion version control. VS.NET puts a pretty tight lock on that
whenever a solution is loaded - other applications cannot even read from it. This exact scenario was even used
for an Ankh presentation to demonstrate how the error reporting worked. This file is generated by VS.NET, doesn't have much of
interest in it, and there's no reason to put it under version control anyway. Other generated files that should never
be put under version control include but are not limited to files of type .projdata, .user, .suo, .obj, .exe, .pdb and dll.
Why would I want to use subversion and not Visual SourceSafe?
Here is a discussion on that topic: http://www.wadhome.org/svn_vs_vss.txt
I get the exception System.NullReferenceException:Object reference not set to an
instance of an object when I open my project, and I have Visual Assist X installed.
Check to see if this is your stack trace:
System.NullReferenceException:
Object reference not set to an instance of an object.
at EnvDTE.Events.get_CommandEvents(String Guid, Int32 ID)
at Ankh.EventSinks.CommandsEventSink.RegisterCommandEvents() in
T:\Ankh-Release2\Ankh\EventSinks\CommandsEventSink.cs:line 30 at
Ankh.EventSinks.EventSink.CreateEventSinks(AnkhContext context) in
T:\Ankh-Release2\Ankh\EventSinks\EventSink.cs:line 65 at
Ankh.AnkhContext.SolutionOpened() in
T:\Ankh-Release2\Ankh\AnkhContext.cs:line 214
If that is your stack trace then it's probably caused by a conflict with
the Visual Assist X beta addin . The exception should go away if you uninstall
the VAX beta. This has been reported to Whole Tomato and it is hoped that they
will fix it in a future release.
If you have this stack trace and do not have the VAX beta installed, it's
possible that some other addin is interfering with Ankh in the same way.
There is nothing about my problem here!
Don't despair. Either send a mail to our developers mailing list(dev AT ankhsvn.tigris.org) describing the
problem (in as much detail as possible) or visit us in our IRC channel #ankhsvn on the irc.freenode.net server.