I am very proud to announce GitLink 2.0, the tool that will make open source code more accessible! This release is a major release introducing many new features and improvements. One of the improvements is support for more providers than GitHub, so I have renamed GitHubLink to GitLink.
First things first: this release wouldn’t be what it is now without the help of my friend Peter Kiers who saw the potential and lifted the product to a higher level.
Supporting more providers
As soon as we released GitHubLink, it went popular among open-source developers on GitHub. However, some people requested support for other providers such as BitBucket. This gave us the idea to create a generic approach where we could automatically detect the provider and find the right information. As of now, the following providers are supported:
Are you interested in supporting a provider? Help us out with a pull request, it’s really easy!
Supporting more project types
GitHubLink supported both C# and Visual Basic projects. Starting with GitLink 2.0, all project types that Visual Studio can load are supported such as C++ and F#.
One of the downsides of GitHubLink was that it downloaded the whole repository in order to retrieve the latest commit SHA. GitLink 2.0 automatically determines whether there is a local .git folder. If so, it won’t even go to the official url to retrieve the latest commit but will use the local repository. If there is no local .git file, GitLink 2.0 will only fetch the latest commit and will no longer download any files from the remote repository resulting in much better performance.
Introducing PDB file verifications
Starting with GitLink 2.0, all PDB files are now verified before being updated. This means that GitLink checks whether all files inside the PDB file are actually available and contain the right hash.
Removing the F# and SourceLink dependencies
GitHubLink heavily relied on SourceLink, an F# implementation to update the PDB files to allow a custom source server. It was however hard to combine the world of F# and C# and we always had to ship the 2 assemblies with GitHubLink. In GitLink 2.0, the dependencies are no longer required and all logic is translated to C#. This improvement saves about 500 kb on the final GitLink assembly size.
How to get GitLink
You can download GitLink 2.0 here. It is also available on NuGet and Chocolatey. Note that if you have used GitHubLink in the past, we will be keeping compatibility packages for that until version 3.0. It’s best to update to GitLink as soon as possible.