Vicent Martí
8a497ec9ad
Merge pull request #1531 from libgit2/jk/peeled-refs
...
refdb_fs: do not require peeled packed refs to be tags
2013-05-02 09:21:46 -07:00
Jeff King
a591ed3ea9
refdb_fs: respect PEELING_STANDARD
...
We only set our negative flag for PEELING_FULL; we can fall
back to the lesser PEELING_STANDARD if our ref is in the
refs/tags/ hierarchy.
2013-05-02 12:06:46 -04:00
Vicent Marti
822645f629
refdb_fs: Only strstr the traits line
2013-05-02 17:48:49 +02:00
Vicent Marti
1022db2b68
refdb_fs: Traits are always surrounded by spaces
...
This makes parsing easier! :p
2013-05-02 17:42:09 +02:00
Vicent Marti
f69db390fb
refdb_fs: store "cannot be peeled" flag for packed refs
...
Fixes #1532
2013-05-02 17:39:14 +02:00
Vicent Marti
3bb00f3360
refdb_fs: implement the fully-peeled trait
2013-05-02 17:17:46 +02:00
Jeff King
7edb9071da
refdb_fs: do not require peeled packed refs to be tags
...
Older versions of git would only write peeled entries for
items under refs/tags/. Newer versions will write them for
all refs, and we should be prepared to handle that.
2013-05-02 11:07:20 -04:00
Vicent Martí
d966310cab
Merge pull request #1529 from arrbee/more-packfile-locking
...
More packfile locking
2013-05-02 03:37:28 -07:00
Russell Belfer
8c535f3f68
Protect sha1_entry_pos call with mutex
...
There is an occasional assertion failure in sha1_entry_pos from
pack_entry_find_index when running threaded. Holding the mutex
around the code that grabs the index_map data and processes it
makes this assertion failure go away.
2013-05-02 03:34:56 -07:00
Russell Belfer
81b7dec4ee
Fix some compile warnings and trailing whitespace
2013-05-02 03:06:34 -07:00
Russell Belfer
d82d66c96d
Extra threading tests
...
We need to hammer the packfile open phase harder in the thread
tests, in addition to the cache API.
2013-05-02 03:05:21 -07:00
Russell Belfer
9d2f841a5d
Add extra locking around packfile open
...
We were still seeing a few issues in threaded access to packs.
This adds extra locks around the opening of the mwindow to
avoid a different race.
2013-05-02 03:03:54 -07:00
Russell Belfer
69c50f4c44
Merge pull request #1527 from ethomson/checkout_allow_empty_dirs
...
allow empty dirs to exist when doing checkout
2013-05-01 13:47:00 -07:00
Vicent Marti
8cddf9b83a
refdb: Properly load namespaces
2013-05-01 19:13:32 +02:00
Edward Thomson
0cc7d8df19
allow empty dirs to exist when doing checkout
2013-05-01 09:50:40 -05:00
Vicent Marti
e1807113c4
merge: Warning noise
2013-05-01 15:31:23 +02:00
Vicent Marti
2ba55c1f0d
refdb: Proper namespace root
2013-05-01 15:20:08 +02:00
Vicent Martí
758e50c51e
Merge pull request #1389 from ethomson/merge_trees
...
Merge trees
2013-05-01 06:18:09 -07:00
Vicent Martí
cfcdbc100a
Merge pull request #1523 from libgit2/vmg/namespaces
...
Namespace support
2013-05-01 03:03:17 -07:00
Edward Thomson
75d1c8c664
move NAME and REUC extensions to sys/
2013-04-30 17:33:11 -05:00
Edward Thomson
0462fba538
renames!
2013-04-30 16:01:11 -05:00
Edward Thomson
bec65a5e99
merge!
2013-04-30 15:31:31 -05:00
Vicent Marti
bade51948c
lol namespaces
2013-04-30 21:02:13 +02:00
Vicent Martí
5e2261aca8
Merge pull request #1507 from arrbee/fix-look-inside-untracked-directory
...
Update diff handling of "untracked" directories
2013-04-30 10:29:46 -07:00
Russell Belfer
5fa7e46984
Fix some formatting inconsistency
2013-04-30 04:27:46 -07:00
Russell Belfer
61c00541ac
Update comment for clarity
2013-04-30 04:25:56 -07:00
Russell Belfer
a66c4bc846
More tests for diff untracked directories
...
This includes more tests for various scenarios when diff includes
an untracked directory in the workdir with contents either ignored
or not.
2013-04-30 04:25:56 -07:00
Russell Belfer
e26b14c034
Update diff handling of untracked directories
...
When diff encounters an untracked directory, there was a shortcut
that it took which is not compatible with core git. This makes
the default behavior no longer take that shortcut and instead look
inside the untracked directory to see if there are any untracked
files within it. If there are not, then the directory is treated
as an ignore directory instead of an untracked directory. This
has implications for the git_status APIs.
2013-04-30 04:25:56 -07:00
Russell Belfer
fdb3034e72
Reorganize diff code into functions
...
In preparation for more changes to the internal diff logic, it
seemed wise to split the very large git_diff__from_iterators into
separate functions that handle the four main cases (unmatched old
item, unmatched new item, unmatched new directory, and matched
old and new items). Hopefully this will keep the logic easier to
follow even as more cases have to be added to this code.
2013-04-30 04:25:56 -07:00
Vicent Marti
7dcda3aa37
object: haha
2013-04-30 13:19:02 +02:00
Vicent Marti
0b726701f3
object: Explicitly define helper API methods for all obj types
2013-04-30 13:13:38 +02:00
Vicent Martí
cd2ed9f0cc
Merge pull request #1518 from arrbee/export-oid-comparison
...
Remove most inlines from the public API
2013-04-30 04:02:52 -07:00
Vicent Martí
d76fb20ebc
Merge pull request #1520 from carlosmn/nth-refspec
...
Add refspec list accessors
2013-04-30 03:29:48 -07:00
Vicent Martí
099c1b747a
Merge pull request #1522 from arrbee/repo-open-with-no-config
...
Catch issue in config set with no config file
2013-04-30 03:28:56 -07:00
Russell Belfer
0a1755c045
Catch issue in config set with no config file
...
This prevents a segfault when setting a value in the config of a
repository that doesn't have a config file.
2013-04-30 03:15:45 -07:00
Carlos Martín Nieto
9c5d4b2e80
remote: fix a leak when dwim'ing refspecs
2013-04-30 12:05:16 +02:00
Carlos Martín Nieto
1ffd0806f4
remote: add resfpec list accessors
...
Bring back a way of acessing the git_refspec* from a remote.
Closes #1514
2013-04-30 12:04:59 +02:00
Carlos Martín Nieto
8d39f2a790
refspec: add direction accessor
2013-04-30 10:55:17 +02:00
Russell Belfer
203d5b0e68
Some cleanups
...
Removed useless prototype and renamed object typecast functions
declaration macro.
2013-04-29 18:20:58 -07:00
Russell Belfer
e4af0f0016
Add new src/oid.h
2013-04-29 18:15:43 -07:00
Russell Belfer
d77611022c
Standardize cast versions of git_object accessors
...
This removes the GIT_INLINE versions of the simple git_object
accessors and standardizes them with a helper macro in src/object.h
to build the function bodies.
2013-04-29 14:22:06 -07:00
Russell Belfer
b7f167da29
Make git_oid_cmp public and add git_oid__cmp
2013-04-29 13:52:12 -07:00
Vicent Martí
4157851076
Merge pull request #1511 from carlosmn/refspec-shorthand
...
dwim shorthand refspecs for fetch
2013-04-29 13:30:31 -07:00
Vicent Martí
bb503dbd03
Merge pull request #1516 from ethomson/win32_alternate_nostat
...
don't use uninitialized struct stat in win32
2013-04-29 10:21:03 -07:00
Edward Thomson
c8a4e8a5f6
don't use uninitialized struct stat in win32
2013-04-29 11:14:56 -05:00
Vicent Martí
51a91ce8c6
Merge pull request #1513 from ethomson/cmake
...
cmake 2.6 parser bug workaround
2013-04-29 09:09:27 -07:00
Edward Thomson
ac1d85cf11
cmake 2.6 parser bug workaround
2013-04-29 11:00:05 -05:00
Russell Belfer
aa8f010120
Add git_oid_strcmp and use it for git_oid_streq
...
Add a new git_oid_strcmp that compares a string OID with a hex
oid for sort order, and then reimplement git_oid_streq using it.
This actually should speed up git_oid_streq because it only reads
as far into the string as it needs to, whereas previously it would
convert the whole string into an OID and then use git_oid_cmp.
2013-04-29 08:59:46 -07:00
Russell Belfer
8564a0224a
Fix fragile git_oid_ncmp
...
git_oid_ncmp was making some assumptions about the length of
the data - this shifts the check to the top of the loop so it
will work more robustly, limits the max, and adds some tests
to verify the functionality.
2013-04-29 08:51:24 -07:00
Russell Belfer
0c72248b91
Introduce git_oid_compare, an exported oid cmp
2013-04-29 07:34:13 -07:00