LibGit2Sharp

Software Screenshot:
LibGit2Sharp
Software Details:
Version: 0.21.1 updated
Upload Date: 12 Apr 15
Distribution Type: Freeware
Downloads: 146

Rating: 3.5/5 (Total Votes: 2)

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

Similar Software

Keymaster
Keymaster

1 Mar 15

User Choices
User Choices

12 May 15

Leaflet
Leaflet

10 Dec 15

Other Software of Developer libgit2 Development Team

GitForDelphi
GitForDelphi

6 Jun 15

nodegit
nodegit

6 Mar 16

Rugged
Rugged

10 Apr 16

Gitteh
Gitteh

14 Apr 15

Comments to LibGit2Sharp

Comments not found
Add Comment
Turn on images!