Skip to content
Git + .NET/Mono =
C# Other
  1. C# 99.3%
  2. Other 0.7%
Branch: master
Clone or download

Latest commit

bording Merge pull request #1784 from libgit2/update-global-json
Update SDK version in global.json
Latest commit 7fc4be5 Apr 15, 2020


Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Remove GitHub workflow Jan 31, 2020
LibGit2Sharp.Tests Fix CanIncludeStatusOfUnalteredFiles test Jan 31, 2020
LibGit2Sharp Merge pull request #1761 from AArnott/validate/githubActions Feb 16, 2020
NativeLibraryLoadTestApp Target net46 instead of net461 Dec 19, 2018
Targets Improve GenerateUniqueIdentifierCs Aug 25, 2018
azure-pipelines Update macOS image on Azure Pipelines Mar 2, 2020
tools Trim down scripts Feb 8, 2020
.editorconfig Fix editorconfig Aug 25, 2018
.gitattributes Remove union merge driver for sln, csproj files May 30, 2015
.gitignore Issue-1471 Add worktree support, based on the current level of suppor… Oct 23, 2018
.mailmap Fix .mailmap Apr 28, 2014
.travis.yml Switch to GitHub Actions for CI/PR builds Jan 31, 2020 CHANGES: update for v0.26.0 Feb 14, 2019 Pin the .NET Core SDK Jan 30, 2020
Directory.Build.props Switch to GitHub Actions for CI/PR builds Jan 31, 2020
Directory.Build.targets Switch to GitHub Actions for CI/PR builds Jan 31, 2020 Copyrights: update for 2015 Jan 19, 2015
LibGit2Sharp.sln Remove targets file since all platforms can sign now Apr 21, 2019
LibGit2Sharp.sln.DotSettings Fix Resharper private member prefix setting May 15, 2015
LibGit2Sharp.v2.ncrunchsolution Sandbox every test Jan 4, 2015 Fix typos in 'Optimizing unit testing' Feb 20, 2019 Add tarring capabilities Dec 13, 2013
appveyor.yml Switch to GitHub Actions for CI/PR builds Jan 31, 2020
azure-pipelines.yml Trim down scripts Feb 8, 2020
global.json Update SDK version in global.json Apr 15, 2020
init.cmd Switch to GitHub Actions for CI/PR builds Jan 31, 2020
init.ps1 Trim down scripts Feb 8, 2020
libgit2sharp.snk Update code generation to use .NET SDK projects Mar 12, 2017
nuget.config Remove unused package sources Nov 19, 2017
square-logo.png Add libgit2 project logo May 27, 2012
version.json Prepare for v0.27 Feb 15, 2019


master azurepipelines master win master nix coverity

LibGit2Sharp brings all the might and speed of libgit2, a native Git implementation, to the managed world of .NET and Mono.


  • Windows: .NET 4.6.1+
  • Linux/Mac OS X: Mono 5.4+

Online resources

Troubleshooting and support

  • Usage or programming related question? Post it on StackOverflow using the tag libgit2sharp
  • Found a bug or missing a feature? Feed the issue tracker
  • Announcements and related miscellanea through Twitter (@libgit2sharp)

Quick contributing guide

  • Fork and clone locally
  • Create a topic specific branch. Add some nice feature. Do not forget the tests ;-)
  • Send a Pull Request to spread the fun!

More thorough information available in the wiki.

Optimizing unit testing

LibGit2Sharp strives to have comprehensive and robust unit test suite to ensure the quality of the software and to assist new contributors and users who can use the tests as sample to jump start development. There are over one thousand unit-tests for LibGit2Sharp, this number will only grow as functionality is added.

You can do a few things to optimize running unit-tests on Windows:

  1. Set the LibGit2TestPath environment variable to a path in your development environment.
  • If the unit-test framework cannot find the specified folder at runtime, it will fall back to the default location.
  1. Configure your anti-virus software to ignore the LibGit2TestPath path.
  2. Install a RAM disk like IMDisk and set LibGit2TestPath to use it.
  • Use imdisk.exe -a -s 512M -m X: -p "/fs:fat /q /v:ramdisk /y" to create a RAM disk. This command requires elevated privileges and can be placed into a scheduled task or run manually before you begin unit-testing.



The MIT license (Refer to the file)

You can’t perform that action at this time.