|
d335e73a
|
2013-01-08T16:37:19
|
|
keep comments at < 80 chars
|
|
368a2b4e
|
2013-01-07T18:33:50
|
|
Merge pull request #1204 from arrbee/diff-blob-to-buffer
Have diff blob to buffer share code (and add tests)
|
|
f2b7f7a6
|
2013-01-07T15:44:22
|
|
Share git_diff_blobs/git_diff_blob_to_buffer code
This moves the implementation of these two APIs into common code
that will be shared between the two. Also, this adds tests for
the `git_diff_blob_to_buffer` API. Lastly, this adds some extra
`const` to a few places that can use it.
|
|
f6234cd9
|
2012-12-21T20:57:43
|
|
Introduce git_diff_blob_to_buffer
|
|
7dfc5c3c
|
2013-01-07T07:34:34
|
|
Merge pull request #1203 from phkelley/reverse_dak
Revert changes from git/git diff-delta.c by dak@gnu.org, proski@gnu.org
|
|
8e89839d
|
2013-01-07T07:06:18
|
|
Merge pull request #1202 from martinwoodward/add-florian
Add Florian Forster to hall of fame
|
|
f6ed5e2d
|
2013-01-07T09:53:43
|
|
Revert changes from git/git diff-delta.c by dak@gnu.org, proski@gnu.org
|
|
32f59bfb
|
2013-01-07T14:52:42
|
|
Add Florian Forster to hall of fame
Permission recieved from Florian Forster on Jan 07 2013 to include
any changes of his from core Git into LibGit2.
|
|
05e9fc58
|
2013-01-06T18:56:40
|
|
Merge pull request #1200 from ethomson/merge_cleanup
merge cleanup should actually cleanup and the test should actually test
|
|
c31ae146
|
2013-01-06T18:38:29
|
|
merge cleanup should actually cleanup and the test should actually test
|
|
7eb222fc
|
2013-01-06T10:39:35
|
|
Correct typos in documentation
|
|
e5562e18
|
2013-01-06T10:12:05
|
|
Revert "Tab align value of GIT_FILEMODE_BLOB_EXECUTABLE"
This reverts commit 47fbcbb5a8d4aad87371a381ebdadd04cde3fb2b.
|
|
47fbcbb5
|
2013-01-06T10:02:37
|
|
Tab align value of GIT_FILEMODE_BLOB_EXECUTABLE
|
|
8b107c67
|
2013-01-06T09:12:02
|
|
Merge pull request #1198 from nulltoken/travis/run-valgrind-on-success
travis: Only run Valgrind when all tests pass
|
|
ced8eff1
|
2013-01-06T17:21:37
|
|
travis: Only run Valgrind when all tests pass
|
|
5df7ad3e
|
2013-01-06T07:56:45
|
|
Merge pull request #1196 from scunz/allow_clone_without_master_branch
Allow to clone repositories that don't have a `master` branch
|
|
74f880a6
|
2013-01-06T07:56:08
|
|
Merge pull request #1197 from nulltoken/travis/run-online-tests
travis: Include the online suite when running against Travis
|
|
d01fe380
|
2013-01-06T15:26:54
|
|
reset: Fix a memory leak
|
|
b97fabfa
|
2013-01-06T15:18:00
|
|
tests: Fix some memory leaks
|
|
d1aee477
|
2013-01-06T15:09:27
|
|
clone: Fix a memory leak
|
|
09556895
|
2013-01-06T14:40:32
|
|
travis: Include the online suite when running against Travis
|
|
2ba6f3c7
|
2013-01-06T14:30:52
|
|
Allow to clone repositories that don't have a `master` branch
Before this, we error out from `reference_matches_remote_head` if the
reference we're searching for does not exist.
Since we explicitly check if master is existing in `update_head_to_remote`
and error out if it doesn't, a repository without master branch could
not be cloned.
In fact this was later clobbered by what is fixed in #1194.
However, this patch introduces a `found` member in `head_info` and sets
it accordingly. That also saves us from checking the string length of
`branchname` a few times.
|
|
f9b4adbe
|
2013-01-05T18:52:09
|
|
Merge pull request #1194 from libgit2/dont-clobber-errors
git_mwindow_file_deregister() shouldn't return errors
|
|
f9b55bcb
|
2013-01-05T18:20:42
|
|
git_mwindow_file_deregister() shouldn't return errors
As a function that appears to only be called on error paths, I don't
think it makes sense for it to return an error, or clobber the global
giterr. Note that no existing callsites actually check the return
code.
In my own application, there are errors where the real error ends
up being hidden, as git_mwindow_file_deregister() clobbers the
global giterr. I'm not sure this error is even relevant?
|
|
d74b1bc5
|
2013-01-05T15:44:19
|
|
Merge pull request #1131 from libgit2/correct-ahead-behind
Fix an issue with ahead-behind for lopsided traversal
|
|
2b7b3e1f
|
2013-01-05T04:30:24
|
|
Merge pull request #1193 from libgit2/no-newline-packed-refs
Handle packed refs with no trailing newline
|
|
ef82ff30
|
2013-01-05T00:46:39
|
|
Handle packed refs with no trailing newline
I saw a repo in the wild today which had a master branch ref which was packed, but had no trailing newline. Git handled it fine, but libgit2 choked on it. Fix seems simple enough. If we don't see a newline, assume the end of the buffer is the end of the ref line.
|
|
7511d8b4
|
2013-01-04T17:28:09
|
|
Merge pull request #1192 from arrbee/fix-win32-checkout-test
Fix win32 checkout test
|
|
2f089539
|
2013-01-04T17:17:37
|
|
Actually fix win32 checkout test
It turns out that using REMOVE_UNTRACKED with checkout for this
particular test was causing the .gitattributes file to be removed
and so we do have to allow for the CRs in the created file...
|
|
bebdbcd4
|
2013-01-04T16:56:21
|
|
Fix crlf issue with checkout tests
Move some checkout utility functions into a shared file and fix
some crlf filtering issues when verifying file contents.
|
|
7a68142e
|
2013-01-04T16:49:46
|
|
Merge pull request #1191 from maxpow4h/fix-format-string
Fixed size_t format string warning
|
|
79ff264e
|
2013-01-05T11:34:19
|
|
Fixed size_t format string warning
|
|
cfc7b835
|
2013-01-04T16:14:49
|
|
Merge pull request #1118 from arrbee/fix-reset-hard
Fix checkout corner cases, index handling, and reset hard behavior
|
|
817d6251
|
2013-01-03T16:56:27
|
|
Fix checkout of index-only dirs and prefixed paths
There are a couple of checkout bugs fixed here. One is with
untracked working directory entries that are prefixes of tree
entries but not in a meaningful way (i.e. "read" is a prefix of
"readme.txt" but doesn't interfere in any way). The second bug
is actually a redo of 07edfa0fc640f85f95507c3101e77accd7d2bf0d
where directory entries in the index that are not in the diff
were not being removed correctly. That fix remedied one case
but broke another.
|
|
7fc00435
|
2013-01-03T15:48:52
|
|
Add index API to remove all files in a directory
This adds the git_index_remove_directory API plus tests.
|
|
1b88faf7
|
2013-01-03T14:21:25
|
|
Fix oid tostr issue with NULL oid
I made a small change to the behavior of this code and apparently
got it wrong. Sigh.
|
|
d8889d2b
|
2013-01-03T14:08:53
|
|
Fix checkout bug rmv untracked trees from index
When checking out with the GIT_CHECKOUT_REMOVE_UNTRACKED option
and there was an entire tree in the working directory and in the
index that is not in the baseline nor target commit, the tree was
correctly(?) removed from the working directory but was not
successfully removed from the index. This fixes that and adds a
test of the functionality.
|
|
dde7602a
|
2013-01-03T13:22:34
|
|
Fix memory leak with checkout tree iterator
|
|
0d70f650
|
2013-01-03T10:51:18
|
|
Fixing checkout UPDATE_ONLY and adding tests
This adds a bunch of new checkout tests and in the process I found
a bug in the GIT_CHECKOUT_UPDATE_ONLY flag which I fixed.
|
|
2850252a
|
2013-01-03T09:11:52
|
|
Oh yeah, bugs from my rebase
|
|
77cffa31
|
2013-01-02T17:14:00
|
|
Simplify checkout documentation
This moves a lot of the detailed checkout documentation into a new
file (docs/checkout-internals.md) and simplifies the public docs
for the checkout API.
|
|
b3fb9237
|
2013-01-02T17:12:45
|
|
Clone should use GIT_CHECKOUT_SAFE_CREATE
For clone to work as expected, it should be using a SAFE_CREATE
checkout (i.e. create files that are missing, even if the target
tree matches the current HEAD).
|
|
c50c58de
|
2013-01-02T17:10:56
|
|
Extend tests for checkout with typechanges
Test a number of other cases, including intentionally forced
conflicts and deeper inspection that trees get created properly.
There is a still a bug in checkout because the first test here
(i.e. test_checkout_typechange__checkout_typechanges_safe) should
be able to pass with GIT_CHECKOUT_SAFE as a strategy, but it will
not because of some lingering submodule checkout issues.
|
|
e0548c0e
|
2013-01-02T17:09:07
|
|
Fix some submodule and typechange checkout cases
There were a bunch of small bugs in the checkout code where I was
assuming that a typechange was always from a tree to a blob or
vice versa. This fixes up most of those cases. Also, there were
circumstances where the submodule definitions were changed by the
checkout and the submodule data was not getting reloaded properly
before the new submodules were checked out.
|
|
16a666d3
|
2013-01-02T17:05:54
|
|
Fix workdir notifications and removals
The notifications were broken from the various iterations over
this code and were not returning working dir item data correctly.
Also, workdir items that were alphabetically after the last item
in diff were not being processed.
|
|
546d65a8
|
2013-01-02T17:01:34
|
|
Fix up spoolandsort iterator usage
The spoolandsort iterator changes got sort-of cherry picked out of
this branch and so I dropped the commit when rebasing; however,
there were a few small changes that got dropped as well (since the
version merged upstream wasn't quite the same as what I dropped).
|
|
a9a73007
|
2012-12-20T16:16:22
|
|
Submodule caching fix and location API
This adds a new API to the submodule interface that just returns
where information about the submodule was found (e.g. config file
only or in the HEAD, index, or working directory).
Also, the old "refresh" call was potentially keeping some stale
submodule data around, so this simplfies that code and literally
discards the old cache, then reallocates.
|
|
6f58332f
|
2012-12-20T16:15:02
|
|
Fix use of uninitialized variable
|
|
a6a82e1a
|
2012-12-19T15:06:40
|
|
Improve error propagation in stash
Stash was sometimes obscuring the actual error code, replacing it
with a -1 when there was more descriptive value. This updates
stash to preserve the original error code more reliably along
with a variety of other error handling tweaks.
I believe this is an improvement, but arguably, preserving the
underlying error code may result in values that are harder to
interpret by the caller who does not understand the internals.
Discussion is welcome!
|
|
8fe713cc
|
2012-12-19T15:06:14
|
|
Make git_oid_tostr use out buffer for NULL oid
Previously a NULL oid was handled like an empty buffer and
returned a status empty string. This makes git_oid_tostr()
set the output buffer to the empty string instead.
|
|
5cf9875a
|
2012-12-18T15:19:24
|
|
Add index updating to checkout
Make checkout update entries in the index for all files that are
updated and/or removed, unless flag GIT_CHECKOUT_DONT_UPDATE_INDEX
is given. To do this, iterators were extended to allow a little
more introspection into the index being iterated over, etc.
|
|
7e5c8a5b
|
2012-12-10T15:31:43
|
|
More checkout improvements
This flips checkout back to be driven off the changes between
the baseline and the target trees. This reinstates the complex
code for tracking the contents of the working directory, but
overall, I think the resulting logic is easier to follow.
|
|
cf208031
|
2012-12-06T13:36:17
|
|
Rework checkout internals (again)
I've tried to map out the detailed behaviors of checkout and make
sure that we're handling the various cases correctly, along with
providing options to allow us to emulate "git checkout" and "git
checkout-index" with the various flags. I've thrown away flags
in the checkout API that seemed like clutter and added some new
ones. Also, I've converted the conflict callback to a general
notification callback so we can emulate "git checkout" output and
display "dirty" files.
As of this commit, the new behavior is not working 100% but some
of that is probably baked into tests that are not testing the
right thing. This is a decent snapshot point, I think, along the
way to getting the update done.
|
|
bfe7d7de
|
2012-11-26T17:24:02
|
|
Reorder operations in git reset
This corrects the order of operations in git reset so that the
checkout to reset the working directory content is done before
the HEAD is moved. This allows us to use the HEAD and the index
content to know what files can / should safely be reset.
Unfortunately, there are still some cases where the behavior of
this revision differs from core git. Notable, a file which has
been added to the index but is not present in the HEAD is
considered to be tracked by core git (and thus removable by a
reset command) whereas since this loads the target state into
the index prior to resetting, it will consider such a file to be
untracked and won't touch it. That is a larger fix that I'll
defer to a future commit.
|
|
c5df10f4
|
2012-11-30T10:59:03
|
|
Failing test on git_checkout_tree when removing directories
|
|
d0951175
|
2012-12-06T16:12:21
|
|
Add failing test to demonstrate wrong checkout behaviour
|
|
6fee906c
|
2012-12-18T15:13:11
|
|
missing error message is confusing
|
|
6ac724af
|
2012-12-18T15:12:06
|
|
Clear error to avoid leaving invalid error behind
|
|
e9e20c84
|
2012-12-19T14:52:12
|
|
Update cl_git_pass to return more info
This adds a failure reporting function that is called by
cl_git_pass which captures the actual error return code and
the error message if available in the failure report.
|
|
60406162
|
2013-01-04T20:28:33
|
|
clar: lolpython
|
|
3a4a961d
|
2013-01-04T20:25:10
|
|
clar: Corrupted pickles
|
|
c18a5ec5
|
2013-01-04T11:10:39
|
|
Merge pull request #1174 from nulltoken/topic/soft_reset_with_index_conflicts
Prevent soft reset when index contains conflicts
|
|
702c3bf7
|
2013-01-04T19:01:36
|
|
clar: make it compatible with python3
|
|
1d5d4186
|
2013-01-04T20:02:01
|
|
clar: haha
|
|
73b58c91
|
2013-01-04T20:00:09
|
|
clar: fix warning on Windows
|
|
bdb2f242
|
2013-01-04T19:54:45
|
|
Ignore clar.suite.rule
|
|
27fe6efe
|
2013-01-04T13:48:08
|
|
Fix git_index sorting with core.ignorecase in git_index_read
|
|
9a0d5904
|
2012-12-27T13:42:27
|
|
reset: Cannot soft reset with a conflicted index
|
|
52ee071b
|
2013-01-04T09:33:54
|
|
Merge pull request #1189 from martinwoodward/tests-compliance
Add jGit license block to derrived tests
|
|
ba1a430a
|
2013-01-04T17:29:45
|
|
Add jGit license block to derrived tests
Add the jGit license block to tests derrived from jGit as per the
terms of the BSD license.
|
|
8978f1de
|
2013-01-04T17:52:49
|
|
Merge branch 'clar2' into development
Conflicts:
src/pqueue.c
src/pqueue.h
src/util.c
tests-clar/merge/setup.c
|
|
a7ffd936
|
2013-01-04T17:46:38
|
|
clar: fix merge/setup.c
|
|
d0ae8b98
|
2013-01-03T16:15:52
|
|
Remove whitespace
|
|
ed8fb821
|
2013-01-03T16:14:23
|
|
Add note in CONVENTIONS about inlined functions
|
|
10aa44ce
|
2013-01-03T23:42:04
|
|
Add Brian Downing to the hall of fame
|
|
5a62d659
|
2013-01-03T12:44:09
|
|
MERGE_HEAD contents iterator
|
|
9651fdc2
|
2013-01-03T22:28:59
|
|
Give proper license notice to code from Android
The usage of the Android derrived code contains a full notice
which must be provided with the source code as per the terms
given at:
https://android.googlesource.com/platform/bionic/+/android-4.0.3_r1.1/libc/bionic/dirname_r.c
|
|
43464497
|
2013-01-03T22:24:10
|
|
Add full license notice to bsearch code
The original BSD glibc code contains the notice as given at
http://opensource.apple.com/source/gcc/gcc-5666.3/libiberty/bsearch.c
and should be given in full along with the code.
|
|
d73d52df
|
2013-01-03T13:26:11
|
|
Fix bug in gen_pktline() for deletes of missing remote refs
* gen_pktline() in smart_protocol.c was skipping refspecs that deleted
refs that were not advertised by the server. The new behavior is to
send a delete command with an old-id of zero, which matches the behavior
of the official git client.
* Update test_network_push__delete() in reaction to above fix.
* Obviate messy logic that handles missing push_spec rrefs by canonicalizing
push_spec. After calculate_work(), loid, roid, and rref, are filled in with
exactly what is sent to the server
|
|
931b8b70
|
2013-01-03T22:16:37
|
|
Add Apache license header back to libpqueue files
The original libpqueue file were licensed under Apache 2.0 so
therefore should retain their copyrights and header as per the
license terms at http://www.apache.org/licenses/LICENSE-2.0
|
|
35560d6d
|
2013-01-03T15:53:50
|
|
expose merge metadata cleanup
|
|
b60b4562
|
2013-01-03T16:31:36
|
|
add option to allow git note overwrite
|
|
853488ee
|
2013-01-03T08:45:09
|
|
Fix git__strncasecmp
|
|
b421decc
|
2013-01-03T15:43:51
|
|
notes.c - whitespace fix
|
|
686a243a
|
2013-01-04T08:36:13
|
|
Merge pull request #1184 from ethomson/mergehead_iterator
MERGE_HEAD contents iterator
|
|
37955f54
|
2013-01-04T07:33:31
|
|
Merge pull request #1183 from congyiwu/push_delete_fix
Fix bug in gen_pktline() for deletes of missing remote refs
|
|
acb0f65f
|
2013-01-04T03:57:31
|
|
Merge pull request #1188 from tnm/inline-convention
Inline convention
|
|
f783f76e
|
2013-01-03T16:15:52
|
|
Remove whitespace
|
|
394711ff
|
2013-01-03T16:14:23
|
|
Add note in CONVENTIONS about inlined functions
|
|
60d61926
|
2013-01-03T15:46:23
|
|
Merge pull request #1187 from martinwoodward/give-props
Add Brian Downing to the hall of fame
|
|
c999e1c3
|
2013-01-03T23:42:04
|
|
Add Brian Downing to the hall of fame
|
|
dccec593
|
2013-01-03T14:46:45
|
|
Merge pull request #1186 from martinwoodward/compliance-audit
License Compliance Audit
|
|
42e50b5e
|
2013-01-03T12:44:09
|
|
MERGE_HEAD contents iterator
|
|
1c5b3a41
|
2013-01-03T22:28:59
|
|
Give proper license notice to code from Android
The usage of the Android derrived code contains a full notice
which must be provided with the source code as per the terms
given at:
https://android.googlesource.com/platform/bionic/+/android-4.0.3_r1.1/libc/bionic/dirname_r.c
|
|
0470f8fc
|
2013-01-03T22:24:10
|
|
Add full license notice to bsearch code
The original BSD glibc code contains the notice as given at
http://opensource.apple.com/source/gcc/gcc-5666.3/libiberty/bsearch.c
and should be given in full along with the code.
|
|
4128f5aa
|
2013-01-03T13:26:11
|
|
Fix bug in gen_pktline() for deletes of missing remote refs
* gen_pktline() in smart_protocol.c was skipping refspecs that deleted
refs that were not advertised by the server. The new behavior is to
send a delete command with an old-id of zero, which matches the behavior
of the official git client.
* Update test_network_push__delete() in reaction to above fix.
* Obviate messy logic that handles missing push_spec rrefs by canonicalizing
push_spec. After calculate_work(), loid, roid, and rref, are filled in with
exactly what is sent to the server
|
|
9a919301
|
2013-01-03T22:16:37
|
|
Add Apache license header back to libpqueue files
The original libpqueue file were licensed under Apache 2.0 so
therefore should retain their copyrights and header as per the
license terms at http://www.apache.org/licenses/LICENSE-2.0
|
|
b449a9ae
|
2013-01-03T13:57:17
|
|
Merge pull request #1185 from ethomson/cleanup_merge
expose merge metadata cleanup
|
|
ad2bc32f
|
2013-01-03T15:53:50
|
|
expose merge metadata cleanup
|
|
b8a1ea7c
|
2013-01-03T11:04:03
|
|
Fix core::env cleanup code
Mark fake home directories that failed to be created, so we won't
try to remove them and have cleanup just use p_rmdir.
|