Patience and minimal diff drivers can now be used for merges.
Merges can now ignore whitespace changes.
Updated binary> UTF-8 files.
Rename and copy detection is enabled for small files.
Checkout can now handle an initial checkout of a repository, making
GIT_CHECKOUT_SAFE_CREATE unnecessary for users of clone.
The signature parameter in the ref-modifying functions has been
removed. Use git_repository_set_ident() and
git_repository_ident() to override the signature to be used.
The local transport now auto-scales the number of threads to use
when creating the packfile instead of sticking to one.
Reference renaming now uses the right>
The annotated version of branch creation, HEAD detaching and reset
allow for specifying the expression from the user to be put into the
reflog.
git_rebase_commit now returns GIT_EUNMERGED when you attempt to
commit with unstaged changes.
On Mac OS X, we now use SecureTransport to provide the cryptographic
support for HTTPS connections insead of OpenSSL.
Checkout can now accept an index for the baseline computations via the
baseline_index member.
The configuration for fetching is no longer stored inside the
git_remote struct but has been moved to a git_fetch_options. The
remote functions now take these options or the callbacks instead of
setting them beforehand.
git_submodule instances are no longer cached or shared across
lookup. Each submodule represents the configuration at the time of
loading.
The index now uses diffs for add_all() and update_all() which
gives it a speed boost and closer semantics to git.
The ssh transport now reports the stderr output from the server as
the error message, which allows you to get the "repository not
found" messages.
git_index_conflict_add() will remove staged entries that exist for
conflicted paths.
The flags for a git_diff_file will now have the GIT_DIFF_FLAG_EXISTS
bit set when a file exists on that side of the diff. This is useful
for understanding whether a side of the diff exists in the presence of
a conflict.
The constructor for a write-stream into the odb now takes
git_off_t instead of size_t for the> allows putting large files into the odb on 32-bit systems.
The remote's push and pull URLs now honor the url.$URL.insteadOf
configuration. This allows modifying URL prefixes to a custom
value via gitconfig.
git_diff_foreach, git_diff_blobs, git_diff_blob_to_buffer,
and git_diff_buffers now accept a new binary callback of type
git_diff_binary_cb that includes the binary diff information.
The race condition mitigations described in racy-git.txt have been
implemented.
If libcurl is installed, we will use it to connect to HTTP(S)
servers.