|
8646b0a0
|
2014-01-30T15:10:39
|
|
Merge pull request #2085 from libgit2/rb/index-tree-blob-collision
Index tree-bob collision
|
|
25babd02
|
2014-01-30T11:38:59
|
|
Fix checkout NONE to not remove file
If you are checking out NONE, then don't remove.
|
|
b794cbcd
|
2014-01-30T11:38:25
|
|
Rename conflict to collision to prevent confusion
|
|
71ae7601
|
2014-01-30T11:30:16
|
|
Force explicit remove of files instead of defer
The checkout code used to defer removal of "blocking" files in
checkouts until the blocked item was actually being written (since
we have already checked that the removing the block is acceptable
according to the update rules). Unfortunately, this resulted in
an intermediate index state where both the blocking and new items
were in the index which is no longer allowed. Now we just remove
the blocking item in the first pass so it never needs to coexist.
In cases where there are typechanges, this could result in a bit
more churn of removing and recreating intermediate directories,
but I'm going to assume that is an unusual case and the churn will
not be too costly.
|
|
32d7abfc
|
2014-01-30T10:34:36
|
|
Merge pull request #2091 from libgit2/rb/cleanups-123
Fix errors with zstream (and a variety of other cleanups)
|
|
19459b1e
|
2014-01-30T10:23:35
|
|
Defer zstream NUL termination to end
And don't terminate if there isn't space for it (since it's binary
data, it's not worth a reallocation).
|
|
8606f33b
|
2014-01-30T09:59:15
|
|
Expand zstream tests and fix off-by-one error
|
|
d9b04d78
|
2014-01-29T15:02:35
|
|
Reorganize zstream API and fix wrap problems
There were some confusing issues mixing up the number of bytes
written to the zstream output buffer with the number of bytes
consumed from the zstream input. This reorganizes the zstream
API and makes it easier to deflate an arbitrarily large input
while still using a fixed size output.
|
|
e9d5e5f3
|
2014-01-28T16:25:42
|
|
Some fixes for Windows x64 warnings
|
|
3cf11eef
|
2014-01-28T11:47:33
|
|
Misc cleanups
|
|
c0644c3f
|
2014-01-28T11:45:06
|
|
Make submodule fetchRecurse match other options
This removes the fetchRecurse compiler warnings and makes the
behavior match the other submodule options (i.e. the in-memory
setting can be reset to the on-disk value).
|
|
5572d2b8
|
2014-01-28T11:44:17
|
|
Some missing oid to id renames
|
|
0316d80a
|
2014-01-29T19:10:00
|
|
Merge pull request #2089 from scunz/cmake_path
We never search for libiconv via pkg-config
|
|
4bc94eb5
|
2014-01-30T03:01:46
|
|
We never search for libiconv via pkg-config
So we actually also never know that we can set a dependency on it in
pkg-config. Instead always give it the -L and -l options.
|
|
2d3cc3ed
|
2014-01-29T18:49:56
|
|
Merge pull request #2088 from scunz/cmake_path
Fixing #2017 and #2087
|
|
6e0ff093
|
2014-01-30T02:30:55
|
|
Find and use a MacPorts version of libiconv. Fixes #2017.
- Add correct -I, -L and -l flags
- Search for libiconv in /opt/local/[include|lib] before in the
system path. See #2017 for details.
- Give splitted -L and -l arguments to pkg-config
|
|
39949f06
|
2014-01-30T02:28:53
|
|
Cleanup FindIconv.cmake
Doesn't change anything. Just removes stuff that was probably missed
to remove when this was imported.
|
|
60306450
|
2014-01-29T23:47:20
|
|
Use relative path to set cmake module path
This has actually no effect on a "normal" build, but allows to use
libgit2 as a part of a larger project via CMake's ADD_SUBDIRECTORY()
Closes #2087
|
|
0972c592
|
2014-01-29T13:14:00
|
|
Two-phase index merging
When three-way merging indexes, we previously changed each path
as we read them, which would lead to us adding an index entry for
'foo', then removing an index entry for 'foo/file'. With the new
index requirements, this is not allowed. Removing entries in the
merged index, then adding them, resolves this. In the previous
example, we now remove 'foo/file' before adding 'foo'.
|
|
b747eb14
|
2014-01-29T12:55:33
|
|
Give index_isrch the same semantics as index_srch
In case insensitive index mode, we would stop at a prefixed entry,
treating the provided search key length as a substring, not the
length of the string to match.
|
|
bae8bea0
|
2014-01-29T12:53:01
|
|
More index collision tests
|
|
1eefd356
|
2014-01-29T18:44:29
|
|
index: Implement folder-file checks
|
|
53bec813
|
2014-01-29T18:17:08
|
|
index: Compare with given len
|
|
95fbedcd
|
2014-01-28T16:22:37
|
|
Add test for blob/tree name collisions in index
|
|
66af8449
|
2014-01-29T12:57:42
|
|
Merge pull request #2086 from ethomson/fixup
Don't strcmp a git_buf, strcmp its char *
|
|
96f12e70
|
2014-01-29T12:50:42
|
|
Don't strcmp a git_buf, strcmp its char *
|
|
cd4aa602
|
2014-01-28T10:50:04
|
|
Merge pull request #2083 from arthurschreiber/arthur/add-git_commit_descendant_of
Add `git_commit_descendant_of`.
|
|
e7c16943
|
2014-01-28T19:39:14
|
|
Add `git_graph_descendant_of`.
|
|
a1a9d0bd
|
2014-01-27T15:35:39
|
|
Merge pull request #2066 from libgit2/rb/builtin-diff-drivers
Add built in diff drivers
|
|
daebb598
|
2014-01-27T14:57:03
|
|
Add PHP tests and fix bug in PHP builtin driver
|
|
082e82db
|
2014-01-27T11:45:06
|
|
Update Javascript userdiff driver and tests
Writing a sample Javascript driver pointed out some extra
whitespace handling that needed to be done in the diff driver.
This adds some tests with some sample javascript code that I
pulled off of GitHub just to see what would happen. Also, to
clean up the userdiff test data, I did a "git gc" and packed
up the test objects.
|
|
41159877
|
2014-01-27T10:23:55
|
|
Got permission from Gustaf for userdiff patterns
|
|
93954245
|
2014-01-27T09:39:36
|
|
Merge pull request #2075 from libgit2/cmn/leftover-oid
Leftover OID -> ID changes
|
|
46e7fc18
|
2014-01-27T09:36:24
|
|
Merge pull request #2077 from libgit2/cmn/buf-out
Buff up returning strings
|
|
c90ea3de
|
2014-01-27T09:34:52
|
|
Merge pull request #2078 from linquize/msvc
MSVC doesn't like modern code neither
|
|
9ff34a53
|
2014-01-27T09:34:32
|
|
Merge pull request #2079 from linquize/msvc-blame-example
Make blame example compile on MSVC
|
|
1664aaaa
|
2013-11-05T23:39:05
|
|
Make blame example compile on MSVC
|
|
fbc5661e
|
2014-01-27T20:51:46
|
|
MSVC doesn't like modern code neither
|
|
66d585c6
|
2014-01-27T04:58:23
|
|
MSVC doesn't like modern code
|
|
bf522e08
|
2014-01-26T16:59:36
|
|
refspec: move to git_buf for outputting strings
|
|
e1d7f003
|
2014-01-26T16:32:49
|
|
messsage: use git_buf in prettify()
A lot of the tests were checking for overflow, which we don't have
anymore, so we can remove them.
|
|
ee550477
|
2014-01-26T16:11:18
|
|
config: use git_buf for returning paths
Again, we already did this internally, so simply remove the conversions.
|
|
b25d87c9
|
2014-01-26T16:03:37
|
|
branch: move to git_buf when outputting newly-allocated strings
Internally we already did everything with git_bufs, so this is just
exposing those functions with public names.
|
|
7a3bd1e7
|
2014-01-26T15:35:17
|
|
repository: move to use a git_buf for outputting strings
Since we now export that type, we can avoid making the user guess a
size.
|
|
1087d4fd
|
2014-01-26T11:27:44
|
|
Merge pull request #2052 from arthurschreiber/arthur/add-git_remote_dup
Fix git_remote_dup & add missing const
|
|
991b2840
|
2014-01-26T19:35:02
|
|
Make sure git_remote_dup copies a remote's refspecs correctly.
|
|
11f6ad5f
|
2014-01-15T21:15:34
|
|
Add some missing const declarations.
|
|
93b96ea7
|
2014-01-26T06:38:02
|
|
Merge pull request #2076 from xtao/fix-zstream
Fix write_object.
|
|
58582cd0
|
2014-01-26T06:31:38
|
|
Merge pull request #2057 from GrahamDennis/local-file-url-push-fix
Fix local push to file:// URL.
|
|
1cb5a811
|
2014-01-26T17:07:39
|
|
Fix write_object.
|
|
a1bbc0ce
|
2014-01-25T04:14:37
|
|
merge: rename _oid() -> id()
Following the rest of the series, use 'id' when refering to the value.
|
|
86bfc3e1
|
2014-01-24T20:30:10
|
|
diff: change id abbrev option's name to id_abbrev
Same as the other commits in the series, we use 'id' when talking about
thing rather than the datatype.
|
|
9950bb4e
|
2014-01-24T20:23:17
|
|
diff: rename the file's 'oid' to 'id'
In the same vein as the previous commits in this series.
|
|
f000ee4e
|
2014-01-24T18:23:46
|
|
tree: remove legacy 'oid' naming
Rename git_tree_entry_byoid() to _byid() as per the convention.
|
|
47e28349
|
2014-01-24T12:01:34
|
|
commit: remvoe legacy 'oid' naming
|
|
d541170c
|
2014-01-24T11:36:41
|
|
index: rename an entry's id to 'id'
This was not converted when we converted the rest, so do it now.
|
|
7cc001ce
|
2014-01-24T15:46:15
|
|
Add PHP and Javascript diff drivers
Since I don't have permission yet on the code from Git, I decided
I'd take a stab at writing patterns for PHP and Javascript myself.
I think these are pretty weak, but probably better than the
default behavior without them.
|
|
027b8eda
|
2014-01-24T15:45:49
|
|
Move userdiff tests to be data driven
This moves the expected and actual test data along with the source
data for the userdiff tests into the tests/resources/userdiff test
repo and updates the test to use that.
|
|
3b19d2fd
|
2014-01-24T09:46:22
|
|
Permission for Git code from a couple more
This brings over the Pascal and CSharp userdiff data.
|
|
c7c260a5
|
2014-01-23T16:12:39
|
|
Got some permission to use userdiff patterns
I contacted a number of Git authors and lined up their permission
to relicense their work for use in libgit2 and copied over their
code for diff driver xfuncname patterns. At this point, the code
I've copied is taken verbatim from core Git although Thomas Rast
warned me that the C++ patterns, at least, really need an update.
I've left off patterns where I don't feel like I have permission
at this point until I hear from more authors.
|
|
5d82c0df
|
2014-01-21T12:08:02
|
|
Update all tests for new pattern extraction
|
|
b8e86c62
|
2014-01-21T12:00:08
|
|
Implement matched pattern extract for fn headers
|
|
9bbc53d6
|
2014-01-21T11:36:43
|
|
Fix filemode updating in diff text
|
|
2c65602e
|
2014-01-21T10:39:27
|
|
Import git drivers and test HTML driver
Reorganize the builtin driver table slightly so that core Git
builtin definitions can be imported verbatim. Then take a few of
the core Git drivers and pull them in.
This also creates a test of diffs with the builtin HTML driver
which led to some small error handling fixes in the driver
selection logic.
|
|
a5a38643
|
2014-01-20T14:53:59
|
|
Initial take on builtin drivers with multiline
This extends the diff driver parser to support multiline driver
definitions along with ! prefixing for negated matches. This
brings the driver function pattern parsing in line with core Git.
This also adds an internal table of driver definitions and a
fallback code path that will look in that table for diff drivers
that are set with attributes without having a definition in the
config file. Right now, I just populated the table with a kind
of simple HTML definition that is similar to the core Git def.
|
|
d0a3de72
|
2014-01-24T11:18:51
|
|
note: rename the id getter to git_note_id()
This was left over when we did the general switch.
|
|
ca55fc63
|
2014-01-23T08:03:29
|
|
Merge pull request #2074 from linquize/pack-filename-sha1
Drop parsing pack filename SHA1 part
|
|
8610487c
|
2014-01-23T23:28:28
|
|
Drop parsing pack filename SHA1 part, no one cares the filename
|
|
ac8949ed
|
2014-01-22T15:41:25
|
|
Merge pull request #2073 from ethomson/zerobytes
Sometimes a zero byte file is just a zero byte file
|
|
410a8e6f
|
2014-01-22T18:31:25
|
|
Sometimes a zero byte file is just a zero byte file
Don't go to the ODB to resolve zero byte files in the workdir
|
|
ab4bcc03
|
2014-01-22T14:14:37
|
|
Plug a small memory leak
|
|
e82b6d13
|
2014-01-22T11:50:43
|
|
Merge pull request #2072 from ethomson/commit_summary
Summarize empty messages
|
|
238e8149
|
2014-01-22T14:41:04
|
|
Summarize empty messages
|
|
2b678ce5
|
2014-01-22T10:34:25
|
|
Merge pull request #2070 from ethomson/checkout_filemode
Preserve tree filemode in index during checkout
|
|
e8b81c69
|
2014-01-22T13:24:32
|
|
Preserve tree filemode in index during checkout
Don't try to determine whether the system supports file modes
when putting the tree data in the index during checkout. The tree's
mode is canonical and did not come from stat(2) in the first place.
|
|
ec088fec
|
2014-01-22T09:35:25
|
|
Merge pull request #2069 from isilkor/patch_to_buf
Expose patch serialization to git_buf
|
|
c05cd792
|
2014-01-22T17:51:32
|
|
Drop git_patch_to_str
It's hard or even impossible to correctly free the string buffer
allocated by git_patch_to_str in some circumstances. Drop the function
so people have to use git_patch_to_buf instead - git_buf has a dedicated
destructor.
|
|
450e8e9e
|
2014-01-22T13:22:15
|
|
Expose patch serialization to git_buf
Returning library-allocated strings from libgit2 works fine on Linux,
but may cause problems on Windows because there is no one C Runtime that
everything links against. With libgit2 not exposing its own allocator,
freeing the string is a gamble.
git_patch_to_str already serializes to a buffer, then returns the
underlying memory. Expose the functionality directly, so callers can use
the git_buf_free function to free the memory later.
|
|
af2b969b
|
2014-01-20T16:26:04
|
|
Merge pull request #2061 from ethomson/merge_improvements
Merge improvements
|
|
0ef19fe1
|
2014-01-20T17:13:55
|
|
Merge submodules
|
|
db3462ce
|
2014-01-19T22:36:50
|
|
Support union merges
|
|
0e1ba46c
|
2014-01-19T20:03:13
|
|
Remove the "merge none" flag
The "merge none" (don't automerge) flag was only to aide in
merge trivial tests. We can easily determine whether merge
trivial resulted in a trivial merge or an automerge by examining
the REUC after automerge has completed.
|
|
6891a862
|
2014-01-19T18:12:22
|
|
Load merge.conflictstyle setting from config
|
|
e651e8e2
|
2014-01-19T15:05:08
|
|
Introduce diff3 mode for checking out conflicts
|
|
6b92c99b
|
2014-01-19T01:20:25
|
|
Don't try to merge binary files
|
|
c1d648c5
|
2014-01-08T18:29:42
|
|
merge_file should use more aggressive levels
The default merge_file level was XDL_MERGE_MINIMAL, which will
produce conflicts where there should not be in the case where
both sides were changed identically. Change the defaults to be
more aggressive (XDL_MERGE_ZEALOUS) which will more aggressively
compress non-conflicts. This matches git.git's defaults.
Increase testing around reverting a previously reverted commit to
illustrate this problem.
|
|
e49c98e6
|
2014-01-20T14:12:41
|
|
Merge pull request #2065 from ethomson/submodule_unmodified
"Uninitialized" submodules are "unmodified"
|
|
b554ca5d
|
2014-01-20T15:12:06
|
|
"Uninitialized" submodules are "unmodified"
Extend the "unmodified" submodule workdir test to include
uninitialized submodules, to prevent reporting submodules as
modified when they're not in the workdir at all.
|
|
d62bf0bf
|
2014-01-20T10:15:05
|
|
Merge pull request #2063 from linquize/reflog-msg-null
git_reflog_entry_message can be null
|
|
fb62dc90
|
2014-01-20T10:04:20
|
|
Merge pull request #2064 from piki/piki/buffer-corner-cases
Fix a couple of corner cases and an undefined behavior
|
|
abdaf936
|
2014-01-20T11:42:12
|
|
add unit tests for git_buf_join corner cases
|
|
7cbc6241
|
2014-01-20T11:41:21
|
|
fix corner cases and an undefined behavior
|
|
e7c66fc8
|
2014-01-20T23:32:18
|
|
git_reflog_entry_message can be null
|
|
8bf476ac
|
2014-01-19T16:24:58
|
|
Factor out code to convert local "url" into a path.
Previously this code was shared between `local_push` and `local_connect`.
|
|
b97e55f2
|
2014-01-18T14:48:59
|
|
Merge pull request #2059 from linquize/git_config_get_crash
Fix segfault when calling git_config_get_* functions when a config fails to load
|
|
c24130e0
|
2014-01-18T22:58:31
|
|
Fix segfault when calling git_config_get_* functions when a config fails to load
Reinitialize the result code of get_entry() to GIT_ENOTFOUND
|
|
fed98153
|
2014-01-17T14:00:48
|
|
Merge pull request #2058 from libgit2/rb/gitdir-windows-paths
Convert gitdir paths to posix on Windows
|
|
c7015424
|
2014-01-18T08:54:19
|
|
Fix a compile warning.
|
|
6b415f62
|
2014-01-17T13:46:44
|
|
Convert gitdir paths to posix on Windows
Apparently, a .git file with "gitdir: path" link on Windows is
allowed to use backslashes in the path. Who knew?
|
|
194d077c
|
2014-01-18T08:43:29
|
|
Add test for pushing to a local file:// URL.
|