Commit Graph

2724 Commits

Author SHA1 Message Date
Vicent Martí
db37d3de79 Merge pull request #1299 from csware/support_local_msysgit_install
Support local msysgit installations
2013-02-01 15:37:45 -08:00
Jameson Miller
91f13a18d5 Try harder to find global config file 2013-02-01 14:23:26 -05:00
Ben Straub
329eee3387 Merge pull request #1286 from lznuaa/master
Fix clone fail if repo head detached
2013-02-01 09:41:50 -08:00
Sven Strickroth
45792c923b Stick to coding style: Move up braces
Signed-off-by: Sven Strickroth <email@cs-ware.de>
2013-02-01 10:32:05 +01:00
Carlos Martín Nieto
e5ef0f1814 refs: handle ALLOW_ONELEVEL normalization with leading slash
A leading slash confuses the name normalization code when the flags
include ALLOW_ONELEVEL. Catch this case in particular to avoid
triggering an assertion in the uppercase check which expects us not to
pass it an empty string.

The existing tests don't catch this as they simply use the NORMAL
flag.

This fixes #1300.
2013-01-31 20:23:30 +01:00
Sven Strickroth
c55378fce5 Detect msysgit installation of users without admin rights
Signed-off-by: Sven Strickroth <email@cs-ware.de>
2013-01-31 19:47:35 +01:00
Sven Strickroth
ec56af08a9 Refactored: Move msysgit registry detection to it's own function
Signed-off-by: Sven Strickroth <email@cs-ware.de>
2013-01-31 19:46:07 +01:00
Russell Belfer
f1e2735c74 Add helper for diff line stats
This adds a `git_diff_patch_line_stats()` API that gets the total
number of adds, deletes, and context lines in a patch.  This will
make it a little easier to emulate `git diff --stat` and the like.

Right now, this relies on generating the `git_diff_patch` object,
which is a pretty heavyweight way to get stat information.  At
some future point, it would probably be nice to be able to get
this information without allocating the entire `git_diff_patch`,
but that's a much larger project.
2013-01-30 11:10:39 -08:00
Vicent Martí
d204121657 Merge pull request #1296 from arrbee/stricter-config-name-checks
Stricter config entry name validation
2013-01-29 13:57:53 -08:00
Vicent Martí
ea53203c38 Merge pull request #1295 from carlosmn/obsd
Fix p_realpath on OpenBSD
2013-01-29 13:54:30 -08:00
Russell Belfer
4657fc1cab Merge pull request #1285 from phkelley/vector
Vector improvements and their fallout
2013-01-29 13:54:08 -08:00
Philip Kelley
590365db54 Now with no multiply 2013-01-29 16:49:12 -05:00
Russell Belfer
1e7799e8b8 Implement config key validation rules
This is a new implementation of core git's config key checking
rules that prevents non-alphanumeric characters (and '-') for
the top-level section and key names inside of config files.

This also validates the target section name when renaming
sections.
2013-01-29 12:15:18 -08:00
Carlos Martín Nieto
67fcac567b Fix p_realpath on OpenBSD
OpenBSD's realpath(3) doesn't require the last part of the path to
exist. Override p_realpath in this OS to bring it in line with the
library's assumptions.
2013-01-29 18:46:17 +01:00
John Wiegley
5fb9820664 Added git_treebuilder_entrycount
Conflicts:
	src/tree.c
2013-01-28 16:35:43 -06:00
Philip Kelley
11d9f6b304 Vector improvements and their fallout 2013-01-27 14:17:07 -05:00
Frank Li
28c3beaa59 Fix fail clone local repo which head detatched
Set head detach if can't found branch after download

Signed-off-by: Frank Li <lznuaa@gmail.com>
2013-01-27 15:02:06 +08:00
Frank Li
88183c1988 Fix fail clone local repository because can't found object
avoid use object which is already free

Signed-off-by: Frank Li <lznuaa@gmail.com>
2013-01-27 13:36:37 +08:00
Philip Kelley
aa3bf89df2 Fix a mutex leak in pack.c 2013-01-26 15:12:53 -05:00
Philip Kelley
cfc39f5078 Fix 3 memory leaks 2013-01-25 22:43:52 -05:00
Vicent Martí
ae386101d2 Merge pull request #1279 from carlosmn/config-trailing-backslash
config: support trailing backslashes
2013-01-25 12:02:21 -08:00
Carlos Martín Nieto
9f35754a0e config: support trailing backslashes
Check whether the backslash at the end of the line is being escaped or
not so as not to consider it a continuation marker when it's e.g. a
Windows-style path.
2013-01-25 13:29:28 +01:00
nulltoken
c5193e3c20 clone: Prevent segfault upon faulted remote creation 2013-01-25 12:26:09 +01:00
Sebastian Bauer
c253056d24 Added git_branch_name().
This is a convenience function to get the branch name of a given
ref. The returned branch name is compatible with the name that can
be supplied e.g. to git_branch_lookup(). That is, the prefixes
"refs/heads" or "refs/remotes" are omitted.

