|
351888cf
|
2013-06-13T15:37:06
|
|
Improve case handling in git_diff__paired_foreach
This commit reinstates some changes to git_diff__paired_foreach
that were discarded during the rebase (because the diff_output.c
file had gone away), and also adjusts the case insensitively
logic slightly to hopefully deal with either mismatched icase
diffs and other case insensitivity scenarios.
|
|
a3e8dbb4
|
2013-06-13T15:32:09
|
|
Be more careful about the path with diffs
This makes diff more careful about picking the canonical path
when generating a delta so that it won't accidentally pick up a
case-mismatched path on a case-insensitive file system. This
should make sure we use the "most accurate" case correct version
of the path (i.e. from the tree if possible, or the index if
need be).
|
|
3a68d7f0
|
2013-06-13T15:30:26
|
|
Fix broken status EXCLUDE_SUBMODULES logic
The exclude submodules flag was not doing the right thing, in
that a file with no diff between the head and the index and just
a delete in the workdir could be excluded if submodules were
excluded.
|
|
4e28e638
|
2013-06-13T15:27:30
|
|
Clarify some docs and minor reordering
This simplifies some documentation and hopefully makes a couple
of things easier to read. Also, this rearrages the order in this
branch so that the overall diff against the trunk will hopefully
be a bit cleaner.
|
|
c9b18018
|
2013-06-13T15:26:56
|
|
Fix some warnings
|
|
e3b4a47c
|
2013-05-31T16:30:09
|
|
git__strcasesort_cmp: strcasecmp sorting rules but requires strict equality
|
|
dfe8c8df
|
2013-05-22T23:19:40
|
|
handle renames in status computation
|
|
1ee2ef87
|
2013-05-21T11:05:21
|
|
status access by index, providing more details to callers
|
|
09c2f91c
|
2013-06-17T18:48:02
|
|
branch: More obvious semantics in `foreach`
|
|
bd2319c8
|
2013-06-17T09:38:04
|
|
Merge pull request #1655 from yorah/fix/ref-memleak
ref: free the last ref when cancelling git_branch_foreach()
|
|
2ad7a4dc
|
2013-06-17T18:25:30
|
|
ref: free the last ref when cancelling git_branch_foreach()
Also fixed an assert typo on nulltoken's HEAD
|
|
70587136
|
2013-06-17T08:53:22
|
|
Merge pull request #1654 from yorah/memzero
Memzero stuffs
|
|
0525fb7e
|
2013-06-17T14:31:14
|
|
cred: deploy git__memzero to clear memory holding a password
|
|
3425fee6
|
2013-06-17T14:27:34
|
|
util: git__memzero() tweaks
On Linux: fix a warning message related to the volatile qualifier (cast)
On Windows: use SecureZeroMemory()
On both, inline the call, so that no entry point can lead back to this "secure" memory zeroing.
|
|
824cf80f
|
2013-06-14T11:13:05
|
|
Merge pull request #1652 from yorah/fix/build-warnings
Fix/build warnings
|
|
519072c9
|
2013-06-14T14:02:00
|
|
diff: fix warning
|
|
2da72fb2
|
2013-06-14T12:10:13
|
|
fileops: fix invalid read
|
|
4878ea45
|
2013-06-13T02:47:45
|
|
Merge pull request #1650 from nulltoken/ntk/winrc-filename
cmake: Add option to specify the name of the binary
|
|
c1cf1af4
|
2013-06-12T21:15:58
|
|
cmake: Add option to specify the name of the binary
|
|
3b5001b4
|
2013-06-12T15:39:22
|
|
Merge pull request #1647 from arrbee/fix-win32-warnings-part-112
Fix Windows warnings and missing prototypes
|
|
37f66e82
|
2013-06-12T15:21:21
|
|
Fix Windows warnings
This fixes problems with missing function prototypes and 64-bit
data issues on Windows.
|
|
88c401be
|
2013-06-12T14:54:32
|
|
Merge pull request #1643 from ethomson/rename_source
Keep data about source of similarity
|
|
93da7af7
|
2013-06-12T14:52:47
|
|
Merge pull request #1642 from arrbee/diff-function-context
Diff code reorg plus function context in diff headers
|
|
360f42f4
|
2013-06-12T14:18:09
|
|
Fix diff header naming issues
This makes the git_diff_patch definition private to diff_patch.c
and fixes a number of other header file naming inconsistencies to
use `git_` prefixes on functions and structures that are shared
between files.
|
|
ef3374a8
|
2013-06-12T13:46:44
|
|
Improvements to git_array
This changes the size data to uint32_t, fixes the array growth
logic to use a simple 1.5x multiplier, and uses a generic inline
function for growing the array to make the git_array_alloc API
feel more natural (i.e. it returns a pointer to the new item).
|
|
5a6e45cc
|
2013-06-12T21:14:04
|
|
Revert "cmake: Update Windows resources to reflect the optional vendor string"
This reverts commit 095bfd748766966f5515bdfe64867d6a09287123.
|
|
6de9b2ee
|
2013-06-12T21:10:33
|
|
util: It's called `memzero`
|
|
eb58e2d0
|
2013-06-12T21:05:48
|
|
Merge remote-tracking branch 'arrbee/minor-paranoia' into development
|
|
f9c824c5
|
2013-06-12T11:55:27
|
|
Add patch from blobs API
This adds two new public APIs: git_diff_patch_from_blobs and
git_diff_patch_from_blob_and_buffer, plus it refactors the code
for git_diff_blobs and git_diff_blob_to_buffer so that they code
is almost entirely shared between these APIs, and adds tests for
the new APIs.
|
|
54faddd2
|
2013-06-12T11:54:11
|
|
Fix some diff driver memory leaks
|
|
42e6cf78
|
2013-06-11T17:45:14
|
|
Add diff drivers tests (and fix bugs)
This adds real tests for user-configured diff drivers and in the
process found a bunch of bugs.
|
|
5438e9c2
|
2013-06-11T15:34:53
|
|
Merge pull request #1645 from csware/config_level_app
Add high(est) config level for application specific config files
|
|
76b893b6
|
2013-06-11T21:33:18
|
|
Add high(est) config level for application specific config files
Some tools use an extra level to maintain an application specific config files on top of the normal ones. Revision 16adc9fade52b49e2bc13cb52407cc0025a93c8b broke this.
Signed-off-by: Sven Strickroth <email@cs-ware.de>
|
|
5dc98298
|
2013-06-11T11:22:22
|
|
Implement regex pattern diff driver
This implements the loading of regular expression pattern lists
for diff drivers that search for function context in that way.
This also changes the way that diff drivers update options and
interface with xdiff APIs to make them a little more flexible.
|
|
9d4db41a
|
2013-06-11T06:30:18
|
|
Merge pull request #1644 from carlosmn/sig-isspace
signature: extend trimming to more whitespace
|
|
24ec6999
|
2013-06-11T10:48:00
|
|
signature: extend trimming to more whitespace
There are all sorts of misconfiguration in the wild. We already rely
on the signature constructor to trim SP. Extend the logic to use
`isspace` to decide whether a character should be trimmed.
|
|
3eadfecd
|
2013-06-10T15:24:20
|
|
start implementing diff driver registry
|
|
2f77d8f1
|
2013-06-10T14:16:56
|
|
Fix some memory leaks
|
|
596b121a
|
2013-06-10T14:16:49
|
|
fix missing file and bad prototype
|
|
690bf41c
|
2013-06-10T15:16:44
|
|
keep source similarity in rename detection
|
|
bda3fbb1
|
2013-06-10T14:17:54
|
|
failing unit test for similar renames
|
|
114f5a6c
|
2013-06-10T10:10:39
|
|
Reorganize diff and add basic diff driver
This is a significant reorganization of the diff code to break it
into a set of more clearly distinct files and to document the new
organization. Hopefully this will make the diff code easier to
understand and to extend.
This adds a new `git_diff_driver` object that looks of diff driver
information from the attributes and the config so that things like
function content in diff headers can be provided. The full driver
spec is not implemented in the commit - this is focused on the
reorganization of the code and putting the driver hooks in place.
This also removes a few #includes from src/repository.h that were
overbroad, but as a result required extra #includes in a variety
of places since including src/repository.h no longer results in
pulling in the whole world.
|
|
3e9e6cda
|
2013-06-07T09:54:33
|
|
Add safe memset and use it
This adds a `git__memset` routine that will not be optimized away
and updates the places where I memset() right before a free() call
to use it.
|
|
3de768ca
|
2013-06-06T17:07:29
|
|
Merge pull request #1635 from arrbee/simplify-mkdir
Simplify git_futils_mkdir
|
|
f7e56150
|
2013-06-05T15:41:42
|
|
Make mkdir early exit cases clearer
There are two places where git_futils_mkdir should exit early or
at least do less. The first is when using GIT_MKDIR_SKIP_LAST
and having that flag leave no directory left to create; it was
being handled previously, but the behavior was subtle. Now I put
in a clear explicit check that exits early in that case.
The second is when there is no directory to create, but there is
a valid path that should be verified. I shifted the logic a bit
so we'll be better about not entering the loop than that happens.
|
|
7000f3fa
|
2013-06-04T10:32:59
|
|
Move some diff helpers into separate file
|
|
aad6967b
|
2013-05-29T21:52:21
|
|
Basic function context header
This implements a basic callback to extract function context for
a diff. It always uses the same search heuristic right now with
no regular expressions or language-specific variants. Those will
come next, I think.
|
|
999d4405
|
2013-06-05T12:02:28
|
|
Simplify git_futils_mkdir
This routine was (is) pretty complicated, but given the recent
changes, it seemed like it could be simplified a bit.
|
|
2e1fa15f
|
2013-06-05T19:00:16
|
|
I'm a dick
|
|
987ab765
|
2013-06-05T09:57:59
|
|
Merge pull request #1634 from arrbee/alternative-mkdir-fix
Ensure git_futils_mkdir won't mkdir root
|
|
b832ecf7
|
2013-06-05T09:46:51
|
|
Ensure git_futils_mkdir won't mkdir root
This makes sure that git_futils_mkdir always skips over the root
directory at a minimum, even on platforms where the root is not
simply '/'. Also, this removes the GIT_WIN32 ifdef in favor of
making EACCES as a potentially recoverable error on all platforms.
|
|
e236b37f
|
2013-06-05T09:16:19
|
|
Merge pull request #1633 from jamill/directory_create_fix
Allow creation of directories under the volume root in Win32
|
|
daf98cb2
|
2013-06-04T14:49:39
|
|
Allow creation of directories under the volume root in Win32
We ran into an issue where cloning a repository to a folder
directly underneath the root of a volume (e.g. 'd:\libgit2')
would fail with an access denied error. This was traced down
to a call to make a directory that is the root (e.g. 'd:') could
return an error indicated access denied instead of an error
indicating the path already exists. This change now handles
the access denied error on Win32 and checks for the existence
of the folder.
|
|
947fad4f
|
2013-06-03T09:28:58
|
|
Merge pull request #1624 from libgit2/vmg/full-ref-iterator
Breaking RefDB changes
|
|
9d9fff3c
|
2013-06-02T02:16:05
|
|
Merge pull request #1631 from scottjg/fix-timezone-parsing
Don't bail on parsing commits with an invalid timezone
|
|
dc33b3d7
|
2013-06-02T02:13:45
|
|
Don't bail on parsing commits with an invalid timezone
git doesn't do that, and it's not something that's usually
actionable to fix. if you have a git repository with one bad
timezone in the history, it's too late to change it most likely.
|
|
cfbd08a5
|
2013-06-01T04:28:24
|
|
Merge pull request #1630 from arrbee/index-read-tree-preserve-stat-cache
Make git_index_read_tree preserve stat cache where possible
|
|
03a89070
|
2013-05-31T21:49:40
|
|
Make git_index_read_tree preserve stat cache
Instead of just blowing away the stat cache data when loading a
new tree into the index, this checks if each loaded item has a
corresponding existing item with the same OID and if so, copies
the stat data from the old item to the new one so it will not be
blown away.
|
|
efd5a4e1
|
2013-05-31T14:36:08
|
|
Merge pull request #1627 from arrbee/iterator-api-improvements
Make iterators use GIT_ITEROVER & smart advance
|
|
1a42dd17
|
2013-05-31T14:13:11
|
|
Mutex init can fail
It is obviously quite a serious problem if this happens, but mutex
initialization can fail and we should detect it. It's a bit like
a memory allocation failure, in that you're probably pretty screwed
if this occurs, but at least we'll catch it.
|
|
f658dc43
|
2013-05-31T14:09:58
|
|
Zero memory for major objects before freeing
By zeroing out the memory when we free larger objects (i.e. those
that serve as collections of other data, such as repos, odb, refdb),
I'm hoping that it will be easier for libgit2 bindings to find
errors in their object management code.
|
|
cee695ae
|
2013-05-31T12:18:43
|
|
Make iterators use GIT_ITEROVER & smart advance
1. internal iterators now return GIT_ITEROVER when you go past the
last item in the iteration.
2. git_iterator_advance will "advance" to the first item in the
iteration if it is called immediately after creating the
iterator, which allows a simpler idiom for basic iteration.
3. if git_iterator_advance encounters an error reading data (e.g.
a missing tree or an unreadable file), it returns the error
but also attempts to advance past the invalid data to prevent
an infinite loop.
Updated all tests and internal usage of iterators to account for
these new behaviors.
|
|
17ef7dbc
|
2013-05-31T09:51:53
|
|
Merge pull request #1626 from ethomson/index_ext_truncation
improve test for index extension truncation
|
|
8c2458be
|
2013-05-31T11:41:33
|
|
improve test for index extension truncation
|
|
8d863aa2
|
2013-05-31T06:01:59
|
|
Merge pull request #1621 from NHDaly/clone_transport_flags
Added support for setting transport flags (No check SSL cert) to git_clo...
|
|
88392914
|
2013-05-30T01:12:27
|
|
Added support for setting transport flags (No check SSL cert) to git_clone call.
|
|
9afc5971
|
2013-05-31T03:09:38
|
|
Merge pull request #1559 from carlosmn/ref-shorthand
Introduce git_reference_shorthand
|
|
af2c72d2
|
2013-05-31T03:08:48
|
|
Merge pull request #1623 from yorah/fix/tag_auto
remote: make default tag retrieving behaviour consistent
|
|
9d6d809b
|
2013-05-31T03:06:07
|
|
Merge pull request #1530 from veeti/http-parser
Build with the system's http-parser installation if available
|
|
1ed356dc
|
2013-05-30T21:04:28
|
|
Frees
|
|
7a6e0281
|
2013-05-02T14:07:22
|
|
Build with the system's http-parser installation if available
|
|
df50512a
|
2013-05-30T18:06:54
|
|
Proposal to handle default value (auto = 0)
|
|
215af2cc
|
2013-05-30T17:40:56
|
|
remote: make default tag retrieving behaviour consistent
Default for newly created remotes will be auto.
Default when loading existing remotes with no tag retrieving behaviour set, was already auto.
|
|
b2984e8a
|
2013-05-30T08:43:14
|
|
Merge pull request #1622 from yorah/fix/thread-segfault
thread: fix segfault on Windows 64 bits
|
|
979f75d8
|
2013-05-30T17:19:43
|
|
Refcounting
|
|
d17db2fd
|
2013-05-30T11:30:34
|
|
thread: fix segfault on Windows 64 bits
`lpExitCode` is a pointer to a long. A long is 32 bits wide on Windows.
It means that on Windows 64bits, `GetExitCodeThread()` doesn't set/clear the high-order bytes of the 64 bits memory space pointed at by `value_ptr`.
|
|
4e6e2ff2
|
2013-05-30T03:47:10
|
|
...Aaaand this works
|
|
0c01f93e
|
2013-05-29T14:50:24
|
|
Merge pull request #1619 from ethomson/gitignore_slash
allow (ignore) bare slash in gitignore
|
|
2d160ef7
|
2013-05-29T16:03:30
|
|
allow (ignore) bare slash in gitignore
|
|
ec24e542
|
2013-05-29T22:47:37
|
|
What are the chances, really
|
|
17776314
|
2013-05-29T09:55:51
|
|
Merge pull request #1617 from arrbee/fix-oid-memory-leak
Fix memory leak in oid shortener tests
|
|
ca9b1702
|
2013-05-29T09:18:21
|
|
Fix memory leak in oid shortener tests
|
|
504a4fd1
|
2013-05-28T14:12:55
|
|
Merge pull request #1615 from arthurschreiber/patch-1
Fix two typos in the merge docs.
|
|
31a61181
|
2013-05-29T00:02:26
|
|
Fix two typos in the merge docs.
|
|
56960b83
|
2013-05-28T20:47:55
|
|
Liike this
|
|
2638a03a
|
2013-05-28T17:50:47
|
|
This refs iterator pleases the gods.
|
|
9007c53f
|
2013-05-27T16:45:22
|
|
Fixing unwrapped calloc
|
|
8baca134
|
2013-05-27T06:15:28
|
|
Merge pull request #1614 from schu/packbuilder-write
packbuilder: also write index in git_packbuilder_write
|
|
563c19a9
|
2013-05-11T11:36:29
|
|
packbuilder: also write index in git_packbuilder_write
git_packbuilder_write() used to write a packfile to the passed file
path. Instead, ask for a destination directory and create both the
packfile and an index, as most users probably do expect.
|
|
63908cee
|
2013-05-27T03:24:52
|
|
Merge pull request #1613 from schu/transport-ssh
tests: don't verify SSH unsupported with GIT_SSH
|
|
0582ae6f
|
2013-05-21T13:56:40
|
|
tests: don't verify SSH unsupported with GIT_SSH
|
|
5aee9632
|
2013-05-26T08:45:30
|
|
Merge pull request #1612 from drodriguez/fix-branch-delete-docs
Fix documentation of git_branch_delete.
|
|
f8bd730c
|
2013-05-26T17:29:00
|
|
Fix documentation of git_branch_delete.
The reference should be freed by the user, not the library.
|
|
0d77647a
|
2013-05-25T09:45:02
|
|
Merge pull request #1609 from ethomson/qsort_r_glibc
qsort_r appeared in glibc 2.8
|
|
c37fb41a
|
2013-05-25T12:35:55
|
|
qsort_r appeared in glibc 2.8
|
|
85281328
|
2013-05-24T11:39:56
|
|
Merge pull request #1608 from arrbee/various-cleanups-and-tweaks
Various cleanups and tweaks
|
|
7a5ee3dc
|
2013-05-24T11:09:04
|
|
Add ~ expansion to global attributes and excludes
This adds ~/ prefix expansion for the value of core.attributesfile
and core.excludesfile, plus it fixes the fact that the attributes
cache was holding on to the string data from the config for a long
time (instead of making its own strdup) which could have caused a
problem if the config was refreshed. Adds a test for the new
expansion capability.
|
|
d20b0449
|
2013-05-24T10:37:40
|
|
Clarify GIT_DIFF_INCLUDE_UNTRACKED_CONTENT option
This improves the docs for GIT_DIFF_INCLUDE_UNTRACKED_CONTENT as
well as the other flags related to UNTRACKED items in diff, plus
it makes that flag now automatically turn on
GIT_DIFF_INCLUDE_UNTRACKED which seems like a reasonable dwim type
of change.
|
|
16adc9fa
|
2013-05-24T10:35:58
|
|
Typedef git_config_level_t and use it everywhere
The GIT_CONFIG_LEVEL constants actually work well as an enum
because they are mutually exclusive, so this adds a typedef to
the enum and uses that everywhere that one of these constants are
expected, instead of the old code that typically used an unsigned
int.
|
|
2e62e7c2
|
2013-05-24T10:33:41
|
|
Docs for git_libgit2_opts and cache disable tweak
This adds docs for the cache control options to git_libgit2_opts
and also tweaks the cache code so that if the cache is disabled,
then the next time we attempt to insert something into the cache
in question, we will actually clear any old cached objects.
|