It is actually a C# binding to the libgit2 linkable C Git library.
The original libgit2 library can be downloaded from here.
Other language bindings for libgit2:
Ruby - Rugged
Objective-C - Objective Git
Python - pygit2
PHP - php-git
Lua - luagit2
Delphi - GitForDelphi
Node.js - Gitteh and/or nodegit
Go - go-git
oCaml - libgit2-ocaml
Erlang - Geef
.NET - libgit2net
Haskell - hgit2
What is new in this release:
- Teach RemoteUpdater to update the remote URL
- Introduce ObjectDatabase.CreateTree(Index) and Index.Reset(Tree)
- Add process wide logging feature
- Add process wide SmartSubtransport registration/unregistration
- Expose Index.Clear()
What is new in version 0.21:
- Teach RemoteUpdater to update the remote URL
- Introduce ObjectDatabase.CreateTree(Index) and Index.Reset(Tree)
- Add process wide logging feature
- Add process wide SmartSubtransport registration/unregistration
- Expose Index.Clear()
What is new in version 0.13.0:
- Teach checkout to report notifications
- Create a new repo.Checkout() overload which accepts a Commit object
- Allow ObjectDatabase.CreateBlob() to limit the number of bytes to consume
- Make ObjectDatabase.CreateBlob() accept a Stream
- Introduce repo.Refs.RewriteHistory()
- Introduce repo.Refs.ReachableFrom()
- Introduce TreeDefinition.From(Commit)
- Expose TagFetchMode property on Remote type
- Add CopyNativeDependencies.targets
What is new in version 0.10.0:
- Update working directory on checkout
- New network related features: clone, fetch, push, list remote references
- Expose the heads that have been updated during the last fetch in Repository.Network.FetchHeads
- Introduce Repository.Network.Remotes.IsValidName()
- New .gitignore related features: temporary rules, path checking
- Add support for custom, managed ODB backends
- Add revparse support in Repository.Lookup()
- Improve Repository.Commit(): add merged branches as parents, cleanup merge data
- Introduce Blob.IsBinary
- Add strongly-typed exceptions (NonFastForwardException, UnmergedIndexEntriesException, ...)
- Add basic stashing support: add, retrieve, list and remove
- Add git clean support in Repository.RemoveUntrackedFiles()
- Add shortcut to HEAD in Repository.Refs.Head
- Introduce Repository.Refs.IsValidName()
- Add Repository.Refs.FromGlob() to enumerate references matching a specified glob
- Add support for XDG configuration store
- Make Config.Get() and Config.Delete() able to target a specific store
- Diff.Compare() enhancements: work against workdir and index, consider untracked changes, expose typechanges
- Allow retrieval of the remote of a non-local branch through Branch.Remote
What is new in version v0.9.5:
- Added support to create, retrieve, list and remove object notes.
- Make Repository able to rely on specified global and system config files.
What is new in version v0.9.0:
- Support local tracking branches
- Add an Ignored collection to the RepositoryStatus type
- Expose the relative path of TreeEntries
- Make Repository able to work against specified index and workdir
- Direct creation or Blobs, Trees and Commits without the workdir nor index involvement
What is new in version v0.8.0:
- Additions:
- Add Repository.Reset() and support of Soft and Mixed modes
- Make Repository.Commit() able to amend the current tip of the Head
- Make the constructor of Repository able to open a repository from a working directory path
- Make Repository.Index.RetriveStatus honor the .gitgnore files
- Changes:
- Remove Repository.HasObject()
- Change Repository.Init() to make it return an instance of the Repository type, instead of a string containing the path of the repository
- Update libgit2 binaries to libgit2/libgit2@6d39c0d
- Fixes:
- Reinit a repository doesn't throw anymore
- Embedded libgit2 binaries are now compiled with THREADSAFE=ON flag
- Prevent Repository.Head.IsCurrentRepositoryHead from throwing when the Repository is empty
What is new in version v0.7.0:
- Additions:
- Allow access to System and Global configuration outside the context of a repo
- Add overloads to index methods that accept collection of paths
- Changes:
- Make Index.RetrieveStatus() return native file paths
- Make IndexEntry able to cope with native file paths
- Update libgit2 binaries to libgit2/libgit2@be00b00
- Deprecate Repository.HasObject()
- Bug Fixes:
- Fix the build script to be fully XBuild compatible on Linux/Mono 2.10
- Fix Index.Remove() to correctly handle files which have been deleted and modified in the working directory
What is new in version v0.6.1:
- Changes:
- Update libgit2 binaries to libgit2/libgit2@e3baa3c.
- Fixes:
- Prevent segfault when determining the status a of repository.
- Fix retrieval of buggy status in some (not that rare) cases.
What is new in version v0.6.0:
- Additions:
- Add Configuration.Get() overload that takes key in parts.
- Add tracking branch details.
- Allow creation of commit using signature from configuration files.
- Add Index.Remove().
- Add a string indexer to the Commit and Tree types in order to ease retrieval of TreeEntries.
- Changes:
- Provide default value for non existent configuration setting.
- Change the tree structure into which libgit2 binaries are located.
- Update libgit2 binaries to libgit2/libgit2@28c1451.
- Fixes:
- Prevent enumeration of branches from throwing when the repository contains remote branches.
- Fix Index.Stage(), Index.Unstage().
What is new in version v0.5.0:
- Additions:
- Add Repository.Index.RetrieveStatus()
- Add handling of configuration settings of the repository and retrieval of Remotes
- Changes:
- Can now enumerate from multiple starting points
- While enumerating commits, automatically dereference objects to a commit object id
- Defer resolving of Branch.Tip, Tag.Target and Tag.Annotation
- Replace usage of ApplicationException with LibGit2Exception
- Update libgit2 binaries to libgit2/libgit2@35e9407
- Fixes:
- Prevent enumeration of commits from throwing when starting from a tag which points at a blob or a tree (#62)
- Prevent a branch from being removed if it's the current HEAD
- References are now being enumerated in a ordered way
- Fix Repository.Discover() implementation when no .git folder exists
Comments not found