|
7e3faf58
|
2017-10-29T15:05:28
|
|
diff: expose the "indent heuristic" in the diff options
We default to off, but we might want to consider changing `GIT_DIFF_NORMAL` to
include it.
|
|
6f1e4f4f
|
2017-11-04T18:31:22
|
|
CHANGELOG: add note about supporting conditional includes
|
|
ba1afdc3
|
2017-10-30T06:29:02
|
|
CHANGELOG: add note about config writing changes
|
|
fb585d01
|
2017-07-31T00:58:58
|
|
Merge branch '4233'
|
|
868ce84f
|
2017-07-31T00:58:35
|
|
changelog: update to reflect `detached` api name
|
|
192a87e1
|
2017-07-18T14:55:56
|
|
Updated changelog
|
|
15e11937
|
2017-06-14T13:31:20
|
|
CHANGELOG: document git_filter_init and GIT_FILTER_INIT
|
|
2a3cc403
|
2017-06-11T12:23:34
|
|
Update version number to v0.26
|
|
a1b4cafd
|
2017-06-11T12:21:23
|
|
changelog: add some final 0.26 changes
|
|
a1510880
|
2017-06-07T08:32:41
|
|
CHANGELOG: add various changes introduced since v0.25
|
|
4bc16c37
|
2016-07-08T01:37:22
|
|
remote: add function to create detached remotes
Right now it is only possible to create remotes from a repository. While
this is probably the most common use-case, there are commands which make
sense even without a repository, e.g. the equivalence of `git
ls-remote`. Add a new function `git_remote_create_detached`, which
simply accepts a URL.
|
|
d5e6ca1e
|
2017-01-14T18:39:32
|
|
Allow to configure default file share mode for opening files
This can prevent FILE_SHARED_VIOLATIONS when used in tools such as TortoiseGit TGitCache and FILE_SHARE_DELETE, because files can be opened w/o being locked any more.
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
|
3b4eb107
|
2017-01-21T22:40:37
|
|
CHANGELOG: move `git_submodule_update_option` changes
The changes to `git_submodule_update_option` are now landing in v.Next.
|
|
9e78b727
|
2017-01-21T22:39:59
|
|
Merge branch 'master' into pr/3938
|
|
2854e619
|
2017-01-14T17:12:23
|
|
Merge pull request #4061 from libgit2/ethomson/merge_opts
merge: set default rename threshold
|
|
07bb8078
|
2017-01-14T16:01:53
|
|
CHANGELOG: update `GIT_MERGE_OPTIONS_INIT` changes
|
|
d8f984bc
|
2017-01-03T10:54:24
|
|
move git_merge_options changes to correct location
|
|
31c78299
|
2017-01-03T10:11:52
|
|
mention field addition in breaking API changes
|
|
5569778a
|
2016-11-15T11:15:40
|
|
Bump version number to v0.25
|
|
06de4e75
|
2016-11-14T14:12:13
|
|
CHANGELOG: fill in some updates we missed
|
|
dc976e72
|
2016-09-28T14:44:28
|
|
Reword CHANGELOG entry as per code review
|
|
567fd782
|
2016-09-26T19:32:15
|
|
Remove `clone_checkout_strategy` in submodule update opts
Remove `clone_checkout_strategy` in `git_submodule_update_options` as
per issue #3784.
|
|
4aed1b9a
|
2016-09-29T15:05:38
|
|
Add revwalk note to CHANGELOG
|
|
5625d86b
|
2016-05-17T15:40:32
|
|
index: support index v4
Support reading and writing index v4. Index v4 uses a very simple
compression scheme for pathnames, but is otherwise similar to index v3.
Signed-off-by: David Turner <dturner@twitter.com>
|
|
e2e7f31a
|
2016-08-05T20:00:22
|
|
diff: document `git_diff_from_buffer`
|
|
8f09a98e
|
2016-07-14T16:23:24
|
|
odb: freshen existing objects when writing
When writing an object, we calculate its OID and see if it exists in the
object database. If it does, we need to freshen the file that contains
it.
|
|
002c8e29
|
2016-08-03T17:09:41
|
|
git_diff_file: move `id_abbrev`
Move `id_abbrev` to a more reasonable place where it packs more nicely
(before anybody starts using it).
|
|
152efee2
|
2016-08-02T18:43:12
|
|
Merge pull request #3865 from libgit2/ethomson/leaks
Fix leaks, some warnings and an error
|
|
60e15ecd
|
2016-07-15T17:18:39
|
|
packbuilder: `size_t` all the things
After 1cd65991, we were passing a pointer to an `unsigned long` to
a function that now expected a pointer to a `size_t`. These types
differ on 64-bit Windows, which means that we trash the stack.
Use `size_t`s in the packbuilder to avoid this.
|
|
d81cb2e4
|
2016-07-15T13:32:23
|
|
remote: Handle missing config values when deleting a remote
Somehow I ended up with the following in my ~/.gitconfig:
[branch "master"]
remote = origin
merge = master
rebase = true
I assume something went crazy while I was running the git.git tests
some time ago, and that I never noticed until now.
This is not a good configuration, but it shouldn't cause problems. But
it does. Specifically, if you have this in your config, and you
perform the following set of actions:
create a remote
fetch from that remote
create a branch off of the remote master branch called "master"
delete the branch
delete the remote
The remote delete fails with the message "Could not find key
'branch.master.rebase' to delete". This is because it's iterating over
the config entries (including the ones in the global config) and
believes that there is a master branch which must therefore have these
config keys.
https://github.com/libgit2/libgit2/issues/3856
|
|
f1dba144
|
2016-07-05T09:41:51
|
|
Add get user agent functionality.
|
|
2b80260e
|
2016-06-30T08:08:36
|
|
CHANGELOG.md: Document new flags for git_repository_open_ext
Document GIT_REPOSITORY_OPEN_NO_DOTGIT and GIT_REPOSITORY_OPEN_FROM_ENV.
|
|
04d6ab6c
|
2016-06-30T08:08:06
|
|
CHANGELOG.md: Document behavior change in repository discovery
|
|
6669e3e8
|
2015-11-08T04:28:08
|
|
blob: remove _fromchunks()
The callback mechanism makes it awkward to write data from an IO
source; move to `_fromstream()` which lets the caller remain in control,
in the same vein as we prefer iterators over foreach callbacks.
|
|
e2bb9ed3
|
2015-11-04T10:39:55
|
|
CHANGELOG: add a note about _fromstream() and _fromstream_commit()
|
|
cec320fe
|
2016-03-22T00:44:05
|
|
Merge pull request #3701 from jfultz/fix-0.24.0-changelog
Fix some errors I found in the changelog for 0.24.0
|
|
0b24855e
|
2016-03-18T15:03:08
|
|
Fix some errors I found in the changelog for 0.24.0
|
|
30a94ab7
|
2015-12-24T22:52:23
|
|
merge driver: allow custom default driver
Allow merge users to configure a custom default merge driver via
`git_merge_options`. Similarly, honor the `merge.default` configuration
option.
|
|
47cb42da
|
2016-03-03T22:56:02
|
|
commit: split creating the commit and writing it out
Sometimes you want to create a commit but not write it out to the
objectdb immediately. For these cases, provide a new function to
retrieve the buffer instead of having to go through the db.
|
|
c21c8f67
|
2016-03-03T20:18:55
|
|
CHANGELOG: prepre tamplate for release
|
|
a7ef27af
|
2016-03-03T20:17:13
|
|
CHANGELOG: add note about WinHTTP cred handling
|
|
f2dddf52
|
2016-02-28T15:51:38
|
|
turn on strict object validation by default
|
|
88ab3be6
|
2016-02-22T15:41:01
|
|
Fix a few checkout -> rebase typos
|
|
f596946f
|
2016-02-19T13:52:04
|
|
CHANGELOG: add a few missing changes
|
|
82885255
|
2015-12-09T13:57:15
|
|
CHANGELOG: add some things we missed
|
|
fc436469
|
2015-12-06T22:51:00
|
|
tree: mark a tree as already sorted
The trees are sorted on-disk, so we don't have to go over them
again. This cuts almost a fifth of time spent parsing trees.
|
|
fa78782f
|
2015-10-22T17:00:09
|
|
merge: rename `git_merge_tree_flags_t` -> `git_merge_flags_t`
|
|
ecdc0428
|
2015-11-12T19:20:36
|
|
Merge pull request #3448 from libgit2/cmn/custom-agent
Support setting custom user-agent
|
|
027bbaa7
|
2015-11-12T17:20:30
|
|
CHANGELOG: add note about custom user-agent
|
|
ad8509ef
|
2015-11-12T11:54:06
|
|
index: overwrite the path when inserting conflicts
When we insert a conflict in a case-insensitive index, accept the
new entry's path as the correct case instead of leaving the path we
already had.
This puts `git_index_conflict_add()` on the same level as
`git_index_add()` in this respect.
|
|
7fafde63
|
2015-10-13T11:25:41
|
|
stream: allow registering a user-provided TLS constructor
This allows the application to use their own TLS stream, regardless of
the capabilities of libgit2 itself.
|
|
3138ad93
|
2015-07-16T10:17:16
|
|
Add diff progress callback.
|
|
a32bc85e
|
2015-08-07T12:43:49
|
|
git_index_add: allow case changing renames
On case insensitive platforms, allow `git_index_add` to provide a new
path for an existing index entry. Previously, we would maintain the
case in an index entry without the ability to change it (except by
removing an entry and re-adding it.)
Higher-level functions (like `git_index_add_bypath` and
`git_index_add_frombuffers`) continue to keep the old path for easier
usage.
|
|
d83b2e9f
|
2015-09-05T03:54:06
|
|
filebuf: follow symlinks when creating a lock file
We create a lockfile to update files under GIT_DIR. Sometimes these
files are actually located elsewhere and a symlink takes their place. In
that case we should lock and update the file at its final location
rather than overwrite the symlink.
|
|
fec4a68c
|
2015-08-26T23:08:03
|
|
Fix a typo [ci skip]
|
|
5340d63d
|
2015-07-12T12:50:23
|
|
config: perform unlocking via git_transaction
This makes the API for commiting or discarding changes the same as for
references.
|
|
36f784b5
|
2015-06-01T20:02:23
|
|
config: expose locking via the main API
This lock/unlock pair allows for the cller to lock a configuration file
to avoid concurrent operations.
It also allows for a transactional approach to updating a configuration
file. If multiple updates must be made atomically, they can be done
while the config is locked.
|
|
01d0c02d
|
2015-07-12T19:08:06
|
|
refdb: delete a ref's reflog upon deletion
Removing a reflog upon ref deletion is something which only some
backends might wish to do. Backends which are database-backed may wish
to archive a reflog, log-based ones may not need to do anything.
|
|
1cd96016
|
2015-07-10T19:32:04
|
|
Merge pull request #3301 from ethomson/warnings
Clean up some warnings
|
|
9a99ca7b
|
2015-07-10T09:25:45
|
|
wildcard filters: move CHANGELOG message to 0.23+1
|
|
79698030
|
2015-06-29T22:51:18
|
|
git_cert: child types use proper base type
|
|
9847d80d
|
2015-07-09T18:21:31
|
|
Merge pull request #3281 from ethomson/wildcard_filters
filters: custom filters with wildcard attributes
|
|
159061a8
|
2015-07-06T16:23:44
|
|
Update CHANGELOG with the release number
|
|
34065968
|
2015-07-01T17:49:07
|
|
submodule: completely remove reload_all
The function was removed, but its declaration and changelog entry about
its removal were forgotten.
The comment in the test doesn't make any sense as the function doesn't
exist anymore, so get rid of it as well.
|
|
63924435
|
2015-07-01T09:40:11
|
|
filters: custom filters with wildcard attributes
Allow custom filters with wildcard attributes, so that clients
can support some random `filter=foo` in a .gitattributes and look
up the corresponding smudge/clean commands in the configuration file.
|
|
ca2466ff
|
2015-06-29T15:02:19
|
|
CHANGELOG: add submodule changes
|
|
c0280bdd
|
2015-06-25T18:55:48
|
|
Merge pull request #3255 from libgit2/cmn/rename-unspecified
Rename FALLBACK to UNSPECIFIED
|
|
87987fd1
|
2015-06-25T15:26:43
|
|
Merge pull request #3246 from libgit2/cmn/dont-grow-borrowed
Don't allow growing borrowed buffers
|
|
c2418f46
|
2015-06-25T12:48:44
|
|
Rename FALLBACK to UNSPECIFIED
Fallback describes the mechanism, while unspecified explains what the
user is thinking.
|
|
3cf91d98
|
2015-06-24T20:21:54
|
|
Add CHANGELOG entries
|
|
ede517bc
|
2015-06-06T09:40:50
|
|
curl: add CHANGELOG and THREADING entries
|
|
bd670abd
|
2015-06-23T23:30:58
|
|
Merge pull request #3226 from libgit2/cmn/racy-diff-again
racy-git, the missing link
|
|
bb4896f2
|
2015-06-22T14:20:13
|
|
Add a note about racy-git in CHANGELOG
|
|
a3f42fe8
|
2015-06-22T15:32:29
|
|
commit: allow retrieving an arbitrary header field
This allows the user to look up fields which we don't parse in libgit2,
and allows them to access gpgsig or mergetag fields if they wish to
check the signature.
|
|
0e522f6e
|
2015-06-12T09:28:19
|
|
binary diff: document changes in CHANGELOG
|
|
2eecc288
|
2015-06-10T14:43:49
|
|
Introduce `git_filter_list_contains`
`git_filter_list_contains` can be used to query a filter list to
determine if a given filter will be run.
|
|
771069e1
|
2015-05-21T12:46:04
|
|
Add CHANGELOG entry for url.*.insteadOf feature.
|
|
a5670d4f
|
2015-05-29T20:09:46
|
|
CHANGELOG: fill in a few missing entries
|
|
885b94aa
|
2015-05-28T15:26:13
|
|
Rename GIT_EMERGECONFLICT to GIT_ECONFLICT
We do not error on "merge conflicts"; on the contrary, merge conflicts
are a normal part of merging. We only error on "checkout conflicts",
where a change exists in the index or the working directory that would
otherwise be overwritten by performing the checkout.
This *may* happen during merge (after the production of the new index
that we're going to checkout) but it could happen during any checkout.
|
|
ff8d635a
|
2015-05-28T18:45:57
|
|
Merge pull request #3139 from ethomson/diff_conflicts
Include conflicts when diffing
|
|
2b922832
|
2015-05-28T16:09:17
|
|
Merge pull request #3127 from libgit2/cmn/remote-fixups
Tackle remote API issues from bindings
|
|
10549a2d
|
2015-05-19T18:26:04
|
|
Introduce `GIT_DIFF_FLAG_EXISTS`
Mark the `old_file` and `new_file` sides of a delta with a new bit,
`GIT_DIFF_FLAG_EXISTS`, that introduces that a particular side of
the delta exists in the diff.
This is useful for indicating whether a working directory item exists
or not, in the presence of a conflict. Diff users may have previously
used DELETED to determine this information.
|
|
9f545b9d
|
2015-05-19T11:23:59
|
|
introduce `git_index_entry_is_conflict`
It's not always obvious the mapping between stage level and
conflict-ness. More importantly, this can lead otherwise sane
people to write constructs like `if (!git_index_entry_stage(entry))`,
which (while technically correct) is unreadable.
Provide a nice method to help avoid such messy thinking.
|
|
7c948014
|
2015-05-14T14:00:29
|
|
diff/status: introduce conflicts
When diffing against an index, return a new `GIT_DELTA_CONFLICTED`
delta type for items that are conflicted. For a single file path,
only one delta will be produced (despite the fact that there are
multiple entries in the index).
Index iterators now have the (optional) ability to return conflicts
in the index. Prior to this change, they would be omitted, and callers
(like diff) would omit conflicted index entries entirely.
|
|
ecd60a56
|
2015-05-14T11:52:48
|
|
conflicts: when adding conflicts, remove staged
When adding a conflict for some path, remove the staged entry.
Otherwise, an illegal index (with both stage 0 and high-stage
entries) would result.
|
|
ae5b9362
|
2015-05-17T15:11:45
|
|
remote: remove fetch parameter from create_anonymous
An anonymous remote is not configured and cannot therefore have
configured refspecs. Remove the parameter which adds this from the
constructor.
|
|
1396c381
|
2015-05-18T16:04:55
|
|
errors: add GIT_EEOF to indicate early EOF
This can be used by tools to show mesages about failing to communicate
with the server. The error message in this case will often contain the
server's error message, as far as it managed to send anything.
|
|
e3435673
|
2015-05-18T15:51:55
|
|
ssh: read from stderr if stdout is empty
When we fail to read from stdout, it's typically because the URL was
wrong and the server process has sent some output over its stderr
output.
Read that output and set the error message to whatever we read from it.
|
|
70f7484d
|
2015-05-14T09:35:08
|
|
remote: get rid of the run-time refspec setters
These were left over from the culling as it's not clear which use-cases
might benefit from this. It is not clear that we want to support any
use-case which depends on changing the remote's idea of the base
refspecs rather than passing in different per-operation refspec list, so
remove these functions.
|
|
9663d1bd
|
2015-05-14T08:29:50
|
|
Fix typos in the CHANGELOG
|
|
874cc35a
|
2015-05-14T15:24:15
|
|
index: add a CHANGELOG entry for the diff usage
|
|
98270f56
|
2015-05-14T08:26:02
|
|
Add CHANGELOG entry for index entry changes
|
|
b1ae3e53
|
2015-04-26T02:20:22
|
|
Update CHANGELOG with the changes to the remotes
|
|
1f1f5c63
|
2015-05-11T14:10:24
|
|
checkout: better document the `baseline_index` opt
|
|
15fdf054
|
2015-05-11T14:06:47
|
|
stash application: document new API in CHANGELOG
|
|
bf2ba529
|
2015-04-30T10:57:13
|
|
Update documentation for API changes
|
|
85247df0
|
2015-03-19T14:26:07
|
|
Update THREADING and CHANGELOG with SecureTransport details
|
|
aa9bb425
|
2015-04-20T17:22:39
|
|
rebase: correct documentation, CHANGELOG
|
|
f3a199dd
|
2015-03-17T15:53:04
|
|
rebase: init and open take a rebase_options
`git_rebase_init` and `git_rebase_open` should take a
`git_rebase_options` and use it for future rebase operations on
that `rebase` object.
|
|
eaf0d688
|
2015-03-17T17:53:07
|
|
rebase: block rebase_commit with unstaged changes
|