Commit Graph

3908 Commits

Author SHA1 Message Date
Sven Strickroth
8b4f9b1758 Correctly read xdr compatible %HOME%/.config/git/config config file
This file is not just read if the global config file (%HOME%/.gitconfig)
is not found, however, it is used everytime but with lower priority.

Signed-off-by: Sven Strickroth <email@cs-ware.de>
2012-09-24 18:59:00 +02:00
Sven Strickroth
6605f51d81 Automatically detect msysgit installation path
Do not hardcode the installation path of msysgit, but read installation path from registry.
Also "%PROGRAMFILES%\Git\etc" won't work on x64 systems with 64-bit libgit2, because
msysgit is x86 only and located in "%ProgramFiles(x86)%\Git\etc".

Signed-off-by: Sven Strickroth <email@cs-ware.de>
2012-09-24 18:50:37 +02:00
Sven Strickroth
68e75c3a57 Calculate the Windows user profile directory the same way as msysgit
On most systems %USERPROFILE% is the same as %HOMEDRIVE%\%HOMEPATH%,
however, for windows machines in an AD or domain environment this
might be different and %HOMEDRIVE%\%HOMEPATH% seems to be better.

Signed-off-by: Sven Strickroth <email@cs-ware.de>
2012-09-24 18:06:34 +02:00
Sven Strickroth
aed8f8a101 Honor %HOME% on windows
Use %HOME% before trying to figure out the windows user directory.
Users might set this as they are used on *nix systems.

Signed-off-by: Sven Strickroth <email@cs-ware.de>
2012-09-24 18:02:47 +02:00
Sascha Cunz
8469219e37 Tests: Add test for git_tag_list to check for 'git tag -l "*bar"' 2012-09-23 01:02:07 +02:00
Sascha Cunz
daa70138fc Tests: reindent object/tag/list.c to use tabs 2012-09-23 01:02:07 +02:00
Sascha Cunz
45949b378b Tests::object::tag: also test for a 'foo/*/bar'. 2012-09-23 01:02:07 +02:00
Sascha Cunz
7604ddbf70 Tests: Add 3 tags to resources/testrepo.
Adjusts refs::list test (including the comments)
Adjusts objects::tags::list test
2012-09-23 01:02:07 +02:00
Sascha Cunz
e800bbe80a Tests::Object::Tag: Add a mechanism to test which tags were returned
This patch changes the tag listing test helper to use a struct as input
parameter, which tells what we exactly expect.

As I don't think, we can rely on the fact that every os and every
filesystem will report the tags in the same order, I made this code
independent of the order that the tags are retrieved.
2012-09-23 00:00:55 +02:00
Sascha Cunz
f73f760e66 Tests::Object::Tag: move listing tags tests to an own file 2012-09-22 23:12:03 +02:00
Sascha Cunz
3af06254d0 Tags: teach git_tag_list not to include the 'refs/tags/' prefix
Since quite a while now, git_branch_foreach has learnt to list branches
without the 'refs/heads/' or 'refs/remotes' prefixes.
This patch teaches git_tag_list to do the same for listing tags.
2012-09-22 23:12:03 +02:00
Michael Schubert
d75074f4c0 Fix -Wmaybe-uninitialized warning 2012-09-22 12:29:16 +02:00
Russell Belfer
63f6c82568 Merge pull request #948 from csware/comment-fix
Make clear that git_odb_hashfile does not use filters
2012-09-21 16:20:41 -07:00
Sven Strickroth
f55af775ab Make clear that git_odb_hashfile does not use filters
Signed-off-by: Sven Strickroth <email@cs-ware.de>
2012-09-22 01:16:10 +02:00
Russell Belfer
1a62810053 Make giterr_set_str public
There has been discussion for a while about making some set of
the `giterr_set` type functions part of the public API for code
that is implementing new backends to libgit2.  This makes the
`giterr_set_str()` and `giterr_set_oom()` functions public.
2012-09-21 15:04:39 -07:00
Russell Belfer
0cb24616ee Merge pull request #942 from nulltoken/topic/checkout-notify-skipped
checkout: add notification callback for skipped files
2012-09-21 10:51:42 -07:00
Russell Belfer
73f6da66af Merge pull request #943 from csware/only-close-open-filehandles
git_repository_hashfile: Only close file handle if we have a valid one
2012-09-21 10:42:53 -07:00
nulltoken
9e592583fc checkout: add notification callback for skipped files 2012-09-21 08:08:29 +02:00
Sven Strickroth
b1127a30c7 git_repository_hashfile: Only close file handle if we have a valid one
Otherwise this throws an exception on MFC based systems.

