|
06c070b5
|
2013-05-23T09:43:56
|
|
Add testcase for #1600
|
|
52f537e9
|
2013-05-22T02:04:12
|
|
Bugfix: Return NULL in push_leaf, when trie is full
os->full was set 1, but the overflowed idx_leaf was still used to index
into os->nodes a little later. Returning NULL fixes that.
|
|
6828bf26
|
2013-05-21T10:49:36
|
|
Merge pull request #1594 from nulltoken/topic/tag_annotation
tag: Introduce git_tag_annotation_create()
|
|
b81cc1d6
|
2013-05-18T16:52:16
|
|
tag: Introduce git_tag_annotation_create()
|
|
e167ec18
|
2013-05-21T08:09:17
|
|
Merge pull request #1597 from zodiac/patch-1
define "long name" in git_reference_name_to_id
|
|
fc74343f
|
2013-05-21T16:51:50
|
|
refs: export the glob iterator
|
|
e069478e
|
2013-05-21T21:35:58
|
|
define "long name" in git_reference_name_to_id
|
|
60750fc4
|
2013-05-20T13:53:00
|
|
Merge pull request #1596 from grimreaper/development
Initialize loose_deleted before it is used for a check later on.
|
|
038c1654
|
2013-05-19T01:41:00
|
|
Initialize loose_deleted before it is used for a check later on.
|
|
5b3d52ce
|
2013-05-16T13:13:28
|
|
Merge pull request #1568 from nulltoken/topic/revparse_ext
Introduce git_revparse_ext()
|
|
f672cd2a
|
2013-05-10T20:15:57
|
|
revparse: Make revparse_ext() return git_reference from names as well
|
|
e841c533
|
2013-05-09T16:42:39
|
|
revparse: Introduce git_revparse_ext()
Expose a way to retrieve, along with the target git_object, the reference
pointed at by some revparse expression (`@{<-n>}` or
`<branchname>@{upstream}` syntax).
|
|
dcaa898d
|
2013-05-09T16:52:04
|
|
revparse: Simplify temporary reference freeing
|
|
e3107e0e
|
2013-05-16T11:35:02
|
|
Merge pull request #1558 from bmorganpa/ssh_transport
SSH Transport
|
|
c2d282cf
|
2013-05-16T11:10:42
|
|
Merge pull request #1590 from arrbee/examples-like-git
Add cat-file to examples (with some public API improvements)
|
|
18e37db9
|
2013-05-16T11:10:13
|
|
Merge pull request #1591 from arrbee/reorder-reuc-read-for-safety
Ensure reuc vector is always valid
|
|
57908bb3
|
2013-05-16T11:03:55
|
|
Ensure reuc vector is always valid
In theory, if there was a problem reading the REUC data, the
read_reuc() routine could have left uninitialized and invalid
data in the git_index vector. This moves the line that inserts a
new entry into the vector down to the bottom of the routine so we
know all the content is already valid. Also, per @linquize, this
uses calloc to ensure no uninitialized data.
|
|
4a782c82
|
2013-05-16T11:02:30
|
|
Merge pull request #1574 from linquize/calloc
Use calloc() for safety
|
|
8d784001
|
2013-05-16T10:43:10
|
|
Make examples/diff.c compile vs threadsafe library
|
|
58206c9a
|
2013-05-16T10:38:27
|
|
Add cat-file example and increase const use in API
This adds an example implementation that emulates git cat-file.
It is a convenient and relatively simple example of getting data
out of a repository.
Implementing this also revealed that there are a number of APIs
that are still not using const pointers to objects that really
ought to be. The main cause of this is that `git_vector_bsearch`
may need to call `git_vector_sort` before doing the search, so a
const pointer to the vector is not allowed. However, for tree
objects, with a little care, we can ensure that the vector of
tree entries is always sorted and allow lookups to take a const
pointer. Also, the missing const in commit objects just looks
like an oversight.
|
|
7026ad89
|
2013-05-16T21:08:55
|
|
calloc() to initialize memory
|
|
12f831fa
|
2013-05-16T04:41:05
|
|
Merge pull request #1586 from jamill/fetch_fix
Fetch should not fail when remote HEAD reference is not present locally
|
|
54e489c2
|
2013-05-15T16:35:47
|
|
Merge pull request #1579 from arrbee/index-entry-dup-and-free
Index entry dup and free
|
|
89251b28
|
2013-05-15T16:25:11
|
|
Update index.h docs
Move the git_index_entry to the very top, since it provides the
main structure that needs to be understood by the reader, then
move the bitmasks for the flags and the flags_extended under that
since they are details for looking at particular fields of the
structure.
|
|
96c01991
|
2013-05-15T09:24:51
|
|
Remove entry dup/free functions and fix comments
This removes the functions to duplicate and free copies of a
git_index_entry and updates the comments to explain that you
should just use the public definition of the struct as needed.
|
|
797dfb28
|
2013-05-13T16:09:33
|
|
Add APIs to dup and free git_index_entrys
This adds git_index_entry_dup to make a copy of an existing entry
and git_index_entry_free to release the memory of the copy. It
also updates the documentation for git_index_get_bypath and
git_index_get_byindex to make it clear that the returned structure
should *not* be modified.
|
|
487884a9
|
2013-05-13T16:07:29
|
|
Improve docs for git_index_entry flag masks
The constants for extracting data from git_index_entry flags and
flags_extended are not named in a way that makes it easy to know
where to use each one. This improves the docs for the flags (and
slightly reorganizes them), so it should be more obvious.
|
|
71596200
|
2013-05-15T15:47:46
|
|
Merge pull request #1588 from arrbee/fixes-for-checkout-and-diff
Bug fixes for checkout and diff
|
|
6957f73c
|
2013-05-15T15:47:20
|
|
Merge pull request #1578 from nulltoken/fix/whitespaces
Fix trailing whitespaces
|
|
72b3dd4a
|
2013-05-15T15:23:33
|
|
Use GIT_IDXENTRY_STAGE macro
Since I added the GIT_IDXENTRY_STAGE macro to extract the stage
from a git_index_entry, we probably don't need an internal inline
function to do the same thing.
|
|
09fae31d
|
2013-05-15T14:58:26
|
|
Improve robustness of diff rename detection
Under some strange circumstances, diffs can end up listing files
that we can't actually open successfully. Instead of aborting
the git_diff_find_similar, this makes it so that those files just
won't be considered as valid rename/copy targets instead.
|
|
dcb0f7c0
|
2013-05-15T14:54:02
|
|
Fix checkout of submodules with no .gitmodules
It is possible for there to be a submodule in a repository with
no .gitmodules file (for example, if the user forgot to commit
the .gitmodules file). In this case, core Git will just create
an empty directory as a placeholder for the submodule but
otherwise ignore it. We were generating an error and stopping
the checkout. This makes our behavior match that of core git.
|
|
55d3a390
|
2013-05-15T14:52:12
|
|
Remove old symlinks before updating
Unlike blob updates, symlink updates cannot be done "in place"
writing over an old symlink. This means that in checkout when we
realize that we can safely update a symlink, we still need to
remove the old one before writing the new.
|
|
79ef3be4
|
2013-05-15T14:50:05
|
|
Fix diff crash when last item is untracked dir
When the last item in a diff was an untracked directory that only
contained ignored items, the loop to scan the contents would run
off the end of the iterator and dereference a NULL pointer. This
includes a test that reproduces the problem and a fix.
|
|
1fed6b07
|
2013-05-13T21:57:37
|
|
Fix trailing whitespaces
|
|
6fe02c11
|
2013-05-15T14:44:35
|
|
Fetch should not fail when remote HEAD reference is not present locally
|
|
84ac625d
|
2013-05-15T12:51:40
|
|
Added GITERR_CHECK_ALLOC
|
|
a6b79b9b
|
2013-05-15T12:49:15
|
|
Changed case of FindLibSSH2.cmake to FindLIBSSH2.cmake
|
|
6cbbd739
|
2013-05-15T12:48:43
|
|
Renamed FindLibSSH2.cmake
|
|
ccaee222
|
2013-05-15T12:46:33
|
|
Added GITERR_CHECK_ALLOC
|
|
e057e411
|
2013-05-15T12:44:51
|
|
Reworked git_cred_ssh_keyfile_passphrase_new method
|
|
b54ed3ef
|
2013-05-15T12:41:16
|
|
Added error check
|
|
22011b33
|
2013-05-15T12:38:40
|
|
Cleanup
|
|
f0ab7372
|
2013-05-15T17:51:57
|
|
signature: Lenient when dupping, strict when creating
|
|
86c6f74a
|
2013-05-15T08:31:37
|
|
Merge pull request #1583 from linquize/whitespace
Unify whitespaces to tabs
|
|
0cb16fe9
|
2013-05-15T20:26:55
|
|
Unify whitespaces to tabs
|
|
bc2020d6
|
2013-05-14T16:39:19
|
|
Extend valgrind suppressions on Mac
|
|
00384321
|
2013-05-14T16:24:16
|
|
Merge pull request #1580 from carlosmn/cmake-describe
CMake: vendor strings
|
|
33539b10
|
2013-05-14T15:05:52
|
|
Merge pull request #1582 from dmgctrl/checkout_symlink_fix
Create directory for symlink before creating symlink
|
|
103a2c77
|
2013-05-14T15:04:16
|
|
Merge pull request #1581 from nulltoken/fix/leaks
Fix some memory leaks
|
|
3bbc87d6
|
2013-05-14T23:09:26
|
|
CMake: allow appending a string to the library filename
This helps us install multiple versions of the library side-by-side.
|
|
fbcab44b
|
2013-05-14T16:03:09
|
|
Create directory for symlink before creating symlink
|
|
b4d33e46
|
2013-05-14T21:54:26
|
|
Fix some memory leaks
|
|
000e6896
|
2013-05-12T15:35:02
|
|
CMake: don't try to use bundled zlib when the system's path is in the cache
The code surrounding zlib bundling did not take into consideration
that ZLIB_LIBRARY gets cached, and assumed that FIND(ZLIB) would
always set ZLIB_FOUND, which does not hold true, as this variable
signifies that we have found the package and had to look at the
system, as its location was not cached.
Only use the bundled sources if the external zlib is neither
newly-found nor cached.
|
|
62221033
|
2013-05-11T07:48:31
|
|
Merge pull request #1575 from arrbee/ref-iterator-early-exit
Fix refdb iteration early termination bug
|
|
99d32707
|
2013-05-11T06:42:25
|
|
Fix refdb iteration early termination bug
There was a problem found in the Rugged test suite where the
refdb_fs_backend__next function could exit too early in some
very specific hashing patterns for packed refs. This ports
the Rugged test to libgit2 and then fixes the bug.
|
|
7b5bc8f4
|
2013-05-11T05:15:00
|
|
Merge pull request #1569 from linquize/msvc-sdl
Fix broken build when MSVC SDL checks is enabled
|
|
e583334c
|
2013-05-10T21:42:22
|
|
Fix broken build when MSVC SDL checks is enabled
|
|
b6cc559a
|
2013-05-11T02:42:49
|
|
Merge pull request #1385 from carlosmn/refs-iter
Introduce a refs iterator
|
|
c58cac12
|
2013-05-04T18:06:14
|
|
Introduce a glob-filtering iterator
If the backend doesn't provide support for it, the matching is done in
refdb on top of a normal iterator.
|
|
9bd89d96
|
2013-05-04T16:49:39
|
|
Move a couple more functions to use iterators
|
|
2b562c3a
|
2013-05-04T16:32:58
|
|
refs: remove the OID/SYMBOLIC filtering
Nobody should ever be using anything other than ALL at this level, so
remove the option altogether.
As part of this, git_reference_foreach_glob is now implemented in the
frontend using an iterator. Backends will later regain the ability of
doing the glob filtering in the backend.
|
|
932af0e9
|
2013-05-04T15:57:44
|
|
Add iterator support to the testdb backend
|
|
fb592a96
|
2013-05-04T15:54:57
|
|
Remove outdated test
Selecting wether to list loose or packed references is not something
we want to support anymore, so remove a test for this.
|
|
51fc5e89
|
2013-05-04T15:16:55
|
|
Make sure the ref iterator works in an repo without physical presence
|
|
69a3c766
|
2013-05-04T15:03:32
|
|
refdb_fs: don't crash when the repo doesn't have a path
|
|
4def7035
|
2013-03-02T19:31:03
|
|
refs: introduce an iterator
This allows us to get a list of reference names in a loop instead of callbacks.
|
|
95727245
|
2013-05-04T16:03:17
|
|
refs: implement _foreach with the iterator
|
|
4a65aead
|
2013-05-10T10:49:22
|
|
Merge pull request #1571 from arrbee/what-if-ignorecase-lies
Improve ignore handling in git_status_file
|
|
c3a51711
|
2013-05-10T10:47:08
|
|
Merge pull request #1572 from arrbee/diff-patch-with-rename
Fix diff output for renames and copies
|
|
94d24ac9
|
2013-05-10T10:33:25
|
|
Merge pull request #1573 from nulltoken/fix/leaks
Fix some memory leaks
|
|
24988894
|
2013-05-10T12:02:17
|
|
Fix some memory leaks
|
|
e9ba61f3
|
2013-05-10T09:32:42
|
|
Fix diff output for renames and copies
If you use rename detection, the renamed and copied files would
not show any text diffs because the function that decides if
data should be loaded didn't know which sides of the diff to
load for those cases.
This adds a test that looks at the patch generated for diff
entries that are COPIED or RENAMED.
|
|
1f9e41ee
|
2013-05-10T07:50:53
|
|
Improve ignore handling in git_status_file
The git_status_file API was doing a hack to deal with files that
are inside ignored directories. The status scan was not reporting
any file in this case, so git_status_file would attempt a final
"stat()" call, and return IGNORED if the file actually existed.
On case-insensitive filesystems where core.ignorecase is set
incorrectly, this magic check can "succeed" and report a file
as ignored when it should actually return ENOTFOUND.
Now that we have the GIT_STATUS_OPT_RECURSE_IGNORED_DIRS, we can
use that flag to make sure that git_status_file() will look into
ignored directories and eliminate the hack completely, so we give
the correct error.
|
|
89ea0e51
|
2013-05-10T09:40:14
|
|
Removed ifdef
|
|
ae59321f
|
2013-05-10T14:31:58
|
|
clone: fix -Wmaybe-uninitialized warning
|
|
b4d81a00
|
2013-05-09T17:40:21
|
|
Moved libssh2 sign callback into typedef
|
|
ce6d50b9
|
2013-05-09T17:37:42
|
|
Changed to use libssh2_channel_exec
|
|
05f58131
|
2013-05-09T17:36:27
|
|
Renaming
|
|
aca2d26a
|
2013-05-09T09:08:44
|
|
Merge pull request #1566 from ethomson/ref_zero
calloc refs instead of malloc'ing them
|
|
617bb175
|
2013-05-09T17:44:44
|
|
calloc refs instead of malloc'ing them
|
|
9ca4ff41
|
2013-05-09T06:48:16
|
|
Merge pull request #1563 from arrbee/doc-fix-repo-message
Fix git_repository_message docs
|
|
3d1c9f61
|
2013-05-09T06:45:06
|
|
Fix git_repository_message docs
This clarifies the docs for git_repository_message and also adds
to the tests to explicitly check NUL termination of data when the
output buffer is smaller than the message size. There is a minor
behavior change so that a non-NULL output buffer will always be
NUL terminated (at length zero) if an error occurs.
|
|
503dd0f3
|
2013-05-09T05:43:25
|
|
Merge pull request #1560 from carlosmn/ref-dwim
Expose git_reference_dwim
|
|
ddc5c054
|
2013-05-09T05:42:37
|
|
Merge pull request #1561 from arrbee/fix-windows-diff-eofnl
Fix windows diff eofnl error
|
|
eb05b114
|
2013-05-07T22:45:01
|
|
Fix dumb type in time comparison
|
|
af795759
|
2013-05-07T15:09:11
|
|
Merge pull request #1552 from carlosmn/config-helpers
Config helpers for global/xdg config files
|
|
98d633cc
|
2013-05-07T23:28:21
|
|
Expose git_reference_dwim
Extract this function out of the rev-parse code to be able to DWIM a
reference instead of its target.
|
|
5d831887
|
2013-05-07T00:10:02
|
|
config: convenience function to open global/xdg
The rules for which one to open is a bit silly, so let's make it
easier for our users.
|
|
a4b75dcf
|
2013-05-06T21:51:25
|
|
repo: unconditionally create a global config backend
When a repository is initialised, we need to probe to see if there is
a global config to load. If this is not the case, the user isn't able
to write to the global config without creating the backend and adding
it themselves, which is inconvenient and overly complex.
Unconditionally create and add a backend for the global config file
regardless of whether it exists as a convenience for users.
To enable this, we allow creating backends to files that do not exist
yet, changing the semantics somewhat, and making some tests invalid.
|
|
4ca3d6d2
|
2013-05-07T14:37:15
|
|
Added ifdef
|
|
00e43380
|
2013-05-07T14:30:35
|
|
Merge remote-tracking branch 'origin/development' into ssh_transport
|
|
7369b3c3
|
2013-05-07T14:26:33
|
|
Added libssh2 cmake module
|
|
574b86b7
|
2013-05-07T13:53:23
|
|
Fixed compilation issues when libssh2 is missing
|
|
c36565c0
|
2013-05-07T13:43:10
|
|
Added SSH public key authentication
|
|
d6465e1a
|
2013-05-07T10:14:28
|
|
Merge pull request #1557 from carlosmn/tagopt
remote: correctly interpret tagopt '--tags'
|
|
0f938c6b
|
2013-05-07T09:59:53
|
|
Fix win32 type warnings
|
|
505b5d0c
|
2013-05-07T16:01:22
|
|
remote: correctly interpret tagopt '--tags'
When tagopt is set to '--tags', we should only take the default tags
refspec into account and ignore any configured ones.
Bring the code into compliance.
|
|
33665410
|
2013-05-07T08:00:44
|
|
Merge pull request #1556 from arrbee/diff-patch-fixes
Diff patch bug fixes
|
|
c2f602f8
|
2013-05-07T07:15:39
|
|
Fix line numbering for patches with eofnl
When a patch contained an eofnl change (i.e. the last line either
gained or lost a newline), the oldno and newno line number values
for the lines in the last hunk of the patch were not useful. This
makes them behave in a more expected manner.
|