|
528a4e24
|
2013-04-28T14:16:45
|
|
Parse shorthand refspecs as valid
Relax the ONELEVEL ref naming rules so the refspec parsing code can
ask for 'master' to be considered valid.
|
|
78bf2944
|
2013-04-25T17:42:44
|
|
Merge pull request #1504 from ethomson/git_atomic_ssize
git_atomic_ssize for 64-bit atomics only on 64-bit platforms
|
|
eb63fda2
|
2013-04-25T11:52:17
|
|
git_atomic_ssize for 64-bit atomics only on 64-bit platforms
|
|
b4117e19
|
2013-04-24T20:09:42
|
|
docs: formatting fixes
|
|
879458e7
|
2013-04-24T15:52:33
|
|
repo: Add `git_repository__cleanup`
|
|
2370b4d7
|
2013-04-23T13:06:26
|
|
Merge pull request #1499 from arrbee/fix-diff-config-usage
Support more diff config options and use the config cache more
|
|
b1ff7004
|
2013-04-22T16:25:57
|
|
Improve diff config options handling
This makes diff use the cvar cache for config options where
possible, and also adds support for a number of other config
options to diff including "diff.context", "diff.ignoreSubmodules",
"diff.noprefix", "diff.mnemonicprefix", and "core.abbrev".
To make this natural, this involved a rearrangement of the code
that allocates the diff object vs. the code that initializes it
based on the combination of options passed in by the user and
read from the config.
This commit includes tests for most of these new options as well.
|
|
6be368bf
|
2013-04-22T16:24:53
|
|
Clear repo config cache when cfgs are set
This is a conservative change, but it seemed like the only safe
thing to do -- i.e. clear the cvar cache when a config gets set.
|
|
eac76c23
|
2013-04-22T14:27:36
|
|
Use config cache where possible
This converts many of the config lookups that are done around the
library to use the repository config cache. This was everything I
could find that wasn't part of diff (which requires a larger fix).
|
|
ab01cbd4
|
2013-04-22T14:24:12
|
|
Add configs to repo config cache
This adds a bunch of additional config values to the repository
config value cache and makes it easier to add a simple boolean
config without creating enum values for each possible setting.
Also, this fixes a bug in git_config_refresh where the config
cache was not being cleared which could lead to potential
incorrect values.
The work to start using the new cached configs will come in the
next couple of commits...
|
|
608d0466
|
2013-04-22T13:51:35
|
|
Make tree to tree diffs case sensitive
When case insensitive tree iterators were added, we started reading
the case sensitivity of the index to decide if the tree should be
case sensitive. This is good for index-to-tree comparisons, but
for tree-to-tree comparisons, we should really default to doing a
case sensitive comparison unless the user really wants otherwise.
|
|
a5df71c1
|
2013-04-19T22:36:01
|
|
Support diff.context config
|
|
687db88f
|
2013-04-22T16:45:36
|
|
Make sure diff output is cleared on error
|
|
bd0a07f4
|
2013-04-23T12:28:59
|
|
Clone: replace fetch spec with custom value
|
|
495d6f07
|
2013-04-23T12:15:35
|
|
Merge pull request #1502 from nvloff/remote_refspecs_minor_fixes
Remote refspecs minor fixes
|
|
dfdf709e
|
2013-04-23T21:29:07
|
|
get last refspec in clone test
|
|
7915e6cc
|
2013-04-23T11:48:12
|
|
Merge pull request #1498 from libgit2/vmg/atomic64
64 bit atomic operations and shared cache memory usage
|
|
a2378ae4
|
2013-04-23T20:42:29
|
|
opts: Add getter for cached memory
|
|
6c9dc12b
|
2013-04-23T11:37:40
|
|
Merge pull request #1501 from xavier-l/packbuilder-commit
Added function to insert commit into pack
|
|
a952b986
|
2013-04-23T21:28:28
|
|
remove git_remote_pushspec
|
|
9a9de29d
|
2013-04-23T19:08:13
|
|
Document the odb backend constructors
|
|
0b90366c
|
2013-04-23T12:27:38
|
|
Fixes indentation
|
|
f0e37a8b
|
2013-04-23T12:22:29
|
|
Added function to insert commit into pack
|
|
6c1b6b7a
|
2013-04-23T16:21:47
|
|
examples: init the threading system
|
|
a5de9044
|
2013-04-23T02:24:44
|
|
refs: Better error name
|
|
d6c8688d
|
2013-04-23T02:22:15
|
|
Merge branch 'development' of https://github.com/libgit2/libgit2 into development
|
|
08a1b476
|
2013-04-23T02:21:42
|
|
Merge branch 'master' of https://github.com/libgit2/libgit2 into development
|
|
fe719932
|
2013-04-22T10:39:24
|
|
Merge pull request #1497 from carlosmn/atomic-refcount
Make refcounting atomic
|
|
920cbc98
|
2013-04-22T17:31:47
|
|
cache: More aggressive default
|
|
a14163a7
|
2013-04-22T17:30:49
|
|
cache: Shared meter for memory usage
|
|
f9774eea
|
2013-04-22T17:22:31
|
|
atomic: Add an atomic type for 64-bit operations
|
|
05b17964
|
2013-04-21T19:26:35
|
|
Make refcounting atomic
|
|
d08dd728
|
2013-04-22T08:07:20
|
|
Merge pull request #1454 from libgit2/vmg/new-cache
New caching
|
|
d8771592
|
2013-04-22T17:04:52
|
|
cache: Max cache size, and evict when the cache fills up
|
|
cf9709b6
|
2013-04-22T16:53:46
|
|
tests: Do not warn for unused variable
|
|
865e2dd4
|
2013-04-17T23:58:37
|
|
tests: Cleanup commit parse testing code
|
|
5d2d21e5
|
2013-04-16T15:00:43
|
|
Consolidate packfile allocation further
Rename git_packfile_check to git_packfile_alloc since it is now
being used more in that capacity. Fix the various places that use
it. Consolidate some repeated code in odb_pack.c related to the
allocation of a new pack_backend.
|
|
38eef611
|
2013-04-16T14:19:27
|
|
Make indexer use shared packfile open code
The indexer was creating a packfile object separately from the
code in pack.c which was a problem since I put a call to
git_mutex_init into just pack.c. This commit updates the pack
function for creating a new pack object (i.e. git_packfile_check())
so that it can be used in both places and then makes indexer.c
use the shared initialization routine.
There are also a few minor formatting and warning message fixes.
|
|
c6289186
|
2013-04-15T16:31:04
|
|
Fixes for Windows cas/threading stuff
|
|
e976b56d
|
2013-04-15T14:27:53
|
|
Add git__compare_and_swap and use it
This removes the lock from the repository object and changes the
internals to use the new atomic git__compare_and_swap to update
the _odb, _config, _index, and _refdb variables in a threadsafe
manner.
|
|
53607868
|
2013-04-15T00:09:03
|
|
Further threading fixes
This builds on the earlier thread safety work to make it so that
setting the odb, index, refdb, or config for a repository is done
in a threadsafe manner with minimized locking time. This is done
by adding a lock to the repository object and using it to guard
the assignment of the above listed pointers. The lock is only
held to assign the pointer value.
This also contains some minor fixes to the other work with pack
files to reduce the time that locks are being held to and fix an
apparently memory leak.
|
|
116bbdf0
|
2013-04-16T12:08:21
|
|
clean up tree pointer casting
|
|
3f27127d
|
2013-04-16T11:51:02
|
|
Simplify object table parse functions
This unifies the object parse functions into one signature that
takes an odb_object.
|
|
78606263
|
2013-04-15T00:05:44
|
|
Add callback to git_objects_table
This adds create and free callback to the git_objects_table so
that more of the creation and destruction of objects can be table
driven instead of using switch statements. This also makes the
semantics of certain object creation functions consistent so that
we can make better use of function pointers. This also fixes a
theoretical error case where an object allocation fails and we
end up storing NULL into the cache.
|
|
917f60c5
|
2013-04-12T13:04:08
|
|
Add tests for oidmap and new cache with threading
This adds some basic tests for the oidmap just to make sure that
collisions, etc. are dealt with correctly.
This also adds some tests for the new caching that check if items
are inserted (or not inserted) properly into the cache, and that
the cache can hold up in a multithreaded environment without error.
|
|
24c70804
|
2013-04-12T12:59:38
|
|
Add mutex around mapping and unmapping pack files
When I was writing threading tests for the new cache, the main
error I kept running into was a pack file having it's content
unmapped underneath the running thread. This adds a lock around
the routines that map and unmap the pack data so that threads can
effectively reload the data when they need it.
This also required reworking the error handling paths in a couple
places in the code which I tried to make consistent.
|
|
b12b72ea
|
2013-04-12T12:44:51
|
|
Add range checking around cache opts
Add a git_cache_set_max_object_size method that does more checking
around setting the max object size. Also add a git_cache_size to
read the number of objects currently in the cache. This makes it
easier to write tests.
|
|
badd85a6
|
2013-04-10T17:10:17
|
|
Use git_odb_object_data/_size whereever possible
This uses the odb object accessors so we can change the internals
more easily...
|
|
ee12272d
|
2013-04-05T22:48:39
|
|
Global option setters
|
|
e183e375
|
2013-04-05T22:38:14
|
|
Clear the cache when there are too many items to expire
|
|
e16e2684
|
2013-04-04T02:09:32
|
|
No longer needed
|
|
d9d423e4
|
2013-04-03T23:53:32
|
|
Some stats
|
|
064236ca
|
2013-04-03T23:39:42
|
|
Per-object max size
|
|
cf7850a4
|
2013-04-03T23:09:54
|
|
Duplicated type object
|
|
8842c75f
|
2013-04-03T22:30:07
|
|
What has science done.
|
|
c4e91d45
|
2013-04-03T20:57:30
|
|
Random eviction
|
|
6b90e244
|
2013-04-01T19:53:49
|
|
Per-object filtering
|
|
5df18424
|
2013-04-01T19:38:23
|
|
lol this worked first try wtf
|
|
a92dd316
|
2013-04-22T07:44:52
|
|
Merge pull request #1489 from libgit2/vmg/dupe-odb-backends
Do not allow duplicate ODB backends
|
|
a472f887
|
2013-04-22T07:44:32
|
|
Merge pull request #1493 from carlosmn/remotes
Revamp the refspec handling
|
|
0edad3cc
|
2013-04-22T16:41:56
|
|
Merge branch 'development' into vmg/dupe-odb-backends
Conflicts:
src/odb.c
|
|
4ef2c79c
|
2013-04-22T16:37:40
|
|
odb: Disable inode checks for Win32
|
|
f063a758
|
2013-04-22T04:06:11
|
|
Merge pull request #1485 from libgit2/include-git2-sys
Create include/git2/sys and move backend APIs there
|
|
bfb4facb
|
2013-04-21T15:20:36
|
|
Merge pull request #1495 from jasperla/development
Add missing prototype for p_realpath().
|
|
0d4a5b13
|
2013-04-22T00:13:35
|
|
Add missing prototype for p_realpath().
|
|
21ca0451
|
2013-04-21T12:52:17
|
|
Move git_reference__alloc to include/git2/sys
Create a new include/git2/sys/refs.h and move the reference alloc
functions there. Also fix some documentation issues and some
minor code cleanups.
|
|
4dcd8780
|
2013-04-19T17:17:44
|
|
Move refdb_backend to include/git2/sys
This moves most of the refdb stuff over to the include/git2/sys
directory, with some minor shifts in function organization.
While I was making the necessary updates, I also removed the
trailing whitespace in a few files that I modified just because I
was there and it was bugging me.
|
|
9233b3de
|
2013-04-19T13:17:29
|
|
Move git_commit_create_from_oids into sys/commit.h
Actually this renames git_commit_create_oid to
git_commit_create_from_oids and moves the API declaration to
include/git2/sys/commit.h since it is a dangerous API for general
use (because it doesn't check that the OID list items actually
refer to real objects).
|
|
92550398
|
2013-01-29T09:53:23
|
|
Added git_commit_create_oid
|
|
1384b688
|
2013-04-19T13:00:12
|
|
Move some low-level repo fns to include/git2/sys
|
|
7cc3c920
|
2013-01-29T07:48:36
|
|
Added git_repository_new function
|
|
83cc70d9
|
2013-04-19T12:48:33
|
|
Move odb_backend implementors stuff into git2/sys
This moves some of the odb_backend stuff that is related to the
internals of an odb_backend implementation into include/git2/sys.
Some of the stuff related to streaming I left in include/git2
because it seemed like it would be reasonably needed by a normal
user who wanted to stream objects into and out of the ODB.
Also, I added APIs for traversing the list of backends so that
some of the tests would not need to access ODB internals.
|
|
83041c71
|
2013-04-19T11:52:04
|
|
Move git_config_backend to include/git2/sys
Moving backend implementor objects into include/git2/sys so the
APIs can be isolated from the ones that normal libgit2 users
would be likely to use.
|
|
3a2a511b
|
2013-04-21T05:48:08
|
|
Merge pull request #1494 from nulltoken/fix/mailmap
mailmap: Coalesce some identities
|
|
6b246887
|
2013-04-21T08:59:04
|
|
mailmap: Coalesce some identities
|
|
1be680c4
|
2013-04-20T19:13:47
|
|
refspec: unify the string and parsed data
It used to be separate as an attempt to make the querying easier, but
it didn't work out that way, so put all the data together.
Add git_refspec_string() as well to get the original string, which is
now stored alongside the independent parts.
|
|
bc6374ea
|
2013-04-20T18:49:11
|
|
remote: allow querying for refspecs
Introduce git_remote_{fetch,push}_refspecs() to get a list of refspecs
from the remote and rename the refspec-adding functions to a less
silly name.
Use this instead of the vector index hacks in the tests.
|
|
4330ab26
|
2013-04-20T04:43:28
|
|
remote: handle multiple refspecs
A remote can have a multitude of refspecs. Up to now our git_remote's
have supported a single one for each fetch and push out of simplicity
to get something working.
Let the remotes and internal code know about multiple remotes and get
the tests passing with them.
Instead of setting a refspec, the external users can clear all and add
refspecs. This should be enough for most uses, though we're still
missing a querying function.
|
|
e5a27f03
|
2013-04-20T15:25:39
|
|
config: allow setting multivars when none exist yet
Adding a multivar when there are no variables with that name set
should set the variable instead of failing.
|
|
8f24e65f
|
2013-04-20T16:20:21
|
|
Plug a couple of leaks
|
|
cf97799e
|
2013-04-20T01:50:43
|
|
Merge pull request #1491 from ethomson/backends_dont_refdb
alloc doesn't take a refdb
|
|
4e4eab52
|
2013-04-19T18:19:53
|
|
alloc doesn't take a refdb; git_refdb_free nicely in the tests
|
|
4a38143c
|
2013-04-19T23:55:37
|
|
remote: specify what values direction can mean in git_remote_connect()
This fixes #1487
|
|
a29c6b5f
|
2013-04-19T23:51:18
|
|
odb: Do not allow duplicate on-disk backends
|
|
9d8f97c9
|
2013-04-19T11:18:34
|
|
Merge pull request #1479 from arrbee/iterator-for-directory
Add filesystem iterator variant
|
|
743048f1
|
2013-04-19T10:29:50
|
|
Fix some minor issues
|
|
1af80a67
|
2013-04-18T16:13:52
|
|
Fix workdir iterator leak
When attempting to create a workdir iterator for a bare repo,
don't leak the iterator structure.
|
|
38fd8121
|
2013-04-18T14:48:20
|
|
Fix win64 warnings
|
|
9ea29c8f
|
2013-04-18T14:41:16
|
|
Fix fs iterator test on case sensitive fs
|
|
2aee1aa4
|
2013-04-18T14:35:13
|
|
Fix uninitialized var warnings
|
|
627d5908
|
2013-04-18T14:14:22
|
|
More filesystem iterator tests
Refactors the helper function that builds a directory hierarchy
and then made use of it to try more variations on filesystem
iterator tests.
|
|
fc57471a
|
2013-04-18T14:13:53
|
|
More filesystem iterator cleanup
Renamed the callback functions and made some minor rearrangements
to clean up the flow of some code.
|
|
71f85226
|
2013-04-18T11:11:38
|
|
Make workdir iterator use filesystem iterator
This adds some hooks into the filesystem iterator so that the
workdir iterator can just become a wrapper around it. Then we
remove most of the workdir iterator code and just have it augment
the filesystem iterator with skipping .git entries, updating the
ignore stack, and checking for submodules.
|
|
ff0ddfa4
|
2013-04-17T15:56:31
|
|
Add filesystem iterator variant
This adds a new variant iterator that is a raw filesystem iterator
for scanning directories from a root. There is still more work to
do to blend this with the working directory iterator.
|
|
2b63dbfb
|
2013-04-18T06:01:41
|
|
Merge pull request #1482 from nviennot/error-name-email
Return error for empty name/email
|
|
f90391ea
|
2013-04-18T14:47:54
|
|
treebuilder: don't overwrite the error message
|
|
9e46f676
|
2013-04-18T00:55:20
|
|
Return error for empty name/email
|
|
53cb8757
|
2013-04-17T15:27:53
|
|
Merge pull request #1478 from ethomson/win32_typechange_test
use a longer string for dummy data in test to avoid conflicting w/ index
|
|
8023b83a
|
2013-04-17T17:21:17
|
|
use a longer string for dummy data in test to avoid conflicting w/ index
|
|
437d3666
|
2013-04-18T00:15:08
|
|
repository: Doc fix
|