- 18 Jul, 2013 2 commits
-
-
Switch default calling convention to cdecl
Vicent Martí committed -
git_revparse_ext: should return a NULL reference when the revparse expression doesn't lead to a reference
Ben Straub committed
-
- 17 Jul, 2013 3 commits
-
-
don't include ignored as rename candidates
Vicent Martí committed -
Edward Thomson committed
-
Ben Straub committed
-
- 16 Jul, 2013 2 commits
-
-
Small grammar fix in docs
Ben Straub committed -
Andy Lindeman committed
-
- 15 Jul, 2013 7 commits
-
-
Small fixes
Vicent Martí committed -
Add `git_remote_owner`.
Vicent Martí committed -
Etienne Samson committed
-
Rémi Duraffort committed
-
Rémi Duraffort committed
-
Rémi Duraffort committed
-
Rémi Duraffort committed
-
- 14 Jul, 2013 2 commits
-
-
Fixes return type documentation
Russell Belfer committed -
Andy Lindeman committed
-
- 13 Jul, 2013 5 commits
-
-
Fix #1722
nulltoken committed -
Plug some memory leaks
Vicent Martí committed -
nulltoken committed
-
nulltoken committed
-
header files show up in vs and xcode
Vicent Martí committed
-
- 12 Jul, 2013 1 commit
-
-
Edward Thomson committed
-
- 11 Jul, 2013 5 commits
-
-
preload configuration paths
Vicent Martí committed -
Edward Thomson committed
-
Update git__swap threading primitive
Vicent Martí committed -
Russell Belfer committed
-
This makes git__swap use the __sync_lock_test_and_set primitive with GCC and the InterlockedExchangePointer primitive with MSVC. Previously is used compare_and_swap in a way that was probably unintuitive for most thinking (i.e. it could fail to swap in the value if another thread raced in). Now it will always succeed and the last thread to run in a race will win instead of the first thread. This also fixes up a little confusion between volatile void ** and void * volatile * that came up with the Win32 compiler.
Russell Belfer committed
-
- 10 Jul, 2013 13 commits
-
-
Russell Belfer committed
-
Improve submodules status data caching and compatibility
Vicent Martí committed -
This restores a behavior that was accidentally lost during some diff refactoring where an untracked directory that contains a .git item should be treated as IGNORED, not as UNTRACKED. The submodule code already detects this, but the diff code was not handling the scenario right. This also updates a number of existing tests that were actually exercising the behavior but did not have the right expectations in place. It actually makes the new `test_diff_submodules__diff_ignore_options` test feel much better because the "not-a-submodule" entries are now ignored instead of showing up as untracked items. Fixes #1697
Russell Belfer committed -
Russell Belfer committed
-
Russell Belfer committed
-
This adds correct support for an equivalent to --ignore-submodules in diff, where an actual ignore value can be passed to diff to override the per submodule settings in the configuration. This required tweaking the constants for ignore values so that zero would not be used and could represent an unset option to the diff. This was an opportunity to move the submodule values into include/git2/types.h and to rename the poorly named DEFAULT values for ignore and update constants to RESET instead. Now the GIT_DIFF_IGNORE_SUBMODULES flag is exactly the same as setting the ignore_submodules option to GIT_SUBMODULE_IGNORE_ALL (which is actually a minor change from the old behavior in that submodules will now be treated as UNMODIFIED deltas instead of being left out totally - if you set GIT_DIFF_INCLUDE_UNMODIFIED). This includes tests for the various new settings.
Russell Belfer committed -
Submodules now expose an internal status API that allows diff to get back the OID values from the submodule very easily and also to avoiding caching issues and to override the ignore setting for the submodule.
Russell Belfer committed -
This fixes the way that submodule status is checked to bypass just about all of the caching in the submodule object. Based on the ignore value, it will try to do the minimum work necessary to find the current status of the submodule - but it will actually go to disk to get all of the current values. This also removes the custom refcounting stuff in favor of the common git_refcount style. Right now, it is still for internal purposes only, but it should make it easier to add true submodule refcounting in the future with a public git_submodule_free call that will allow bindings not to worry about the submodule object getting freed from underneath them.
Russell Belfer committed -
This adds a BARE option to git_repository_open_ext which allows a fast open path that still knows how to read gitlinks and to search for the actual .git directory from a subdirectory. `git_repository_open_bare` is still simpler and faster, but having a gitlink aware fast open is very useful for submodules where we want to quickly be able to peek at the HEAD and index data without doing any other meaningful repo operations.
Russell Belfer committed -
Russell Belfer committed
-
This is probably not the final form of this change, but this is a preliminary version of checking a timestamp to see if the cached working directory HEAD OID matches the current. Right now, this uses the timestamp on the index and is, like most of our timestamp checking, subject to having only second accuracy.
Russell Belfer committed -
Russell Belfer committed
-
The submodules code caches data about submodules in a way that can cause problems. This adds some tests that try making various modifications to the state of a submodule to see where we can catch out problems in the submodule caching. Right now, I've put in an extra git_submodule_reload_all so that the test will pass, but with that commented out, the test fails. I'm working on fixing the broken version of the test at which point I'll commit the fix and delete the extra reload that makes the test pass.
Russell Belfer committed
-