git2r 0.11.0
------------

NEW FEATURES

* Add punch card plot.

* Add branch argument to clone with name of the branch to checkout.

* Add 'force' argument to 'add' method to add ignored files.

* The following methods can now be called without the repository
  argument: 'branches', 'references', 'remotes', 'tags' and 'workdir'.
  When these methods are called without the repository argument, the
  repository is searched for with 'discover_repository' in the current
  working directory.

* Add name of branch to each item in branch_list.

* Add name of tag to each item in tags list.

* Add S4 class 'cred_env' to pass credentials in environment
  variables.

* SSH transport on Windows. This requires 'LibSSH2' and
  'OpenSSL'. These two libraries are downloaded from
  'https://github.com/rwinlib' during configuration of the package.

* Static linking of LibSSH2 on OSX to support redistributable binary
  package with SSH transport enabled. Version 1.6.0 of LibSSH2 is
  downloaded and built from 'https://github.com/libssh2/libssh2'.

IMPROVEMENTS

* Better summary output from S4 classes 'git_commit' and
  'git_repository'.

* Updated libgit2 source code to commit (98f7bd2) from 2015-08-05.

BUG FIXES

* Add imports to DESCRIPTION to fix CRAN notes.

* Fix plot function to use the repository argument 'x'

* Update configuration to build on OpenBSD.

* Fix checkout branch in empty repository.

* Fix path argument in rm_file.

* Internal refactoring of C code that raise error to prevent segfault.

git2r 0.10.1
------------

CHANGES

* Rename 'bundle_repo' method to 'bundle_r_package'

git2r 0.10.0
------------

NEW FEATURES

* Added method libgit2_sha that returns the commit id of the libgit2
  library that the bundled source code is based on.

* Added the method in_repository to determine if a directory is in a
  git repository.

CHANGES

* Add brief summary of the five latest commits when summarizing a
  git_respository.

* Added argument 'n' to the commits method to limit the number of
  commits in the output.

* Added the following methods with missing repository signature;
  commits, is_shallow, is_empty, is_detached, repository and
  status. Internally, these methods use getwd and discover_repository
  to open a repository.

* Changed configuration to raise error if the OpenSSL library is not
  found on non-Windows systems.

* Changed configuration to raise error if the iconv library is not
  found on OSX.

* Removed print of the configuration in the config method. Changed to
  return S3 class git_config.

* Removed print of the status in the status method. Changed to return
  S3 class git_status.

BUG FIXES

* Use OPENSSL_INCLUDES variable to build on Solaris.

* Use bundled regex library on Solaris.

git2 0.9
--------

CHANGES

* Single quote 'libgit2' and 'Git' in Description field

git2 0.8
--------

CHANGES

* Added bare argument to clone method to create a bare repository

* Added force argument to push to force local revision to the remote
  repo

* Updated libgit2 source code (2a0f67f)

* Internal refactoring of push

NEW FEATURES

* Added method rm_file to remove files

* Added 'all' argument to commit method to stage modified and deleted
  files

* Added shortcut to checkout previous branch with "-" which is
  synonymous with "@{-1}"

* Added session argument to commit method to add sessionInfo to commit
  message

* Added session argument to tag method to add sessionInfo to tag
  message

* Added  method to coerce POSIXlt to S4 class git_time

* Added method 'revparse_single' to find object specified by revision

* Added plot method

git2 0.7
---------

CHANGES

* Update libgit2 source code to commit (366e53d)

* Fix configuration of compiler options when the OpenSSL library is
  found on non-Windows platforms

git2r 0.6
---------

CHANGES

* Update Title and Description field in DESCRIPTION file.

git2r 0.5
---------

CHANGES

* Update libgit2 source code to commit (a291790)

* Use Alice and Bob as placeholder names in examples.

* Add COPYRIGHTS file to list all copyright holders.

* Fix significant compiler warnings from R CMD check with pedantic
  flag.

git2r 0.4
---------

CHANGES

* Fix build on Windows

git2r 0.3
---------

CHANGES

* Internal refactoring of merge method and merge tests.

* Update libgit2 source code to version v0.22.0

BUG FIXES

* Fix build on OSX.

git2r 0.2
---------

NEW FEATURES

* Add method 'odb_objects' to list all objects available in the
  database as a data.frame