Signed-off-by: Sven Strickroth <email@cs-ware.de>
2012-09-20 22:32:19 +02:00
nulltoken
9ac8b113b1 Fix MSVC amd64 compilation warnings 2012-09-20 14:10:05 +02:00
nulltoken
28abf3dbd2 checkout: prefer mode_t type usage over int 2012-09-20 14:10:04 +02:00
Ben Straub
6340945186 ODB pack: snapshot last_found to avoid race
Also removed unnecessary refresh call and fixed
some indentation.
2012-09-19 04:55:16 -07:00
Ben Straub
78216495b0 Remove mtime checks from ODB packfile backend
Now forcing refresh on a foreach, and on missed full-oid
or short-oid lookups.
2012-09-19 04:41:30 -07:00
Ben Straub
5bb0dc9390 ODB: re-load packfiles on failed lookup
The old method was avoiding re-loading of packfiles by watching the mtime of the
pack directory. This causes the ODB to become stale if the directory and packfile
are written within the same clock millisecond, as when cloning a fairly small
repo.

This method tries to find the object in the cached packs, and forces a refresh when
that fails. This will cause extra stat'ing on a miss, but speeds up the success
case and avoids this race condition.
2012-09-19 04:41:24 -07:00
Philip Kelley
f08c60a518 Minor fixes for ignorecase support 2012-09-17 16:10:42 -04:00
Philip Kelley
ec40b7f99f Support for core.ignorecase 2012-09-17 15:42:41 -04:00
Russell Belfer
411cb017c2 Merge pull request #887 from nulltoken/topic/reset-hard
Checkout, reset and others enhancements
2012-09-17 11:38:33 -07:00
nulltoken
397837197d checkout: Mimic git_diff_options storage of paths 2012-09-17 20:27:28 +02:00
nulltoken
5e4cb4f4da checkout : reduce memory usage when not filtering 2012-09-17 10:48:36 +02:00
nulltoken
44af67a8b6 repository: introduce git_repository_set_head() 2012-09-17 10:48:35 +02:00
nulltoken
4ebe38bd58 repository: introduce git_repository_set_head_detached() 2012-09-17 10:48:35 +02:00
nulltoken
3f4c3072ea repository: introduce git_repository_detach_head() 2012-09-17 10:48:34 +02:00
nulltoken
cc548c7b0f repository: fix documentation typo 2012-09-17 10:48:33 +02:00
nulltoken
f1ad25f6df repository: separate head related tests 2012-09-17 10:48:32 +02:00
nulltoken
10df95c3ca checkout: add test coverage of dirs and subtrees 2012-09-17 10:48:31 +02:00
nulltoken
5af61863dd checkout: drop git_checkout_reference() 2012-09-17 10:48:30 +02:00
nulltoken
c214fa1caf checkout: segregate checkout strategies 2012-09-17 10:48:30 +02:00
nulltoken
020cda99c2 checkout: separate tree from index related tests 2012-09-17 10:48:29 +02:00
nulltoken
ee8bb8ba64 reset: add support for GIT_RESET_HARD mode 2012-09-17 10:48:28 +02:00
nulltoken
e93af30411 checkout: introduce git_checkout_index() 2012-09-17 10:48:27 +02:00
nulltoken
3aa443a951 checkout: introduce git_checkout_tree() 2012-09-17 10:48:26 +02:00
Carlos Martín Nieto
e8776d30f7 odb: don't overflow the link path buffer
Allocate a buffer large enough to store the path plus the terminator
instead of letting readlink write beyond the end.
2012-09-16 00:10:07 +02:00
Vicent Martí
1e90ae77c4 Merge pull request #860 from schu/thread-safety
odb_pack: make sure to search all backends
2012-09-14 13:45:29 -07:00
Michael Schubert
3d7617e49e odb_pack: fix race condition
last_found is the last packfile a wanted object was found in. Since
last_found is shared among all searching threads, it might changes while
we're searching. As suggested by @arrbee, put a copy on the stack to fix
the race condition.
2012-09-14 22:35:10 +02:00
Vicent Martí
70341b0963 Merge pull request #937 from nulltoken/fix/issue_936
refs: prevent locked refs from being enumerated
2012-09-14 13:33:49 -07:00
nulltoken
c2948c7754 refs: prevent locked refs from being enumerated
Fix #936
2012-09-14 21:56:14 +02:00
Carlos Martín Nieto
b200a813c0 config: fix Unicode BOM detection
Defining the BOM as a string makes the array include the
NUL-terminator, which means that the memcpy is going to check for that
as well and thus never match for a nonempty file.

Define the array as three chars, which makes the size correct.
2012-09-14 20:46:34 +02:00
Russell Belfer
f4ea176fa8 Remove unnecessary include
I don't think clone.c needs in #include dirent.h and it is not
portable, so let's just get rid of it.
2012-09-14 10:31:40 -07:00
Russell Belfer
38760efb37 Merge pull request #934 from nulltoken/patch-1
Fix MSVC compilation warnings
2012-09-14 02:04:32 -07:00
nulltoken
7505022397 Fix MSVC compilation warnings 2012-09-14 11:47:43 +03:00