|
fa7281db
|
2015-04-16T18:26:47
|
|
Merge pull request #3039 from jeffhostetler/jeffhostetler/msvc_crtdbg
Add memory leak detection/reporting using MSVC CRTDBG facility.
|
|
d06c589f
|
2015-04-10T06:15:06
|
|
Add MSVC CRTDBG memory leak reporting.
|
|
623fbd93
|
2015-04-10T11:38:07
|
|
Merge pull request #2974 from libgit2/cmn/clone-everything
Make sure to pack referenced objects for non-branches
|
|
63af449e
|
2015-04-10T11:33:14
|
|
Merge pull request #3030 from linquize/symlink_supported
If work_dir is not specified, use repo_dir to test if symlink is supported
|
|
8932c32c
|
2015-04-10T10:50:01
|
|
Merge branch 'pr/3035'
|
|
129022ee
|
2015-04-10T09:36:38
|
|
Fix checking of return value for regcomp.
The regcomp function returns a non-zero value if compilation of
a regular expression fails. In most places we only check for
negative values, but positive values indicate an error, as well.
Fix this tree-wide, fixing a segmentation fault when calling
git_config_iterator_glob_new with an invalid regexp.
|
|
2a069761
|
2015-04-08T16:30:44
|
|
ISO C90 forbids mixed declarations and code
GIT_UNUSED() macro generates code therefore it should be used after
variable declarations.
|
|
08e1fd65
|
2015-04-07T14:44:08
|
|
describe: only abort without tags if fallback is not allowed.
When no reference names could be found we did error out when trying to describe
a commit. This is wrong, though, when the option to fall back to a commit's
object ID is set.
|
|
466d2e7a
|
2015-04-03T19:01:20
|
|
For bare repository, use repo_dir to test if symlinks are supported
|
|
807566d5
|
2015-04-03T18:59:11
|
|
Entry argument passed to git_index_add_frombuffer() should be const
|
|
de355f23
|
2015-03-25T13:14:28
|
|
Merge pull request #3011 from ethomson/filter_zero_tempbuf
Clear temporary buffer when filtering
|
|
669ae274
|
2015-03-23T13:12:55
|
|
filter: clear the temp_buf if we're using one
If we are using a temporary buffer for filtering, be sure to clear
it before using it, in case the file that we are filtering is empty.
|
|
78db0239
|
2015-03-24T20:58:00
|
|
squash some leaks
|
|
c5e07187
|
2015-03-24T14:03:51
|
|
Merge pull request #2990 from leoyanggit/custom_param
Add a custom param to git_smart_subtransport_definition
|
|
aa7a4a50
|
2015-03-24T09:06:20
|
|
Merge pull request #2986 from tkelman/mingw_winhttp
WinHTTP for MinGW
|
|
95d1624b
|
2015-03-24T08:34:12
|
|
Merge pull request #2947 from libgit2/cmn/notes-buf
note: use a git_buf to return the default namespace
|
|
7c3834d1
|
2015-03-24T10:18:44
|
|
Merge pull request #3010 from ethomson/checkout_invalid_path_err
checkout: report correct invalid path
|
|
3cda9cf2
|
2015-03-23T11:30:30
|
|
checkout: report correct invalid path
|
|
2a0f67f0
|
2015-03-21T21:48:03
|
|
git: make sure to close the network stream
In case of a bad url or other error during the connection setup, we
close the stream via free.
|
|
d88e6e9b
|
2015-03-19T18:38:13
|
|
mkdir-ext: Retry lstat on EEXIST race
|
|
b631e0d9
|
2015-03-19T07:25:25
|
|
Use swprintf_s everywhere except mingw.org
|
|
2c4e90f3
|
2015-03-19T01:03:41
|
|
Merge pull request #2996 from ethomson/dll_comments
win32 resource: allow custom comments field in DLL
|
|
523526e5
|
2015-03-18T18:25:14
|
|
win32 resource: allow custom comments field in DLL
|
|
89ba9f1a
|
2015-03-18T13:17:04
|
|
Merge pull request #2967 from jacquesg/merge-whitespace
Allow merges of files (and trees) with whitespace problems/fixes
|
|
142e5379
|
2015-03-17T12:49:33
|
|
Add a custom param to git_smart_subtransport_definition
The smart transport has already take the payload param. For the
sub transport a payload param is useful for the implementer.
|
|
03b51b5d
|
2015-03-18T05:04:12
|
|
Merge pull request #2955 from git-up/update_tips_fixes
Update tips fixes
|
|
83ad46f7
|
2015-03-18T04:59:16
|
|
Merge remote-tracking branch 'ethomson/submodule_8dot3'
|
|
fa8a38a4
|
2015-03-17T22:22:38
|
|
Merge pull request #2983 from jeffhostetler/jeffhostetler/perf_merge_lazy_binary_check
PERF: In MERGE, lazily compute is_binary
|
|
cdedef40
|
2015-03-17T21:38:58
|
|
Initialize refs vector in git_remote_update_tips().
Otherwise, bailing out early when ls_to_vector() fails accesses
uninitialized memory.
|
|
c84a9dd2
|
2015-03-12T01:52:15
|
|
local: recusrively insert non-branch objects into the packfile
When we insert e.g. a tag or tagged object into the packfile, we must
make sure to insert any referenced objects as well, or we will have
broken links.
Use the recursive version of packfile insertion to make sure we send
over not just the tagged object but also the objects it references.
|
|
84511143
|
2015-03-12T01:49:07
|
|
tree: add more correct error messages for not found
Don't use the full path, as that's not what we are asserting does not
exist, but just the subpath we were looking up.
|
|
a61fa4c0
|
2015-03-12T01:26:09
|
|
packbuilder: introduce git_packbuilder_insert_recur()
This function recursively inserts the given object and any referenced
ones. It can be thought of as a more general version of the functions to
insert a commit or tree.
|
|
385449b1
|
2015-03-04T01:23:20
|
|
note: use a git_buf to return the default namespace
The caller has otherwise no way to know how long the string will be
allocated or ability to free it.
This fixes #2944.
|
|
9bbc8f35
|
2015-03-17T10:21:28
|
|
Merge pull request #2962 from libgit2/cmn/reflog-annotated
Add annotated versions of ref-modying functions
|
|
7800048a
|
2015-03-17T10:06:50
|
|
Merge pull request #2972 from libgit2/cmn/pack-objects-walk
[WIP] Smarter pack-building
|
|
828e5959
|
2015-03-17T09:44:56
|
|
Merge pull request #2982 from libgit2/cmn/stream-check-ec
Don't ask for a stream's certificate unless it's encrypted
|
|
c07d0206
|
2015-03-17T09:44:25
|
|
Merge pull request #2977 from pks-t/submodule-sync-url-fix
Fix git_submodule_sync writing URL to wrong key.
|
|
3066026b
|
2014-08-26T11:18:33
|
|
Fix build on mingw-w64
|
|
8f426d7d
|
2014-06-09T11:43:25
|
|
Win32: Enable WinHTTP for MinGW
|
|
fea24c53
|
2015-03-16T15:54:53
|
|
PERF: In MERGE, lazily compute is_binary
|
|
84d83b8e
|
2015-03-16T19:41:50
|
|
http: do not try to use the cert callback on unencrypted streams
When the user has a certificate check callback set, we still have to
check whether the stream we're using is even capable of providing a
certificate.
In the case of an unencrypted certificate, do not ask for it from the
stream, and do not call the callback.
|
|
62dd4d71
|
2015-03-07T00:06:02
|
|
annotated_commit: provide a constructor from a revspec
This extra constructor will be useful for the annotated versions of
ref-modifying functions, as it allows us to create a commit with the
extended sha syntax which was used to retrieve it.
|
|
62d38a1d
|
2015-03-06T23:51:40
|
|
Add annotated commit versions of reflog-modifying functions
We do not always want to put the id directly into the reflog, but we
want to speicfy what a user typed. For this use-case we provide
annotated version of a few functions which let the caller specify what
user-friendly name was used when asking for the operation.
|
|
74c37c2a
|
2015-03-12T13:16:09
|
|
Added options to enable patience and minimal diff drivers
|
|
13de9363
|
2015-03-12T12:36:09
|
|
Collapse whitespace flags into git_merge_file_flags_t
|
|
f29dde68
|
2015-03-12T12:29:47
|
|
Renamed git_merge_options 'flags' to 'tree_flags'
|
|
45a86bbf
|
2015-03-09T17:02:52
|
|
Allow for merges with whitespace discrepancies
|
|
d675982a
|
2015-03-15T00:24:36
|
|
Merge pull request #2975 from git-up/diff_index_retain
Avoid retaining / releasing the index more than necessary when GIT_DIFF_...
|
|
7c63a33f
|
2015-03-13T19:41:40
|
|
indexer: bring back the error message on duplcate commits
It turns out that erroring out on duplicate commits is the right thing
to do, but git was not hitting the bug on the server-side.
Bring back a descriptive error message in case of duplicate entries and
error out.
|
|
dccf59ad
|
2015-03-13T18:28:07
|
|
indexer: don't worry about duplicate objects
If a packfile includes duplicate objects, we can choose to use the
secon copy instead of the first by using the same logic as if it were
the first.
Change the error condition from 0 to -1, which indicates a bad resize,
and set the OOM message in that case.
This does mean we will leak the first copy of the object. We can deal
with that later, but making fetches work is more important.
|
|
a34692c4
|
2015-03-13T18:00:15
|
|
indexer: set an error message on duplicate objects in pack
While this is not even close to a fix, we can at least set an error
message so we know which error we are facing. Up to know we just
returned an error without a message.
|
|
12e1fff7
|
2015-03-12T18:04:25
|
|
Merge pull request #2973 from libgit2/cmn/local-pack-threading
local: create pack with multiple threads
|
|
e6903ea2
|
2015-03-12T16:05:07
|
|
Fix git_submodule_sync writing URL to wrong key.
Currently git_submodule_sync writes the submodule's URL to the
key 'branch.<REMOTE_NAME>.remote' while the reference
implementation of `git submodule sync` writes to
'remote.<REMOTE_NAME>.url', which is the intended behavior
according to git-submodule(1).
|
|
8a3934e4
|
2015-03-11T19:29:36
|
|
Avoid retaining / releasing the index more than necessary when GIT_DIFF_UPDATE_INDEX is enabled
|
|
1034f1b5
|
2015-03-05T23:06:31
|
|
Fixed active refspecs not reset by git_remote_upload()
|
|
e22ffb42
|
2015-03-05T22:13:54
|
|
Fixed update_tips callback called for failed pushed references
The current implementation does not set 'fire_callback' back to 0 for failed updates so the callback still fires.
Instead of adding yet another condition check to set 'fire_callback' to 0 if needed, considering this function should be a no-op for failed updates anyway, the best fix is to simplify its logic to check upfront if the update is a failed one.
|
|
15f58174
|
2015-03-11T17:55:39
|
|
Merge commit 'refs/pull/2879/head' of ssh://github.com/libgit2/libgit2
|
|
0ef54a63
|
2015-03-11T17:16:39
|
|
local: create pack with multiple threads
The default behaviour for the packbuilder is to perform the work in a
single thread, which is fine for the public API, but we currently have
no way for a user to determine the number of threads to use when
creating the packfile, which makes our clone behaviour over the
filesystem quite a bit slower than what git offers.
This is a very particular scenario, in which we avoid spawning git by
being ourselves the server-side, so it's probably ok to auto-set the
threading, as the upload-pack process would do if we were talking to
git.
|
|
61ccba0d
|
2015-03-11T16:13:31
|
|
Merge pull request #2969 from adrienthebo/remote_add_invalid_refspec
refspec: report errors when parsing an invalid refspec
|
|
522df1cf
|
2015-03-11T03:03:54
|
|
Merge pull request #2970 from ethomson/inmemory_bare
"In-memory" repos are bare by default
|
|
e68b31a1
|
2015-03-04T20:57:52
|
|
local: let the packbuilder perform smarter object insertion
Currently we use the most naïve and inefficient method for figuring out
which objects to send to the remote whereby we end up trying to insert
subdirs which have not changed multiple times.
Instead, make use of the packbuilder's built-in more efficient method
which uses the walk to feed the object list and avoids inserting an
object and its descendants.
|
|
04a36fef
|
2014-10-11T15:48:29
|
|
pack-objects: fill a packbuilder from a walk
Most use-cases for the object packer communicate in terms of commits
which each side has. We already have an object to specify this
relationship between commits, namely git_revwalk.
By knowing which commits we want to pack and which the other side
already has, we can perform similar optimisations to git, by marking
each tree as interesting or uninteresting only once, and not sending
those trees which we know the other side has.
|
|
b63b76e0
|
2014-10-12T11:42:31
|
|
Reorder some khash declarations
Keep the definitions in the headers, while putting the declarations in
the C files. Putting the function definitions in headers causes
them to be duplicated if you include two headers with them.
|
|
b523194d
|
2015-03-04T13:29:13
|
|
refspec: set err message on invalid refspec
If a refspec could not be parsed, the git_refspec__parse function would
return an error value but would not provide additional error information
for the callers. This commit amends that function to set a more useful
error message.
|
|
770aca94
|
2015-03-10T15:02:02
|
|
repository: in-memory repos are bare by default
|
|
d7c81945
|
2015-03-09T10:18:39
|
|
Merge pull request #2964 from git-up/fixes
Fixes
|
|
959482e1
|
2015-03-09T09:18:37
|
|
Merge pull request #2946 from tkelman/appveyor-mingw
RFC: add mingw to appveyor matrix
|
|
2461e0d2
|
2015-03-08T14:10:02
|
|
Removed unnecessary GIT_CHECKOUT_SKIP_UNMERGED for GIT_RESET_HARD
|
|
d578b45f
|
2015-03-08T16:46:33
|
|
refdb: use the same id for old and new when renaming a reference
When we rename a reference, we want the old and new ids to be the same
one (as we did not change it). The normal code path looks up the old id
from the current value of the brtanch, but by the time we look it up, it
does not exist anymore and thus we write a zero id.
Pass the old id explicitly instead.
|
|
01c3b184
|
2015-03-06T16:52:07
|
|
Merge pull request #2961 from ethomson/filter_relative_paths
Filter relative paths
|
|
6a2edc5a
|
2015-03-06T15:16:40
|
|
filter: accept relative paths in apply_to_file
|
|
78c34af0
|
2015-03-06T12:23:14
|
|
Use secure API if available.
|
|
04c5a9c0
|
2015-03-05T19:42:54
|
|
Add some missing definitions for mingw.org
these shouldn't be necessary if _WIN32_WINNT >= _WIN32_WINNT_VISTA
|
|
1a7ea63d
|
2015-03-05T17:11:17
|
|
Move definitions of strcasecmp and strncasecmp to msvc-compat.h
should cut down on compiler warnings with mingw
|
|
9a823bad
|
2015-03-06T14:37:34
|
|
filter: drop old TODO
|
|
05e644dd
|
2015-03-04T22:01:39
|
|
Drop trailing whitespaces
|
|
7eb76734
|
2015-03-04T22:01:20
|
|
branch: fix generated reflog message upon renaming
|
|
015d4b7b
|
2015-03-04T21:48:54
|
|
branch: fix generated reflog message upon creation
|
|
bdf0e734
|
2015-03-04T14:55:56
|
|
Merge pull request #2932 from jeffhostetler/jeffhostetler/big_clone_crash
Fix crash in git_clone on extremely large repos
|
|
8e851c1e
|
2015-03-03T16:41:59
|
|
libgit2_shutdown: free TLS data (win32)
Free TLS data on thread exit (win32)
|
|
83fe60fa
|
2015-03-03T14:10:50
|
|
libgit2_shutdown: clear err message on shutdown
Clear the error message on git_libgit2_shutdown for all versions of
the library (no threads and Win32 threads). Drop the giterr_clear
in clar, as that shouldn't be necessary.
|
|
3a8b69d1
|
2015-02-26T11:47:07
|
|
Fix leak of TLS error message in shutdown (ptherad version)
|
|
c69c042e
|
2015-03-04T12:47:59
|
|
Merge pull request #2945 from ethomson/empty_hashsig_heap
diff_tform: don't compare empty hashsig_heaps
|
|
f78d9b6c
|
2015-03-03T23:56:54
|
|
diff_tform: account for whitespace options
When comparing seemingly blank files, take whitespace options into
account.
|
|
fe21d708
|
2015-03-04T00:29:37
|
|
Plug a few leaks
|
|
a212716f
|
2015-03-03T18:19:42
|
|
diff_tform: don't compare empty hashsig_heaps
Don't try to compare two empty hashsig_heaps.
|
|
9ce97782
|
2015-03-03T17:59:44
|
|
Merge pull request #2941 from libgit2/cmn/http-enforce-cred
http: enforce the credential types
|
|
d8be5087
|
2015-03-03T13:35:10
|
|
Change ifdef for MINGW32.
|
|
9a97f49e
|
2014-12-21T15:31:03
|
|
config: borrow refcounted references
This changes the get_entry() method to return a refcounted version of
the config entry, which you have to free when you're done.
This allows us to avoid freeing the memory in which the entry is stored
on a refresh, which may happen at any time for a live config.
For this reason, get_string() has been forbidden on live configs and a
new function get_string_buf() has been added, which stores the string in
a git_buf which the user then owns.
The functions which parse the string value takea advantage of the
borrowing to parse safely and then release the entry.
|
|
e892b6a9
|
2015-03-03T17:23:01
|
|
http: enforce the credential types
The user may decide to return any type of credential, including ones we
did not say we support. Add a check to make sure the user returned an
object of the right type and error out if not.
|
|
76f03418
|
2015-03-03T17:04:38
|
|
Remove swp files
|
|
20273e4d
|
2015-03-03T10:08:51
|
|
Merge pull request #2934 from akikoskinen/mingw_build_fix
Fix build on mingw (master branch)
|
|
018fdbb5
|
2015-03-03T10:08:28
|
|
Merge pull request #2913 from ethomson/stash_fixup
stash: correctly stash wd modified/index deleted
|
|
7e9b21aa
|
2015-02-27T08:54:48
|
|
Fix p_ftruncate to handle big files for git_clone
|
|
4e498646
|
2015-01-15T16:50:31
|
|
repository: remove log message override for switching the active branch
We want to use the "checkout: moving from ..." message in order to let
git know when a change of branch has happened. Make the convenience
functions for this goal write this message.
|
|
412a3808
|
2015-01-15T15:31:23
|
|
push: remove reflog message override
We always use "update by push".
|
|
6bfb990d
|
2015-01-07T14:47:02
|
|
branch: don't accept a reflog message override
This namespace is about behaving like git's branch command, so let's do
exactly that instead of taking a reflog message.
This override is still available via the reference namespace.
|
|
23a17803
|
2015-01-07T14:16:50
|
|
reset: remove reflog message override
This function is meant to simulate what git does in the reset command,
so we should include the reflog message in that.
|
|
659cf202
|
2015-01-07T12:23:05
|
|
Remove the signature from ref-modifying functions
The signature for the reflog is not something which changes
dynamically. Almost all uses will be NULL, since we want for the
repository's default identity to be used, making it noise.
In order to allow for changing the identity, we instead provide
git_repository_set_ident() and git_repository_ident() which allow a user
to override the choice of signature.
|
|
99b68a2a
|
2015-03-03T13:47:13
|
|
Merge pull request #2908 from ethomson/safe_create
Allow checkout to handle newly cloned repositories, remove `GIT_CHECKOUT_SAFE_CREATE`
|