* Add method 'odb_blobs' to list all blobs reachable from the commits
  in the object database.

DOCUMENTATION

* Added examples to all exported methods.

CHANGES

* Removed ggplot2 dependency. Moved plot functionality to the ggit
  package (https://github.com/ropensci/ggit).

* Renamed note_list method to notes

* Removed markdown_link method

* Renamed diff and merge arguments

IMPROVMENTS

* Better performance when summarizing contributions.

* Improved build of package.

BUG FIXES

* Fixed memory leaks.

* Fixed use of allocVector without protection.

* Added unload hook to unload DLL.

* Fix tree and blob tests to use writeChar instead of writeLines to
  have more control over line endings.

git2r 0.1
---------

NEW FEATURES

* Many new features and methods added, see the documention for a
  description of the methods below:

  - Blob: content, blob_create, hash, hashfile, is_binary, is_blob,
          length, show, summary.
  - Branch: branch_create, branch_delete, branch_get_upstream,
            branch_remote_name, branch_remote_url, branch_rename,
            branch_set_upstream and branch_target.
  - Commit: is_commit and parents.
  - Diff: diff and diff_print.
  - Fetch: fetch and fetch_heads.
  - Libgit2: libgit2_features and libgit2_version.
  - Merge: merge.
  - Note: note_create, note_default_ref, note_list and note_remove.
  - Pull: pull.
  - Push: push.
  - Remote: remote_add, remote_remove, remote_rename and remote_url.
  - Repository: discover_repository and is_shallow
  - Reset: reset.
  - Stash: stash, stash_drop, stash_list, show and summary.

* Improved error messages to give more detailed information including
  which function raised the error.

NEW S4 CLASSES

* The following new S4 classes to handle the libgit2 data structures:
  - cred_ssh_key
  - cred_user_pass
  - git_blame
  - git_blame_hunk
  - git_blob
  - git_diff
  - git_diff_file
  - git_diff_hunk
  - git_diff_line
  - git_fetch_head
  - git_merge_result
  - git_note
  - git_reflog_entry
  - git_stash
  - git_transfer_progress
  - git_tree

CHANGES

* Renamed methods:
  - is.bare to is_bare
  - is.empty to is_empty
  - is.head to is_head
  - is.local to is_local

* Rename hex to sha for the 40-character SHA-1 hash in method
  arguments and S4 class slots.

git2r 0.0.8
-----------

NEW FEATURES

* Added method to clone repository

* Added method config to set user.name and user.email in a repository

* Added method status to display state of a repository

git2r 0.0.7
-----------

NEW FEATURES

* Added method to create a commit

CHANGES

* Improved error checking

git2r 0.0.6
-----------

NEW FEATURES

* Added method init to create a new Git repository

CHANGES

* Removed usage of testthat package when testing the package

* Removed bundled zlib in src/zlib and instead link against zlib
  shipped with R.

* Dropped usage of external pointers, S4 git_repository now keeps
  track of the path of the repository.

git2r 0.0.5
-----------

CHANGES

* Renamed S4 class repository to git_repository

NEW FEATURES

* Added method commits to list all commits in repository

* Added S4 class git_commit to hold infformation of a commit

* Added S4 class git_time to hold time of an action

* Added slot walker to S4 class git_repository

git2r 0.0.4
-----------

NEW FEATURES

* Added method remote_url to get the url a remote in a repository

* Added method workdir to get workdir of a repository

* Added method remotes to list remotes of a repository

* Added S4 class git_signature to hold information of an action
  signature (e.g. for committers, taggers, etc)

CHANGES

* Renamed S4 class tag to git_tag

* Renamed S4 class branch to git_branch

* Renamed S4 class reference to git_reference

git2r 0.0.3
-----------

NEW FEATURES

* Added method branches to list branches

* Added method head to retrieve head

* Added method is.head to check if a branch is head

* Added method is.local to check if a branch is local

* Added S4 class branch to hold information of a git branch

* Added method to show a reference

* Added method to list all references in a repository

* Added S4 class reference to hold information of a git reference

git2r 0.0.2
-----------

NEW FEATURES

* Added is.bare method to check if a repository is bare

* Added is.empty method to check if a repository is empty

git2r 0.0.1
-----------

NEW FEATURES

* Added S4 class repository to work with a git repository

* Initial package structure
