AnkhSVN FAQ
This is the complete FAQ for AnkhSVN. We have used our Wiki for this FAQ so that it is easy for you to help us maintain the contents of this FAQ. You only have to be a logged in project member to use the Wiki. There should be an Edit this page link displayed above.
Contents
- Using the features of AnkhSVN
- How do I identify the version of AnkhSVN I am using?
- Some project settings not preserved across checkin/checkout (ie. Working Directory). Why?
- Does subversion support locking of files? IE is there an equivalent of "checked out by me", "checked by other" as in Visual Source Safe?
- How does AnkhSVN determine whether a solution is version controlled?
- Why does AnkhSVN change my Solution file
- Why doesn't AnkhSVN 2.0 show glyphs on folders
- When does AnkhSVN use "_svn" instead of ".svn"?
- Using AnkhSVN with other software
- What versions of VS.NET does AnkhSVN run on?
- Does it work with the Visual Studio 2005 Express versions?
- What else do I need to have installed to use AnkhSVN?
- How do I convert my Visual Sourcesafe repository to Subversion?
- Why doesn't AnkhSVN work with Intel Compiler projects/{insert favorite project type here}
- I am using svnserve, when I attempt to do a commit to the remote repository I get a Permission denied error. How do i set up user accounts for svnserve?
- I'm trying use svn+ssh but i get an error dialog when I try to checkout or update.
- Errors
- When committing, I get an error saying Aborting commit: file remains in conflict
- If I do a "Replace In Files", AnkhSVN doesn't notice that the files have changed.
- I get an error saying "The version resource does not correspond to the resource within the transaction."
- I get an error saying "PROPFIND of ...: 405 Method Not Allowed"
- I get an error saying "Repository UUID 'XXXXXX' doesn't match expected UUID 'YYYYYY'
- AnkhSVN is installed, but when I enable AnkhSVN as SCC provider nothing happens
- Other
Using the features of AnkhSVN
How do I identify the version of AnkhSVN I am using?
From within Visual Studio choose Help -> About Microsoft Visual Studio
In the dialog that is shown choose AnkhSVN from "Installed products" and the version details will then be displayed in "Product details".
Note both these lists may require scrolling to find AnkhSVN and the version numbers.
Some project settings not preserved across checkin/checkout (ie. Working Directory). Why?
Those settings are considered to be the local user project options and they are not meant to be version controled by definition. (FYI they are not stored in the .vcproj / .csproj but in the .suo / .csproj.user Visual Studio user option files)
Does subversion support locking of files? IE is there an equivalent of "checked out by me", "checked by other" as in Visual Source Safe?
AnkhSVN supports locking via the Lock and Unlock commands. It also has icons to indicate the lock status of a file.
To enabled Source Safe like behavior, set the svn:needs-lock subversion property on the file(s) that you want this behavior on. For more information see the documentation on this subject
How does AnkhSVN determine whether a solution is version controlled?
AnkhSVN is loaded and set as active source control provider when the Solution (and projects that require it) are 'connected'. To connect a solution, go to File -> Subversion -> Change Source Control
Why does AnkhSVN change my Solution file
When Visual Studio opens a solution file it starts communicating with the SCC provider responsible for managing the solution. To enable this communication AnkhSVN must be loaded and enabled as active SCC provider.
To enable this scenario Visual Studio delegates certain sections of the solution file to specific packages. The information we currently add is there to load and enable AnkhSVN as active SCC provider.
When we add enlist support we will have to extend this section to contain some extra required reference data.
Why doesn't AnkhSVN 2.0 show glyphs on folders
AnkhSVN 2.0 is a true Visual Studio SCC provider, while previous versions where just an AddIn providing source control actions.
The Visual Studio design makes projects responsible for asking glyphs from the SCC provider. The SCC providers delivers those on demand, but can't send answers to requests that where not sent.
The common project types do not ask for glyphs on their (virtual) folders. So we are not able to answer glyphs for them.
Most AnkhSVN 1.X and TortoiseSVN users asking for this feature should first check out the new Pending Changes Window. (View -> Pending Changes, when AnkhSVN is enabled)
When does AnkhSVN use "_svn" instead of ".svn"?
Visual Studio 2005 and 2008 don't have problems with .svn directory. For backwards compatibility we continue to check the environment variable "SVN_ASP_DOT_NET_HACK" but we don't offer to set this from our user interface.
Using AnkhSVN with other software
What versions of VS.NET does AnkhSVN run on?
AnkhSVN 2.0 supports VS 2005 and VS2008. It is the same install file (msi) for all versions. The installer will update Ankh versions starting at 0.5.0
Does it work with the Visual Studio 2005 Express versions?
No, and it might never do so. The current position from Microsoft is that these SKUs will not support addins.
What else do I need to have installed to use AnkhSVN?
AnkhSVN links into the same libraries that svn.exe does, so if the Subversion repository is already created it is possible to use AnkhSVN without ever installing Subversion at all.
However, with AnkhSVN you cannot yet do some things, including but not limited to creating or upgrading a local repository. For these tasks it is highly recommended that Subversion be installed as well at this point. You can download Subversion from openCollabNet. Other than that all you need is Visual Studio.
How do I convert my Visual Sourcesafe repository to Subversion?
Information is in the Subversion Migration section of openCollabNet.
Why doesn't AnkhSVN work with Intel Compiler projects/{insert favorite project type here}
With the redesign for AnkhSVN 2.0 we implemented the new style SCC api which should support all project types that are scc-enabled just like the other source code control providers from other vendors. You might want to try connecting the problematic project. If that doesn't work either it probably means that the project has no support for source code control.
I am using svnserve, when I attempt to do a commit to the remote repository I get a Permission denied error. How do i set up user accounts for svnserve?
Svnserve has built-in authentication and authorization. You can setup users and realms within your /path-to-repos/conf/svnserve.conf file. See http://svnbook.red-bean.com/svnbook-1.0/ch06s03.html for instructions.
I'm trying use svn+ssh but i get an error dialog when I try to checkout or update.
You may not have an ssh client available. You can specify the full path to the client in the c:\Documents and Settings\YOURUSERNAME\Application Data\Subversion\config. Make sure you uncomment the # tunnels section and add a line like this:
ssh = c:\\Program\ Files\\TortoiseSVN\\bin\\TortoisePlink.exe
(note the double \ characters and the single \ to escape the space )
Errors
When committing, I get an error saying Aborting commit: file remains in conflict
This means you have a file that is in conflict, i.e., someone else has made a change that conflicts with one of yours. You will have to resolve the conflict before proceeding. This can be done by editing the conflict markers in the file, then doing AnkhSVN->Resolve on the file in question.
Alternatively, you can pick which version of the file you want to resolve in the Resolve dialog, or use an external merge tool (you need to set up one in the configuration dialog for this).
If I do a "Replace In Files", AnkhSVN doesn't notice that the files have changed.
If you want to do "Replace In Files" on files controlled by AnkhSVN, make sure to check the checkbox in the dialog that comes up. This will make VS open all the affected files in the document editor and force you to do an explicit "Save All" in order to finalize the changes. AnkhSVN will notice in this case.
I get an error saying "The version resource does not correspond to the resource within the transaction."
Running Update on the item in question solves this problem.
I get an error saying "PROPFIND of ...: 405 Method Not Allowed"
This usually means you are trying to perform a Subversion operation against an URL that isn't set up as a Subversion repository.
I get an error saying "Repository UUID 'XXXXXX' doesn't match expected UUID 'YYYYYY'
Subversion 1.5 clients give this error if the repository uuid changed since creating the working copy. Previous versions of the subversion libraries did not check this value as much as 1.5 clients do.
The suggested workaround is to check out a clean working copy. This should resolve the issue.
AnkhSVN is installed, but when I enable AnkhSVN as SCC provider nothing happens
If Visual Studio Packages -as AnkhSVN- throw an error while loading, packages can get disabled.
Please try to start 'devenv.exe /ResetSkipPkgs', this re-enables all packages previously disabled by Visual Studio.
Other
What's an Ankh?
Read about this ancient Egyptian sign of life.
