提交 02376287 编写于 作者: J Junio C Hamano

Merge branch 'jc/combine' into next

* jc/combine:
  stripspace: make sure not to leave an incomplete line.
  git-commit: do not muck with commit message when no_edit is set.
  When showing a commit message, do not lose an incomplete line.
  Retire t5501-old-fetch-and-upload test.
  combine-diff: type fix.
......@@ -506,8 +506,8 @@ static void dump_sline(struct sline *sline, unsigned long cnt, int num_parent)
while (1) {
struct sline *sl = &sline[lno];
int hunk_end;
int rlines;
unsigned long hunk_end;
unsigned long rlines;
while (lno <= cnt && !(sline[lno].flag & mark))
lno++;
if (cnt < lno)
......
......@@ -400,11 +400,11 @@ static int get_one_line(const char *msg, unsigned long len)
while (len--) {
char c = *msg++;
if (!c)
break;
ret++;
if (c == '\n')
break;
if (!c)
return 0;
}
return ret;
}
......
......@@ -537,7 +537,7 @@ t)
;;
esac
if [ -f "$GIT_DIR/MERGE_HEAD" ]; then
if test -f "$GIT_DIR/MERGE_HEAD" && test -z "$no_edit"; then
echo "#"
echo "# It looks like you may be committing a MERGE."
echo "# If this is not correct, please remove the file"
......@@ -605,16 +605,23 @@ else
current=
fi
{
test -z "$only_include_assumed" || echo "$only_include_assumed"
run_status
} >>"$GIT_DIR"/COMMIT_EDITMSG
if test -z "$no_edit"
then
{
test -z "$only_include_assumed" || echo "$only_include_assumed"
run_status
} >>"$GIT_DIR"/COMMIT_EDITMSG
else
# we need to check if there is anything to commit
run_status >/dev/null
fi
if [ "$?" != "0" -a ! -f "$GIT_DIR/MERGE_HEAD" -a -z "$amend" ]
then
rm -f "$GIT_DIR/COMMIT_EDITMSG"
run_status
exit 1
fi
case "$no_edit" in
'')
case "${VISUAL:-$EDITOR},$TERM" in
......
......@@ -6,9 +6,9 @@
* Remove empty lines from the beginning and end.
*
* Turn multiple consecutive empty lines into just one
* empty line.
* empty line. Return true if it is an incomplete line.
*/
static void cleanup(char *line)
static int cleanup(char *line)
{
int len = strlen(line);
......@@ -21,16 +21,19 @@ static void cleanup(char *line)
len--;
line[len] = 0;
} while (len > 1);
return 0;
}
return 1;
}
int main(int argc, char **argv)
{
int empties = -1;
int incomplete = 0;
char line[1024];
while (fgets(line, sizeof(line), stdin)) {
cleanup(line);
incomplete = cleanup(line);
/* Not just an empty line? */
if (line[0] != '\n') {
......@@ -44,5 +47,7 @@ int main(int argc, char **argv)
continue;
empties++;
}
if (incomplete)
putchar('\n');
return 0;
}
#!/bin/sh
#
# Copyright (c) 2005 Johannes Schindelin
#
# Test that the current fetch-pack/upload-pack plays nicely with
# an old counterpart
cd $(dirname $0) || exit 1
: ${SHELL_PATH=/bin/sh}
tmp=`pwd`/.tmp$$
retval=0
if [ -z "$1" ]; then
list="fetch upload"
else
list="$@"
fi
for i in $list; do
case "$i" in
fetch) pgm="old-git-fetch-pack"; replace="$pgm";;
upload) pgm="old-git-upload-pack"; replace="git-fetch-pack --exec=$pgm";;
both) pgm="old-git-upload-pack"; replace="old-git-fetch-pack --exec=$pgm";;
esac
if where=`LANG=C LC_ALL=C which "$pgm" 2>/dev/null` &&
case "$where" in
"no "*) (exit 1) ;;
esac
then
echo "Testing with $pgm"
sed -e "s/git-fetch-pack/$replace/g" \
-e "s/# old fails/warn/" < t5500-fetch-pack.sh > $tmp
"$SHELL_PATH" "$tmp" || retval=$?
rm -f "$tmp"
test $retval != 0 && exit $retval
else
echo "Skipping test for $i, since I cannot find $pgm"
fi
done
exit 0
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册