Also added a new test for testing the new function.
2013-01-25 05:24:21 +01:00
Scott J. Goldman
5425097f03 index: Speed up loading a tree into the index
The index is empty; repeated tree entries cannot collide.

cc github/gitrpc#83
2013-01-24 18:55:39 -08:00
Philip Kelley
3fbd7485d8 Merge pull request #1250 from jamill/push_update_tips
Update remote tips on push
2013-01-24 11:03:11 -08:00
Vicent Marti
a0f777c87f opts: Add getters too 2013-01-23 23:44:34 +01:00
Vicent Martí
b101fbf9a4 Merge pull request #1271 from libgit2/global-settings
Global options setter
2013-01-22 18:55:56 -08:00
Vicent Marti
59853eff99 Global options setter 2013-01-23 02:58:58 +01:00
Russell Belfer
8958fad770 Merge pull request #1270 from libgit2/packed-peeled-objects-fix
Allow peeled references without trailing newline at end of file
2013-01-22 16:02:43 -08:00
Scott J. Goldman
cb35094be3 Allow peeled references without trailing newline at end of file
Also ammends one of the tag tests to make sure it's working.
2013-01-22 15:49:51 -08:00
Russell Belfer
cce548e3e0 Fix case sensitivity bug with tree iterators
With the new code to make tree iterators support ignore_case,
there is a bug in setting the start entry for range bounded
iterators where memcmp was being used instead of strncasecmp.
This fixes that and expands the tree iterator test to cover
the cases that were broken.
2013-01-22 15:28:25 -08:00
Scott J. Goldman
2a707d0e24 Revert "Handle packed peeled objects without trailing newlines"
This reverts commit 28b1cdf3a1.

//cc #1262 #1267
2013-01-22 14:08:50 -08:00
Vicent Martí
148c786cd6 Merge pull request #1268 from phkelley/development
A simple perf optimization in pack-objects.c
2013-01-22 09:20:09 -08:00
Jameson Miller
1d645aabef Update remote tips on push 2013-01-22 10:01:43 -05:00
Philip Kelley
47fc264203 Fix gen_pktline format specifier for Win32 2013-01-22 09:25:15 -05:00
Philip Kelley
f4b86126ee A simple perf optimization in pack-objects.c 2013-01-22 08:30:40 -05:00
Vicent Martí
fad251ae02 Merge pull request #1267 from libgit2/no-newline
Handle packed peeled objects without trailing newlines
2013-01-21 15:09:38 -08:00
Scott J. Goldman
28b1cdf3a1 Handle packed peeled objects without trailing newlines
Fixes #1262
2013-01-21 14:46:28 -08:00
Russell Belfer
965e4e2d31 Parse commit time as uint64_t to avoid overflow
The commit time is already stored as a git_time_t, but we were
parsing is as a uint32_t.  This just switches the parser to use
uint64_t which will handle dates further in the future (and adds
some tests of those future dates).
2013-01-21 13:19:41 -08:00
Carlos Martín Nieto
d47c6aabfe commit: don't include the LF in the header field value
When the encoding header changed to be treated as an additional
header, the EOL pointer started to point to the byte after the LF,
making the git__strndup call copy the LF into the value.

Increase the EOL pointer value after copying the data to keep the rest
of the semantics but avoid copying LF.
2013-01-20 04:20:09 +01:00
Carlos Martín Nieto
7a2cf780d1 Fix compilation on OpenBSD 2013-01-20 01:57:32 +01:00
Philip Kelley
77844988b8 Fix really bad error handling in git_smart__negotiate_fetch 2013-01-18 14:51:46 -05:00
Vicent Martí
ddcb28a41f Merge pull request #1239 from ethomson/index_remove
add an index_remove_bypath that removes conflicts
2013-01-17 16:56:57 -08:00
Vicent Martí
75f49ae49b Merge pull request #1244 from carlosmn/pack-evict
A comparison of eviction algorithms for the delta base cache
2013-01-17 13:45:52 -08:00
Ben Straub
c49fa037cc Merge pull request #1247 from sba1/dont-segfault-if-transport-doesnt-support-push
Don't segfault if transport doesn't support push.
2013-01-17 13:37:32 -08:00
Vicent Martí
5c8901ab80 Merge pull request #1255 from arrbee/fix-signed-commit-header-parsing
Add skipping of unknown commit headers
2013-01-17 13:36:33 -08:00
Russell Belfer
291090a076 Add skipping of unknown commit headers
This moves the check for the "encoding" header into a loop which
is just scanning for non-required headers at the end of a commit
header.  That loop will skip unrecognized lines (including header
continuation lines) until a terminating completely blank line is
found, and only then does it move to reading the commit message.
2013-01-17 13:19:09 -08:00
Edward Thomson
6e959708e5 cache should contain on-disk (filtered) file size 2013-01-17 15:17:32 -06:00
Sebastian Bauer
9bf56c7b1c Don't segfault if transport doesn't support push.
Instead, set an more informative error message.
2013-01-17 20:55:06 +01:00