summaryrefslogtreecommitdiff
path: root/include/git2
Commit message (Collapse)AuthorAgeFilesLines
* repository: introduce a convenience config snapshot methodcmn/config-snapshotCarlos Martín Nieto2014-05-071-1/+13
| | | | | | Accessing the repository's config and immediately taking a snapshot of it is a common operation, so let's provide a convenience function for it.
* config: document the how long the pointers are valid forCarlos Martín Nieto2014-04-181-1/+14
|
* config: refresh before reading a valueCarlos Martín Nieto2014-04-181-1/+1
| | | | | | | | | | With the isolation of complex reads, we can now try to refresh the on-disk file before reading a value from it. This changes the semantics a bit, as before we could be sure that a string we got from the configuration was valid until we wrote or refreshed. This is no longer the case, as a read can also invalidate the pointer.
* config: implement config snapshottingCarlos Martín Nieto2014-04-182-0/+15
| | | | | | | | | | | In order to have consistent views of the config files for remotes, submodules et al. and a configuration that represents what is currently stored on-disk, we need a way to provide a view of the configuration that does not change. The goal here is to provide the snapshotting part by creating a read-only copy of the state of the configuration at a particular point in time, which does not change when a repository's main config changes.
* Fix leak in git_index_conflict_cleanupRussell Belfer2014-04-171-7/+12
| | | | | | | | | | | | | I introduced a leak into conflict cleanup by removing items from inside the git_vector_remove_matching call. This simplifies the code to just use one common way for the two conflict cleanup APIs. When an index has an active snapshot, removing an item can cause an error (inserting into the deferred deletion vector), so I made the git_index_conflict_cleanup API return an error code. I felt like this wasn't so bad since it is just like the other APIs. I fixed up a couple of comments while I was changing the header.
* Add public diff print helpersRussell Belfer2014-04-171-0/+63
| | | | | | | The usefulness of these helpers came up for me while debugging some of the iterator changes that I was making, so since they have also been requested (albeit indirectly) I thought I'd include them.
* Some index internals refactoringRussell Belfer2014-04-171-4/+11
| | | | | | | | Again, laying groundwork for some index iterator changes, this contains a bunch of code refactorings for index internals that should make it easier down the line to add locking around index modifications. Also this removes the redundant prefix_position function and fixes some potential memory leaks.
* Merge pull request #2261 from jacquesg/format-patchVicent Marti2014-04-162-3/+176
|\ | | | | Support for format-patch
| * Introduce git_diff_format_email and git_diff_commit_as_emailJacques Germishuys2014-04-151-0/+88
| |
| * Introduce git_diff_get_stats, git_diff_stats_files_changed, ↵Jacques Germishuys2014-04-151-0/+85
| | | | | | | | git_diff_stats_insertions, git_diff_stats_deletions and git_diff_stats_to_buf
| * Fix const-correctness of git_patch_get_delta, git_patch_num_hunks, ↵Jacques Germishuys2014-04-111-3/+3
| | | | | | | | git_patch_num_lines_in_hunk
* | Add GIT_BRANCH_ALL to git_branch_t enumSven Strickroth2014-04-162-1/+2
| | | | | | | | | | | | | | | | git_branch_t is an enum so requesting GIT_BRANCH_LOCAL | GIT_BRANCH_REMOTE is not possible as it is not a member of the enum (at least VS2013 C++ complains about it). This fixes a regression introduced in commit a667ca8298193b3103c1dbdcb1f6c527e6e99eb2 (PR #1946). Signed-off-by: Sven Strickroth <email@cs-ware.de>
* | Added cherry-pick supportJacques Germishuys2014-04-142-0/+89
|/
* Const correctness!Jacques Germishuys2014-04-036-12/+15
|
* Give the correct name for the function in the doc.fix-memory-index-doc-commentRob Rix2014-04-021-2/+2
| | | Per @carlosmn, git_index_add is now named git_index_add_bypath.
* Correct a stale reference to GIT_EBAREINDEXRob Rix2014-04-011-1/+1
|
* Merge pull request #2208 from libgit2/vmg/mempackRussell Belfer2014-04-012-0/+96
|\ | | | | In-memory packing backend
| * In-memory packing backendvmg/mempackVicent Marti2014-03-262-0/+96
| |
* | Merge pull request #2206 from libgit2/cmn/inmemory-swap-orderVicent Marti2014-04-011-7/+7
|\ \ | | | | | | Rename in-memory remote to anonymous and swap url and fetch order
| * | remote: rename inmemory to anonymous and swap url and fetch orderCarlos Martín Nieto2014-04-011-7/+7
| |/ | | | | | | | | | | | | | | | | | | The order in this function is the opposite to what create_with_fetchspec() has, so change this one, as url-then-refspec is what git does. As we need to break compilation and the swap doesn't do that, let's take this opportunity to rename in-memory remotes to anonymous as that's really what sets them apart.
* | Const up members of git_merge_file_resultEdward Thomson2014-03-311-2/+2
| |
* | Introduce git_merge_head_idEdward Thomson2014-03-311-0/+9
| |
* | Fix segfault if gitmodules is invalidRussell Belfer2014-03-261-3/+3
| | | | | | | | | | | | The reload_all call could end up dereferencing a NULL pointer if there was an error while attempting to load the submodules config data (i.e. invalid content in the gitmodules file). This fixes it.
* | Merge pull request #2204 from libgit2/rb/submodule-reference-countingVicent Marti2014-03-261-14/+30
|\ \ | |/ |/| Make submodules externally refcounted
| * Make submodules externally refcountedRussell Belfer2014-03-251-14/+30
| | | | | | | | | | | | | | | | `git_submodule` objects were already refcounted internally in case the submodule name was different from the path at which it was stored. This makes that refcounting externally used as well, so `git_submodule_lookup` and `git_submodule_add_setup` return an object that requires a `git_submodule_free` when done.
* | Merge pull request #2181 from anuraggup/hide_cbEdward Thomson2014-03-251-0/+24
|\ \ | |/ |/| Callback function to hide commit and its parents in revision walker
| * Correcting format of comments in header fileAnurag Gupta2014-03-241-13/+13
| |
| * Unit Tests for hide_cb in revwalkAnurag Gupta2014-03-241-2/+2
| |
| * Callback to hide commits in revision walker.Anurag Gupta2014-03-241-0/+24
| |
* | Merge pull request #2183 from ethomson/merge_refactorVicent Marti2014-03-242-111/+224
|\ \ | |/ |/| Refactor the `git_merge` API
| * UNBORN implies FAST_FORWARDEdward Thomson2014-03-201-2/+2
| |
| * Introduce GIT_MERGE_ANALYSIS_UNBORNEdward Thomson2014-03-201-0/+7
| |
| * git_merge_status -> git_merge_analysisEdward Thomson2014-03-201-10/+13
| |
| * Remove `git_merge_result` as it's now unnecessaryEdward Thomson2014-03-201-60/+4
| |
| * Update git_merge_tree_opts to git_merge_optionsEdward Thomson2014-03-202-16/+16
| |
| * Change signature of `git_merge` to take merge and checkout optsEdward Thomson2014-03-201-28/+4
| |
| * Remove fastforward / uptodate from `git_merge`Edward Thomson2014-03-201-27/+1
| |
| * Add `git_merge_status` to provide info about an upcoming mergeEdward Thomson2014-03-201-0/+40
| |
| * Introduce git_merge_file for consumersEdward Thomson2014-03-201-0/+169
| |
* | opts: bits are not bytesCarlos Martín Nieto2014-03-241-1/+1
| | | | | | | | | | The default cache size is 256 megabytes, not megabits as claimed in the docs.
* | settings: use git_buf for returning stringsCarlos Martín Nieto2014-03-241-5/+4
|/ | | | | This survived the last round of culling, as the signature is only in the comments.
* Merge pull request #2189 from Aimeast/octopusVicent Marti2014-03-181-1/+16
|\ | | | | Implement git_merge_base_octopus
| * Implement git_merge_base_octopusAimeast2014-03-181-1/+16
| |
* | Merge pull request #2192 from phkelley/developmentVicent Marti2014-03-181-1/+2
|\ \ | |/ |/| Seamless support for NTLM/Kerberos auth on Windows
| * Seamless support for NTLM/Kerberos auth on WindowsPhilip Kelley2014-03-181-1/+2
| |
* | branch: constness fixesCarlos Martín Nieto2014-03-172-2/+2
|/
* refs: fix copy-paste doc errorCarlos Martín Nieto2014-03-131-1/+1
|
* Add git_submodule_resolve_url()Jan Melcher2014-03-101-0/+10
|
* Merge pull request #2028 from libgit2/options-namesVicent Marti2014-03-074-29/+29
|\ | | | | Rename options structures
| * git_revert_opts -> git_revert_optionsoptions-namesBen Straub2014-03-061-9/+9
| |