summaryrefslogtreecommitdiff
path: root/include/git2
Commit message (Collapse)AuthorAgeFilesLines
* libgit2 0.20.0 "anmeldung"v0.20.0Vicent Marti2013-11-201-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Apologies for the delay. This release is chunky, but you're probably used to chunky releases by now. Full changelog follows: Internal changes + Added support for decomposed Unicode paths in Mac OS X + Added support for junctions in win32 + Fixed issues with HTTP redirects in the network stack + Performance improvements (as always) git2/blame.h + added full support for blame operations git2/blob.h + added `git_blob_filtered_content` to load blobs in memory with their corresponding filters applied git2/branch.h + added branch iterators as an alternative to the callback-based API git2/buffer.h + exported the git_buf struct to allow binary buffers to be passed from/to the library. This simplifies several APIs git2/checkout.h + implemented additional checkout options ('skip unmerged', 'use ours' and 'use theirs') git2/clone.h + simplified the clone API + added new `git_clone_into` to clone into an existing (empty) repository git2/commit.h + added APIs to access the raw (uncleaned) text of a commit message git2/common.h + added global options to set the default paths to load templates from git2/config.h + added multivar iterators + added globbing iterator + added `git_config_foreach_match` to perform operations on every single var in a config file git2/diff.h + restructured and simplified the diff API git2/filter.h + added external APIs to configure and apply custom filters to checked out blobs git2/index.h + `git_index_read` can now force a reload of the index file even if it hasn't changed on-disk git2/indexer.h + improved the streaming indexer APIs git2/merge.h + added support for merge! git2/object.h + added helper API to lookup a generic object by path git2/pack.h + added progress callbacks to the packbuilder git2/patch.h + added support for patch generation as part of the Diff API revamp git2/pathspec.h + added helper APIs to work with pathspecs and match files in the workdir or diffs git2/push.h + added progress callbacks to push git2/reflog.h + changed reflog APIs to work on reference names instead of the references themselves, so they become less racy git2/remote.h + added support for setting refspecs on remotes, either at creation or on existing ones + simplified the remotes API git2/revwalk.h + add API to simplify parents during a walk git2/signature.h + add helper to create a signature with the default values for a repository (i.e. the set `user.name` and `user.email` values, and the current time) git2/submodules.h + improve the status detection for submodules git2/sys/ + exported many new internal APIs, such as pluggabe transport APIs -vmg, out
* Formatting fix for cred_acquire_cbCarlos Martín Nieto2013-11-201-6/+6
|
* Add content offset to git_diff_lineNick Hengeveld2013-11-181-0/+1
| | | | | | For additions and deletions, external consumers like subversion can make use of the content offset to generate diffs in their proprietary formats.
* Introduce git_cred_default for NTLM/SPNEGO authEdward Thomson2013-11-181-3/+17
|
* Update files that reference tests-clarBen Straub2013-11-141-1/+1
|
* Merge pull request #1951 from victorgp/create-remote-plus-fetchVicent Martí2013-11-141-0/+19
|\ | | | | Allowing create remotes with custom fetch spec
| * fixing typoVictor Garcia2013-11-081-1/+1
| |
| * splitting funcionality in two methods to avoid ambiguity with NULLVictor Garcia2013-11-081-1/+17
| |
| * adding doc for new param and test to check fetch spec is correctly addedVictor Garcia2013-11-071-1/+3
| |
| * allowing create remote with custom fetch specVictor Garcia2013-11-071-1/+2
| |
* | Merge pull request #1956 from libgit2/cmn/fetch-default-headVicent Martí2013-11-112-23/+41
|\ \ | | | | | | Remote revamp (director's cut)
| * | remote: make _ls return the list directlyCarlos Martín Nieto2013-11-112-12/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The callback-based method of listing remote references dates back to the beginning of the network code's lifetime, when we didn't know any better. We need to keep the list around for update_tips() after disconnect() so let's make use of this to simply give the user a pointer to the array so they can write straightforward code instead of having to go through a callback.
| * | remote: don't allow such direct access to the refspecsCarlos Martín Nieto2013-11-101-10/+27
| | | | | | | | | | | | | | | | | | Removing arbitrary refspecs makes things more complex to reason about. Instead, let the user set the fetch and push refspec list to whatever they want it to be.
| * | remote: download HEAD when no refspecs are givenCarlos Martín Nieto2013-11-011-1/+1
| | | | | | | | | | | | | | | | | | | | | The correct behaviour when a remote has no refspecs (e.g. a URL from the command-line) is to download the remote's HEAD. Let's do that. This fixes #1261.
* | | Allow callers to set mode on packfile creationEdward Thomson2013-11-072-0/+4
| | |
* | | Add git_packbuilder_hash to query pack filenameEdward Thomson2013-11-071-0/+10
| |/ |/|
* | Merge pull request #1946 from arthurschreiber/change-branch-iterator-definitionCarlos Martín Nieto2013-11-051-2/+2
|\ \ | | | | | | Change the git_branch_iterator_new definition to use git_branch_t
| * | Change the git_branch_iterator_new and git_branch_next definitions to use ↵Arthur Schreiber2013-11-051-2/+2
| | | | | | | | | | | | git_branch_t.
* | | Blame: change signature to be more binding-friendlyBen Straub2013-11-051-1/+1
|/ /
* | merge branch into current, updating workdirEdward Thomson2013-11-052-0/+63
| |
* | Merge pull request #1938 from libgit2/cmn/branch-iteratorVicent Martí2013-11-051-16/+24
|\ \ | | | | | | branch: move from foreach to an iterator
| * | branch: move from foreach to an iteratorCarlos Martín Nieto2013-11-051-16/+24
| | | | | | | | | | | | | | | | | | | | | | | | Create a git_branch_iterator type which is equivalent to the foreach but lets us write loops instead of callbacks. Since the introduction of git_reference_shorthand(), the added value of passing the name is reduced.
* | | Merge pull request #1941 from libgit2/rb/preserve-iterator-errorVicent Martí2013-11-051-0/+14
|\ \ \ | |/ / |/| | Preserve error messages during file system iterator cleanup
| * | error: Simplify giterr_detachVicent Marti2013-11-051-9/+6
| | |
| * | Add giterr_detach API to get and clear errorRussell Belfer2013-11-041-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | There are a number of cases where it is convenient to be able to fetch and "claim" the current error string, clearing the error. This is helpful when you need to call some code that may alter the error and you want to restore it later on and/or report it via some other mechanism.
* | | Take umask into account in filebuf_commitEdward Thomson2013-11-041-2/+2
|/ /
* | Merge pull request #1939 from ethomson/readwrite_odbVicent Martí2013-11-041-1/+9
|\ \ | | | | | | Allow backend consumers to specify file mode
| * | Allow backend consumers to specify file modeEdward Thomson2013-11-041-1/+9
| |/
* | Merge pull request #1317 from libgit2/blameRussell Belfer2013-11-042-0/+215
|\ \ | | | | | | Blame Canada
| * \ Merge remote-tracking branch 'libgit2/development' into blameBen Straub2013-10-2819-531/+739
| |\ \
| * | | Move flag dependencies into docs and code.Ben Straub2013-10-101-4/+4
| | | |
| * | | Include signatures in blame hunksBen Straub2013-10-101-0/+2
| | | |
| * | | Merge branch 'development' into blameBen Straub2013-10-037-48/+180
| |\ \ \ | | | | | | | | | | | | | | | | | | | | Conflicts: include/git2.h
| * \ \ \ Merge branch 'development' into blameBen Straub2013-09-2511-18/+612
| |\ \ \ \
| * | | | | Trim API, document which parts aren't doneBen Straub2013-09-251-6/+8
| | | | | |
| * | | | | Blame: minor cleanupBen Straub2013-09-251-1/+1
| | | | | |
| * | | | | Detect boundaries, support limiting commit rangeBen Straub2013-09-201-0/+4
| | | | | |
| * | | | | Port blame from git.gitBen Straub2013-09-162-30/+58
| | | | | |
| * | | | | Merge branch 'development' into blame_rebasedBen Straub2013-09-1638-298/+1140
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: include/git2.h
| * | | | | | Fix spelling, remove pesky constsBen Straub2013-06-131-3/+3
| | | | | | |
| * | | | | | Introduce git_blame_bufferBen Straub2013-06-131-0/+14
| | | | | | |
| * | | | | | Change API based on @arrbee's feedbackBen Straub2013-06-131-13/+33
| | | | | | |
| * | | | | | Initial blame APIBen Straub2013-06-131-0/+145
| | | | | | |
* | | | | | | Merge pull request #1937 from scunz/checkout_assertVicent Martí2013-11-041-3/+3
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Don't assert in git_checkout_tree
| * | | | | | | Checkout: Don't assert if treeish is NULLSascha Cunz2013-11-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In git_checkout_tree, the first check tests if either repo or treeish is NULL and says that eithor of them has to have a valid value. But there is no code to handle the treeish == NULL case. So, do something meaningful in that case: use HEAD instead.
| * | | | | | | Checkout: Unifiy const-ness of `opts` parameterSascha Cunz2013-11-021-2/+2
| | |_|_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | Since all 3 checkout APIs perform the same operation with the options, all of them should use the same const-ness.
* | | | | | | Add git_diff_options_init helperRussell Belfer2013-11-012-13/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes the static initializer for git_diff_options cannot be used and since setting them to all zeroes doesn't actually work quite right, this adds a new helper for that situation. This also adds an explicit new value to the submodule settings options to be used when those enums need static initialization.
* | | | | | | Convert git_index_read to have a "force" flagRussell Belfer2013-11-011-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a little more intuitive than the turned-around option that I originally wrote.
* | | | | | | Make diff and status perform soft index reloadRussell Belfer2013-11-013-5/+24
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This changes `git_index_read` to have two modes - a hard index reload that always resets the index to match the on-disk data (which was the old behavior) and a soft index reload that uses the timestamp / file size information and only replaces the index data if the file on disk has been modified. This then updates the git_status code to do a soft reload unless the new GIT_STATUS_OPT_NO_REFRESH flag is passed in. This also changes the behavior of the git_diff functions that use the index so that when an index is not explicitly passed in (i.e. when the functions call git_repository_index for you), they will also do a soft reload for you. This intentionally breaks the file signature of git_index_read because there has been some confusion about the behavior previously and it seems like all existing uses of the API should probably be examined to select the desired behavior.
* | | | | | Merge pull request #1918 from libgit2/cmn/indexer-namingVicent Martí2013-11-012-9/+9
|\ \ \ \ \ \ | | | | | | | | | | | | | | indexer: remove the stream infix