Vicent Marti
e035685f27
Revert "Properly export all external symbols in Win32"
...
It is not a good idea to export these internal symbols now that they are
not required to run the unit tests.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-12-23 00:44:41 +02:00
Vicent Marti
9f54fe482d
Remove git_errno
...
It was not being used by any methods (only by malloc and calloc), and
since it needs to be TLS, it cannot be exported on DLLs on Windows.
Burn it with fire. The API always returns error codes!
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-12-23 00:15:09 +02:00
Vicent Marti
11f6646f03
Export TLS symbols properly in Win32
...
There was no export definition for GIT_EXTERN_TLS() under MSVC.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-12-22 22:51:24 +02:00
Vicent Marti
2a18a792e3
Properly export all external symbols in Win32
...
Some external functions were not being exported because they were using
the 'extern' keyword instead of the generic GIT_EXTERN() macro.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-12-22 22:43:39 +02:00
Vicent Marti
40c44d2fb6
Fix issues in repository initialization
...
Implemented recursive directory creation
Fix style issues
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-12-19 22:50:20 +02:00
Vicent Marti
fe93dabeef
Merge branch 'repo-init' of https://github.com/nulltoken/libgit2 into nulltoken-repo-init
2010-12-19 21:30:15 +02:00
nulltoken
1c2c7c0d16
Added creation of ref/heads/ and refs/tags/ directories.
2010-12-19 15:08:53 +01:00
nulltoken
8ea7fbc0cd
Fixed a nasty bug which was preventing correct generation of the signature.
2010-12-18 22:27:26 +01:00
Vicent Marti
b5ced41e85
Merge branch 'timezone'
2010-12-18 02:35:45 +02:00
Vicent Marti
638c2ca428
Rename 'git_person' to 'git_signature'
...
The new signature struct is public, and contains information about the
timezone offset. Must be free'd manually by the user.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-12-18 02:35:33 +02:00
nulltoken
2899093835
Prettified HEAD symlink generation.
2010-12-17 20:03:20 +01:00
nulltoken
d13e7e02a8
Added a comment reminding that the gitfo_mkdir_recurs() is far from being fully implemented.
2010-12-17 15:58:30 +01:00
nulltoken
e1f8cad0c9
Added basic HEAD file creation.
2010-12-17 14:45:02 +01:00
nulltoken
f0b2bfe527
Made gitfo_mkdir_recurs() more tolerant.
...
Doesn't err any more when the directory already exists.
2010-12-17 14:24:47 +01:00
nulltoken
a67a096a9e
Added creation of 'objects' and 'refs' directories.
2010-12-17 10:41:56 +01:00
nulltoken
58fcfc26e0
Removed unnecessary git_repository_init_results handling.
2010-12-17 10:36:58 +01:00
nulltoken
1a5204a788
Added gitfo_mkdir_recurs() placeholder.
2010-12-17 10:08:01 +01:00
nulltoken
08190e2ad1
Simplified git_repository_init_results struct.
2010-12-16 15:39:25 +01:00
nulltoken
4b8e27c81e
Very first git_repository_init() draft.
2010-12-15 18:25:15 +01:00
Vicent Marti
1f080e2da4
Fix initialization & freeing of inexistent repos
...
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-12-13 03:43:56 +02:00
nulltoken
fee065a069
Made possible to parse a person with no specified timezone offset.
2010-12-11 15:34:37 +01:00
nulltoken
13710f1e86
Added timezone offset parsing and outputting.
2010-12-10 16:30:06 +01:00
nulltoken
6c14d64123
Fixed a memory leak in git_repository_lookup() when provided git_otype is invalid.
2010-12-10 04:45:20 +02:00
Vicent Marti
4eec2c0d4a
Set short message when changing a commit's message
...
Yes, finally.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-12-07 03:55:46 +02:00
Vicent Marti
a44fc1d413
Fix type-conversion warnings
...
The types in the git_index_entry struct are now system-defaults, and get
truncated to uint32_t's when written back on the index.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-12-06 23:36:21 +02:00
Vicent Marti
f591833095
Add license file to all public headers
...
Yes, the public headers do need our license.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-12-06 23:08:31 +02:00
Vicent Marti
44908fe763
Change the library include file
...
Libgit2 is now officially include as
#include "<git2.h>"
or indidividual files may be included as
#include <git2/index.h>
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-12-06 23:03:16 +02:00
Vicent Marti
d12299fe22
Change include structure for the project
...
The maze with include dependencies has been fixed.
There is now a global include:
#include <git.h>
The git_odb_backend API has been exposed.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-12-06 01:14:15 +02:00
Vicent Marti
7d7cd8857a
Decouple storage from ODB logic
...
Comes with two default backends: loose object and packfiles.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-12-06 01:14:15 +02:00
Vicent Marti
86bfec39b5
Revert changes in odb.c to eventually rebase
...
The odb.c will disappear after the decoupling changes.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-12-06 01:13:09 +02:00
nulltoken
6f02c3bad8
Small source code readability improvements.
...
Replaced magic number "0" with GIT_SUCCESS constant wherever it made sense.
2010-12-05 20:18:56 +01:00
Vicent Marti
691aa96817
Add 'git_repository_open2' to customize repo folders
...
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-12-02 18:35:38 +02:00
Vicent Marti
eec9523513
Commit parents now use the common 'vector' code
...
No more linked lists, no more O(n) access.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-12-02 04:58:22 +02:00
Vicent Marti
41109a7e7e
Merge branch 'commitparents' of https://github.com/JustinLove/libgit2 into JustinLove-commitparents
2010-12-02 04:42:33 +02:00
Vicent Marti
c4034e63f3
Refactor all 'vector' functions into common code
...
All the operations on the 'git_index_entry' array and the
'git_tree_entry' array have been refactored into common code in the
src/vector.c file.
The new vector methods support:
- insertion: O(1) (avg)
- deletion: O(n)
- searching: O(logn)
- sorting: O(logn)
- r. access: O(1)
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-12-02 04:31:54 +02:00
Justin Love
eb095435f3
add git_commit_parent to retrieve a parent by index
2010-11-30 21:28:39 -06:00
Justin Love
12114415ab
add git_commit_parentcount
2010-11-30 21:27:12 -06:00
Vicent Marti
8c1f9e4dc3
Make the bitmasks for Index Entry flags public
...
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-11-29 18:07:17 +02:00
Vicent Marti
91e8894150
Properly write Index Entry 'flags_extended'
...
Always write the 'flags_extended' attribute to disk if it's available.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-11-29 18:06:22 +02:00
Vicent Marti
25e9b4dd44
Do proper symbol exports on MSVC
...
Yes, if you are wondering why the shared library was
failing to build under MSVC, it's because it was empty.
Oh wow.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-11-24 17:56:35 +02:00
Vicent Marti
322086f9b1
Do not use STDINT types in public headers
...
Old versions of MSVC don't have such types available.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-11-24 17:56:30 +02:00
Vicent Marti
824f4acde2
Fix redeclaration warnings in MSVC
...
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-11-24 00:23:15 +02:00
Vicent Marti
8b0e448f5c
Removed unreachable code (MSVC warning)
2010-11-24 00:23:15 +02:00
Vicent Marti
43e380a88c
Fix gitfo_isdir() in Win32 systems
...
Because adhering to the POSIX standards is overrated.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-11-24 00:23:15 +02:00
Vicent Marti
6b1eab3976
Fix MSVC warnings and errors
...
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-11-24 00:23:15 +02:00
Vicent Marti
30b171a185
Change blob API to return temp refs to the content
...
If the user wants permanent references, he can duplicate the temporary
one manually.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-11-20 17:37:32 +02:00
Vicent Marti
69a09b7c69
Fix wrong pointer check in git__strdup
...
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-11-19 17:17:46 +02:00
Vicent Marti
c3dd69a9e1
Fix resizing the index array
...
No longer segfaults when resizing an empty array.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-11-17 05:16:32 +02:00
Vicent Marti
50dd6ca54c
Fix repository initialization
...
We cannot assume that non-bare repositories have an index file, because
'git index' doesn't create it by default.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-11-17 05:16:26 +02:00
Vicent Marti
111e362263
Fix freeing blob objects from the ODB
...
The internal contents of the blob were being free'd but not the blob
object itself.
Signed-off-by: Vicent Marti <tanoku@gmail.com>
2010-11-16 03:24:39 +02:00