…system configuration files
When libgit2 is passed a path to a working directory instead of a git directory the names returned from git_reference_listall (and perhaps other similar methods) will be prefixed with a slash such that insteaf of refs/heads/master it'll return /refs/heads/master. LibGitSharp always does it's string prefix comparisons without a starting slash (which seems to be the correct thing to do). Includes test which verifies the problem by copying the sample working directory and performing the same test (CanListAllBranches) that's run for the bare repository. Update constructor documentation to reflect that it's possible to pass the path to a working directory.
…eferenceException when the Repository is empty Fix issue #105
…tead of a string containing the path of the repository This instance has to be released by a call to Dispose() or through usage of the using() statement.
…lob object ids
…orking directory Fixes issue #95 - 2/2. One can't GitRemove a modified file. $ mkdir test $ cd test $ git init . $ echo "a" > a.txt $ git add . $ git commit -m "Initial commit" $ echo "b" >> a.txt $ git status no changes added to commit (use "git add" and/or "git commit -a") $ git rm a.txt error: 'a.txt' has local modifications (use --cached to keep the file, or -f to force removal)
…working directory Fixes issue #95 - 1/2. One can GitRemove a file which has been deleted from the workdir $ mkdir test $ cd test $ git init . $ echo "a" > a.txt $ git add . $ git commit -m "Initial commit" $ git status nothing to commit (working directory clean) $ rm a.txt $ git status On branch master Changes not staged for commit: (use "git add/rm <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) deleted: a.txt $ git rm a.txt $ git status On branch master Changes to be committed: (use "git reset HEAD <file>..." to unstage) deleted: a.txt