|
899bd19a
|
2014-02-24T21:20:57
|
|
Document enumerator and rewording
|
|
9e3b901a
|
2014-02-24T00:09:29
|
|
Add unit test
|
|
c7c83394
|
2014-02-21T00:22:07
|
|
Add option to limit blame to first parent
|
|
e0ebaaa5
|
2014-02-18T18:48:43
|
|
Merge pull request #2121 from bk2204/ewouldblock
Check for EWOULDBLOCK as well as EAGAIN on write.
|
|
0197d410
|
2014-02-15T23:09:01
|
|
Check for EWOULDBLOCK as well as EAGAIN on write.
On some systems, notably HP PA-RISC systems running Linux or HP-UX,
EWOULDBLOCK and EAGAIN are not the same value. POSIX (and these OSes) allow
EWOULDBLOCK to occur on write(2) (and send(2), etc.), so check explicitly
for this case as well as EAGAIN by defining and using a macro GIT_ISBLOCKED
that considers both.
The macro is necessary because MSYS does not provide EWOULDBLOCK and
compilation fails if an attempt is made to use it unconditionally. On most
systems, where the two values are the same, the compiler will simply
optimize this check out and it will have no effect.
|
|
dbd2ca35
|
2014-02-11T17:27:30
|
|
Merge pull request #2115 from ethomson/crlf_redux
Fix filter test for CRLF->LF issues
|
|
2a528bc0
|
2014-02-11T19:05:13
|
|
Fix filter test for CRLF->LF issues
|
|
90dd2864
|
2014-02-12T01:55:25
|
|
Merge pull request #2114 from ethomson/crlf_redux
Never convert CRLF->LF
|
|
b033f3a3
|
2014-02-11T16:52:08
|
|
Never convert CRLF->LF
Core git performs no conversion on systems that use LF, emulate that.
|
|
5d195cf7
|
2014-02-11T15:56:04
|
|
Merge pull request #2110 from libgit2/ed/crlf_input
Handle `core.autocrlf=input` when checking out
|
|
b362fbf3
|
2014-02-10T10:01:36
|
|
Merge pull request #2111 from libgit2/cmn/cond-fixups
Conditional ref update fixups
|
|
15284a2c
|
2014-02-10T14:52:28
|
|
refs: move current_id before the reflog parameters
Keep the reflog parameters as the last two, as they're the optional
parameters.
|
|
77ad6754
|
2014-02-10T14:38:01
|
|
refs: conditional wording fixups
This addresses arrbee's concerns about wording in the conditional
reference udpate functions.
|
|
66b2626c
|
2014-02-09T13:43:56
|
|
core.autocrlf=input w/ text=auto attr to workdir
|
|
9780020b
|
2014-02-09T13:37:39
|
|
Tests for crlf filtering into the repository
|
|
f77127da
|
2014-02-09T12:37:16
|
|
Tests for core.autocrlf and .gitattributes
|
|
fb6f4539
|
2014-02-09T12:36:24
|
|
Close files on file diff failure
Not closing the files on a diff failure ensures that clar
cleanup will fail on win32 because we still have the file open.
|
|
fb52ba19
|
2014-02-09T07:25:49
|
|
Merge pull request #2107 from rocky-luo/examples-diff-numstat
add example for diff with --numstat
|
|
8086b78b
|
2014-02-09T21:08:42
|
|
replace 'out' with 'patch',replace the literal tabs with '\t'.
|
|
4f5a3f40
|
2014-02-08T20:10:19
|
|
add example for diff with --numstat
|
|
f1590a18
|
2014-02-07T16:56:46
|
|
Merge pull request #2056 from libgit2/rb/commit-amend
Add git_commit_amend API
|
|
80c29fe9
|
2014-01-17T10:45:11
|
|
Add git_commit_amend API
This adds an API to amend an existing commit, basically a shorthand
for creating a new commit filling in missing parameters from the
values of an existing commit. As part of this, I also added a new
"sys" API to create a commit using a callback to get the parents.
This allowed me to rewrite all the other commit creation APIs so
that temporary allocations are no longer needed.
|
|
2d929194
|
2014-02-07T16:14:17
|
|
Merge pull request #2099 from libgit2/bs/more-reflog-stuff
More reflogness
|
|
57c47af1
|
2014-02-07T16:05:19
|
|
Merge pull request #2042 from libgit2/cmn/conditional-ref
refs: conditional ref updates
|
|
3158e2fe
|
2014-02-07T15:24:39
|
|
Fix some Windows warnings
This fixes a number of warnings with the Windows 64-bit build
including a test failure in test_repo_message__message where an
invalid pointer to a git_buf was being used.
|
|
c4ee3b54
|
2014-02-07T18:32:06
|
|
Merge pull request #2100 from libgit2/rb/update-pqueue
Replace priority queue code with implementation from hashsig
|
|
db55bb73
|
2014-02-06T11:18:10
|
|
Correct default reflog message for git_remote_fetch
|
|
2bfc6739
|
2014-02-06T10:39:57
|
|
Fix terrible indentation
|
|
8875ef21
|
2014-02-06T10:11:17
|
|
Merge pull request #2104 from ethomson/utf8_cleanup
Remove unused utf8 -> utf16 conversion code
|
|
5dae3ffe
|
2014-02-05T19:27:27
|
|
Only run clone-failure test on private repo
|
|
55d257e7
|
2014-02-05T15:03:00
|
|
Remove unused utf8 -> utf16 conversion code
|
|
78ee7e81
|
2014-02-05T14:10:19
|
|
More merge.conflictstyle fixes
|
|
3094102f
|
2014-02-05T14:05:18
|
|
Avoid crash when skipping remote test
|
|
fe45922d
|
2014-02-05T13:41:12
|
|
Fix broken clone test
|
|
a2ce19ca
|
2014-02-05T13:35:26
|
|
Prevent user's merge.conflictstyle from breaking tests
|
|
5c8be325
|
2014-02-05T13:32:45
|
|
Fix a few references to changed function signatures
|
|
0de2c4e3
|
2014-02-05T13:15:57
|
|
Merge remote-tracking branch 'libgit2/development' into bs/more-reflog-stuff
|
|
629ba7f1
|
2014-02-05T13:07:46
|
|
Merge pull request #2027 from libgit2/rb/only-windows-is-windows
Some tests of paths that can't actually be written to disk
|
|
df70de07
|
2014-02-05T10:25:50
|
|
Merge pull request #2094 from libgit2/cmn/push-non-commit
Add flexibility to the revwalk API
|
|
daeac29a
|
2014-02-05T16:24:09
|
|
Merge pull request #2103 from libgit2/cmn/parse-commit-faster
commit: faster parsing
|
|
24f3024f
|
2014-02-05T14:31:01
|
|
Split p_strlen into its own header
We need this from util.h and posix.h, but the latter includes common.h
which includes util.h, which means p_strlen is not defined by the time
we get to git__strndup().
Split the definition on p_strlen() off into its own header so we can use
it in util.h.
|
|
1e6f0ac4
|
2014-02-05T13:49:51
|
|
utils: don't reimplement strnlen
The standard library provides a very nice strnlen function, which knows
to use SSE, let's not reimplement it ourselves.
|
|
a6563619
|
2014-02-05T13:01:54
|
|
commit: faster parsing
The current code issues a lot of strncmp() calls in order to check for
the end of the header, simply in order to copy it and start going
through it again. These are a lot of calls for something we can check as
we go along. Knowing the amount of parents beforehand to reduce
allocations in extreme cases does not make up for them.
Instead start parsing immediately and check for the double-newline after
each header field, leaving the raw_header allocation for the end, which
lets us go through the header once and reduces the amount of strncmp()
calls significantly.
In unscientific testing, this has reduced a shortlog-like usage (walking
though the whole history of a branch and extracting data from the
commits) of git.git from ~830ms to ~700ms and makes the time we spend in
strncmp() negligible.
|
|
d6006413
|
2014-01-30T17:24:46
|
|
docs: produce literal asterisks
|
|
c74077d1
|
2014-02-02T12:08:18
|
|
revparse: do look at all refs when matching text
Now that we no longer fail to push non-commits on a glob, let's search
on all refs when we rev-parse syntax asks us to match text.
|
|
d18209ee
|
2014-02-01T16:27:42
|
|
revwalk: add a test for pushing all references
This used to be broken, let's make sure we don't break this use-case.
|
|
af817202
|
2014-02-01T15:29:16
|
|
revwalk: remove usage of foreach
|
|
d465e4e9
|
2014-02-01T15:19:13
|
|
revwalk: ignore wrong object type in glob pushes
Pushing a whole namespace can cause us to attempt to push non-committish
objects. Catch this situation and special-case it for ignoring this.
|
|
b4ef67d5
|
2014-02-01T15:11:00
|
|
revwalk: add a failing test for pushing "tags"
This shows that pusing a whole namespace can be problematic.
|
|
f61272e0
|
2014-02-01T12:51:36
|
|
revwalk: accept committish objects
Let the user push committish objects and peel them to figure out which
commit to push to our queue.
This is for convenience and for allowing uses of
git_revwalk_push_glob(w, "tags")
with annotated tags.
|
|
5367ec4b
|
2014-02-05T12:02:52
|
|
refs: add an unconditional delete
Add it under the git_reference_remove() name, letting the user pass the
repo and name, analogous to unconditional setting/creation.
|
|
b7ae71ec
|
2014-02-05T11:47:33
|
|
refs: catch cases where the ref type has changed
If the type of the on-disk reference has changed, the old value
comparison should fail.
|
|
f44fd59e
|
2014-02-05T11:21:14
|
|
refs: check the ref's old value when deleting
Recognize when the reference has changed since we loaded it.
|
|
7ee8c7e6
|
2014-02-05T11:07:34
|
|
refs: placeholder conditional delete
We don't actually pass the old value yet.
|
|
f8621dde
|
2014-02-05T10:42:42
|
|
refs: factor out old value comparison
We will reuse this later for deletion.
|
|
878fb66f
|
2014-02-05T10:19:17
|
|
refs: bring conditional symbolic updates to the frontend
Bring the race detection goodness to symbolic references as well.
|
|
91123661
|
2014-02-04T22:04:00
|
|
refdb: add conditional symbolic updates
Add a parameter to the backend to allow checking for the old symbolic
target.
|
|
d6236cf6
|
2014-02-04T21:40:22
|
|
refs: add tests for conditional updates
|
|
1202c7ea
|
2014-02-04T21:35:44
|
|
refs: fix leak on successful update
Free the old ref even on success.
|
|
fc4728e3
|
2014-01-29T14:07:18
|
|
refs: return GIT_EMODIFIED if the ref target moved
In case we loose the race to update the reference, return GIT_EMODIFIED
to let the user distinguish it from other types of errors.
|
|
5d96fe88
|
2014-01-14T15:33:29
|
|
refs: changes from feedback
Change the name to _matching() intead of _if(), and force _set_target()
to be a conditional update. If the user doesn't care about the old
value, they should use git_reference_create().
|
|
9b148098
|
2013-12-18T19:58:16
|
|
refs: conditional ref updates
Allow updating references if the old value matches the given one.
|
|
010cec3a
|
2014-02-04T20:50:40
|
|
Add reflog params to git_repository_detach_head
|
|
c3ab1e5a
|
2014-02-04T20:38:13
|
|
Add reflog parameters to remote apis
Also added a test for git_remote_fetch.
|
|
491cecfe
|
2014-02-04T20:13:50
|
|
Add reflog parameters to git_push_update_tips
|
|
1bbacc9f
|
2014-02-04T16:46:43
|
|
Avoid extra copying in pqueue operations
This tweaks the pqueue_up and pqueue_down routines so that they
will not do full element swaps but instead carry over the state
of the previous loop iteration and only assign elements for which
we know the final position. This will avoid a little bit of data
assignment which should improve performance in theory.
Also got rid of some vector helpers that I'm no longer using.
|
|
0adb0606
|
2014-02-04T15:32:57
|
|
Fix reflog message when creating commits
|
|
43709ca8
|
2014-02-04T10:33:30
|
|
Fix typo setting sorted flag when reloading index
This fixes a typo I made for setting the sorted flag on the index
after a reload. That typo didn't actually cause any test failures
so I'm also adding a test that explicitly checks that the index is
correctly sorted after a reload when ignoring case and when not.
|
|
882c7742
|
2014-02-04T10:01:37
|
|
Convert pqueue to just be a git_vector
This updates the git_pqueue to simply be a set of specialized
init/insert/pop functions on a git_vector.
To preserve the pqueue feature of having a fixed size heap, I
converted the "sorted" field in git_vectors to a more general
"flags" field so that pqueue could mix in it's own flag. This
had a bunch of ramifications because a number of places were
directly looking at the vector "sorted" field - I added a couple
new git_vector helpers (is_sorted, set_sorted) so the specific
representation of this information could be abstracted.
|
|
7369ea80
|
2014-02-04T05:57:25
|
|
Merge pull request #2096 from ethomson/merge
Corrections for merge working directory validation
|
|
af4bc661
|
2014-02-03T21:04:40
|
|
Add some priority queue tests
I forgot that I wrote some tests for the new priority queue code.
|
|
4075e060
|
2014-02-03T21:02:08
|
|
Replace pqueue with code from hashsig heap
I accidentally wrote a separate priority queue implementation when
I was working on file rename detection as part of the file hash
signature calculation code. To simplify licensing terms, I just
adapted that to a general purpose priority queue and replace the
old priority queue implementation that was borrowed from elsewhere.
This also removes parts of the COPYING document that no longer
apply to libgit2.
|
|
dbfd83bc
|
2014-02-03T19:56:13
|
|
Remove unused pointer assignment
|
|
c0b10c25
|
2014-02-01T12:05:00
|
|
Merge wd validation tests against index not HEAD
Validating the workdir should not compare HEAD to working
directory - this is both inefficient (as it ignores the cache)
and incorrect. If we had legitimately allowed changes in the
index (identical to the merge result) then comparing HEAD to
workdir would reject these changes as different. Further, this
will identify files that were filtered strangely as modified,
while testing with the cache would prevent this.
Also, it's stupid slow.
|
|
bb13d391
|
2014-02-01T12:51:44
|
|
Test that emulates a strange filter implementation
|
|
16eb8b7c
|
2014-02-01T12:02:55
|
|
Tests merging staged files identical to result
|
|
b60149ec
|
2014-01-31T18:43:50
|
|
Tests merge when changes exist in workdir/index
|
|
86746b4b
|
2014-02-03T15:06:47
|
|
Add reset tests for reflog
|
|
eec2761f
|
2014-02-03T15:06:32
|
|
Fix warning
|
|
586be3b8
|
2014-02-03T15:05:55
|
|
Add reflog parameters to git_reset
|
|
0d847a31
|
2014-02-03T14:08:40
|
|
Reset helpers: use revparse instead
|
|
3b6a5bac
|
2014-02-03T10:36:04
|
|
Merge pull request #2095 from libgit2/update-head-reflog
Correct "new" id for reattached-HEAD reflog entry
|
|
0b4d86af
|
2014-02-02T10:44:13
|
|
Merge pull request #2098 from arthurschreiber/arthur/add-git_reference_is_note
Add `git_reference_is_note`.
|
|
50ad7cc2
|
2014-02-02T18:20:06
|
|
Add `git_reference_is_note`.
|
|
7f058b86
|
2014-02-01T19:29:48
|
|
Check for errors when dereferencing symbolic refs
|
|
ee8e6afd
|
2014-02-01T11:46:44
|
|
Reflog: correct "new" id for reattaching HEAD
|
|
7ac1b899
|
2014-02-01T11:46:15
|
|
Add failing test case
|
|
40e10630
|
2014-01-31T13:57:41
|
|
Merge pull request #2092 from libgit2/rb/update-clar
Update to latest clar
|
|
7be88b4c
|
2014-01-31T13:44:09
|
|
Update to latest clar
|
|
f9500b45
|
2014-01-31T09:46:40
|
|
Merge pull request #2081 from libgit2/bs/reflog
Reflog completionism
|
|
db092c19
|
2014-01-30T16:10:18
|
|
Allow tests to run without user config
|
|
a1710a28
|
2014-01-29T10:35:46
|
|
Enhance testing of signature parameters
|
|
a1b07dca
|
2014-01-29T09:57:20
|
|
Document branch-creation reflog better
|
|
59bb1126
|
2014-01-28T11:45:30
|
|
Provide good default reflog messages in branch api
|
|
e871d89b
|
2014-01-28T11:32:09
|
|
Ensure moving a branch updates the reflog
|
|
ccf6ce5c
|
2014-01-28T11:30:36
|
|
Ensure renaming a reference updates the reflog
|
|
540c1809
|
2014-01-28T10:44:33
|
|
Add reflog parameters to git_branch_move
|
|
48110f67
|
2014-01-28T10:31:54
|
|
Deleting a branch deletes its reflog
|
|
1cc974ab
|
2014-01-27T14:40:31
|
|
Augment clone API with reflog parameters
|
|
b31ebfbc
|
2014-01-27T14:12:29
|
|
Add reflog params to git_branch_create
|