Merge branch 'maint-1.5.1' into maint
* maint-1.5.1: git-status: respect core.excludesFile SubmittingPatches: mention older C compiler compatibility git-daemon: don't ignore pid-file write failure
This commit is contained in:
commit
f95c6780c2
@ -65,6 +65,19 @@ in templates/hooks--pre-commit. To help ensure this does not happen,
|
||||
run git diff --check on your changes before you commit.
|
||||
|
||||
|
||||
(1a) Try to be nice to older C compilers
|
||||
|
||||
We try to support wide range of C compilers to compile
|
||||
git with. That means that you should not use C99 initializers, even
|
||||
if a lot of compilers grok it.
|
||||
|
||||
Also, variables have to be declared at the beginning of the block
|
||||
(you can check this with gcc, using the -Wdeclaration-after-statement
|
||||
option).
|
||||
|
||||
Another thing: NULL pointers shall be written as NULL, not as 0.
|
||||
|
||||
|
||||
(2) Generate your patch using git tools out of your commits.
|
||||
|
||||
git based diff tools (git, Cogito, and StGIT included) generate
|
||||
|
@ -263,6 +263,11 @@ You probably do not need to adjust this value.
|
||||
+
|
||||
Common unit suffixes of 'k', 'm', or 'g' are supported.
|
||||
|
||||
core.excludeFile::
|
||||
In addition to '.gitignore' (per-directory) and
|
||||
'.git/info/exclude', git looks into this file for patterns
|
||||
of files which are not meant to be tracked.
|
||||
|
||||
alias.*::
|
||||
Command aliases for the gitlink:git[1] command wrapper - e.g.
|
||||
after defining "alias.last = cat-file commit HEAD", the invocation
|
||||
|
@ -42,6 +42,11 @@ mean the same thing and the latter is kept for backward
|
||||
compatibility) and `color.status.<slot>` configuration variables
|
||||
to colorize its output.
|
||||
|
||||
As for gitlink:git-add[1], the configuration variable
|
||||
'core.excludesfile' can indicate a path to a file containing patterns
|
||||
of file names to exclude, in addition to patterns given in
|
||||
'info/exclude' and '.gitignore'.
|
||||
|
||||
|
||||
Author
|
||||
------
|
||||
|
4
daemon.c
4
daemon.c
@ -970,8 +970,8 @@ static void store_pid(const char *path)
|
||||
FILE *f = fopen(path, "w");
|
||||
if (!f)
|
||||
die("cannot open pid file %s: %s", path, strerror(errno));
|
||||
fprintf(f, "%d\n", getpid());
|
||||
fclose(f);
|
||||
if (fprintf(f, "%d\n", getpid()) < 0 || fclose(f) != 0)
|
||||
die("failed to write pid file %s: %s", path, strerror(errno));
|
||||
}
|
||||
|
||||
static int serve(char *listen_addr, int listen_port, struct passwd *pass, gid_t gid)
|
||||
|
@ -79,4 +79,24 @@ test_expect_success \
|
||||
>output &&
|
||||
git diff expect output'
|
||||
|
||||
cat > excludes-file << EOF
|
||||
*.[1-8]
|
||||
e*
|
||||
EOF
|
||||
|
||||
git-config core.excludesFile excludes-file
|
||||
|
||||
git-runstatus | grep "^# " > output
|
||||
|
||||
cat > expect << EOF
|
||||
# .gitignore
|
||||
# a.6
|
||||
# one/
|
||||
# output
|
||||
# three/
|
||||
EOF
|
||||
|
||||
test_expect_success 'git-status honours core.excludesfile' \
|
||||
'diff -u expect output'
|
||||
|
||||
test_done
|
||||
|
@ -22,6 +22,7 @@ static const char use_add_rm_msg[] =
|
||||
"use \"git add/rm <file>...\" to update what will be committed";
|
||||
static const char use_add_to_include_msg[] =
|
||||
"use \"git add <file>...\" to include in what will be committed";
|
||||
static const char *excludes_file;
|
||||
|
||||
static int parse_status_slot(const char *var, int offset)
|
||||
{
|
||||
@ -259,6 +260,8 @@ static void wt_status_print_untracked(struct wt_status *s)
|
||||
x = git_path("info/exclude");
|
||||
if (file_exists(x))
|
||||
add_excludes_from_file(&dir, x);
|
||||
if (excludes_file && file_exists(excludes_file))
|
||||
add_excludes_from_file(&dir, excludes_file);
|
||||
|
||||
read_directory(&dir, ".", "", 0, NULL);
|
||||
for(i = 0; i < dir.nr; i++) {
|
||||
@ -356,5 +359,11 @@ int git_status_config(const char *k, const char *v)
|
||||
int slot = parse_status_slot(k, 13);
|
||||
color_parse(v, k, wt_status_colors[slot]);
|
||||
}
|
||||
if (!strcmp(k, "core.excludesfile")) {
|
||||
if (!v)
|
||||
die("core.excludesfile without value");
|
||||
excludes_file = xstrdup(v);
|
||||
return 0;
|
||||
}
|
||||
return git_default_config(k, v);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user