Skip to content

Commit

Permalink
Merge branch 'maint-1.5.1' into maint
Browse files Browse the repository at this point in the history
* maint-1.5.1:
  annotate: make it work from subdirectories.
  git-config: Correct asciidoc documentation for --int/--bool
  t1300: Add tests for git-config --bool --get
  unpack-trees.c: verify_uptodate: remove dead code
  Use PATH_MAX instead of TEMPFILE_PATH_LEN
  branch: fix segfault when resolving an invalid HEAD
  • Loading branch information
Junio C Hamano committed May 21, 2007
2 parents aba170c + 5b6dedd commit 7df6ddf
Show file tree
Hide file tree
Showing 6 changed files with 48 additions and 18 deletions.
17 changes: 9 additions & 8 deletions Documentation/git-config.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,15 +9,15 @@ git-config - Get and set repository or global options
SYNOPSIS
--------
[verse]
'git-config' [--system | --global] [type] name [value [value_regex]]
'git-config' [--system | --global] [type] --add name value
'git-config' [--system | --global] [type] --replace-all name [value [value_regex]]
'git-config' [--system | --global] name [value [value_regex]]
'git-config' [--system | --global] --add name value
'git-config' [--system | --global] --replace-all name [value [value_regex]]
'git-config' [--system | --global] [type] --get name [value_regex]
'git-config' [--system | --global] [type] --get-all name [value_regex]
'git-config' [--system | --global] [type] --unset name [value_regex]
'git-config' [--system | --global] [type] --unset-all name [value_regex]
'git-config' [--system | --global] [type] --rename-section old_name new_name
'git-config' [--system | --global] [type] --remove-section name
'git-config' [--system | --global] --unset name [value_regex]
'git-config' [--system | --global] --unset-all name [value_regex]
'git-config' [--system | --global] --rename-section old_name new_name
'git-config' [--system | --global] --remove-section name
'git-config' [--system | --global] -l | --list

DESCRIPTION
Expand All @@ -36,7 +36,8 @@ prepend a single exclamation mark in front (see EXAMPLES).
The type specifier can be either '--int' or '--bool', which will make
'git-config' ensure that the variable(s) are of the given type and
convert the value to the canonical form (simple decimal number for int,
a "true" or "false" string for bool). If no type specifier is passed,
a "true" or "false" string for bool). Type specifiers currently only
take effect for reading operations. If no type specifier is passed,
no checks or transformations are performed on the value.

This command will fail if:
Expand Down
3 changes: 2 additions & 1 deletion builtin-branch.c
Original file line number Diff line number Diff line change
Expand Up @@ -623,9 +623,10 @@ int cmd_branch(int argc, const char **argv, const char *prefix)
(rename && force_create))
usage(builtin_branch_usage);

head = xstrdup(resolve_ref("HEAD", head_sha1, 0, NULL));
head = resolve_ref("HEAD", head_sha1, 0, NULL);
if (!head)
die("Failed to resolve HEAD as a valid ref.");
head = xstrdup(head);
if (!strcmp(head, "HEAD")) {
detached = 1;
}
Expand Down
6 changes: 2 additions & 4 deletions diff.c
Original file line number Diff line number Diff line change
Expand Up @@ -186,13 +186,11 @@ static const char *external_diff(void)
return external_diff_cmd;
}

#define TEMPFILE_PATH_LEN 50

static struct diff_tempfile {
const char *name; /* filename external diff should read from */
char hex[41];
char mode[10];
char tmp_path[TEMPFILE_PATH_LEN];
char tmp_path[PATH_MAX];
} diff_temp[2];

static int count_lines(const char *data, int size)
Expand Down Expand Up @@ -1561,7 +1559,7 @@ static void prep_temp_blob(struct diff_tempfile *temp,
{
int fd;

fd = git_mkstemp(temp->tmp_path, TEMPFILE_PATH_LEN, ".diff_XXXXXX");
fd = git_mkstemp(temp->tmp_path, PATH_MAX, ".diff_XXXXXX");
if (fd < 0)
die("unable to create temp-file");
if (write_in_full(fd, blob, size) != size)
Expand Down
2 changes: 1 addition & 1 deletion git.c
Original file line number Diff line number Diff line change
Expand Up @@ -225,7 +225,7 @@ static void handle_internal_command(int argc, const char **argv, char **envp)
int option;
} commands[] = {
{ "add", cmd_add, RUN_SETUP | NOT_BARE },
{ "annotate", cmd_annotate, USE_PAGER },
{ "annotate", cmd_annotate, RUN_SETUP | USE_PAGER },
{ "apply", cmd_apply },
{ "archive", cmd_archive },
{ "blame", cmd_blame, RUN_SETUP },
Expand Down
34 changes: 34 additions & 0 deletions t/t1300-repo-config.sh
Original file line number Diff line number Diff line change
Expand Up @@ -436,6 +436,40 @@ test_expect_success numbers '
test z1048576 = "z$m"
'

cat > expect << EOF
true
false
true
false
true
false
true
false
EOF

test_expect_success bool '
git-config bool.true1 01 &&
git-config bool.true2 -1 &&
git-config bool.true3 YeS &&
git-config bool.true4 true &&
git-config bool.false1 000 &&
git-config bool.false2 "" &&
git-config bool.false3 nO &&
git-config bool.false4 FALSE &&
rm -f result &&
for i in 1 2 3 4
do
git-config --bool --get bool.true$i >>result
git-config --bool --get bool.false$i >>result
done &&
cmp expect result'

test_expect_failure 'invalid bool' '
git-config bool.nobool foobar &&
git-config --bool --get bool.nobool'

rm .git/config

git-config quote.leading " test"
Expand Down
4 changes: 0 additions & 4 deletions unpack-trees.c
Original file line number Diff line number Diff line change
Expand Up @@ -414,10 +414,6 @@ static void verify_uptodate(struct cache_entry *ce,
return;
errno = 0;
}
if (o->reset) {
ce->ce_flags |= htons(CE_UPDATE);
return;
}
if (errno == ENOENT)
return;
die("Entry '%s' not uptodate. Cannot merge.", ce->name);
Expand Down

0 comments on commit 7df6ddf

Please sign in to comment.