diff options
author | Alex Riesen <raa.lkml@gmail.com> | 2007-03-25 01:56:13 +0100 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2007-03-24 23:01:36 -0700 |
commit | 06aff47b225506c4603a6f5ec5b4b16aa6a9d7ba (patch) | |
tree | bef4b0af1de7ecdc5f8b5b374be4b86e4f654484 /git-rebase.sh | |
parent | 2a18c266d04273be05ed29c589a5c29b8e68134d (diff) | |
download | git-06aff47b225506c4603a6f5ec5b4b16aa6a9d7ba.tar.gz |
Use diff* with --exit-code in git-am, git-rebase and git-merge-ours
This simplifies the shell code, reduces its memory footprint, and
speeds things up. The performance improvements should be noticable
when git-rebase works on big commits.
Signed-off-by: Alex Riesen <raa.lkml@gmail.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'git-rebase.sh')
-rwxr-xr-x | git-rebase.sh | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/git-rebase.sh b/git-rebase.sh index aadd580f8d..1d96f32685 100755 --- a/git-rebase.sh +++ b/git-rebase.sh @@ -59,7 +59,7 @@ continue_merge () { die "$RESOLVEMSG" fi - if test -n "`git-diff-index HEAD`" + if ! git-diff-index --quiet HEAD then if ! git-commit -C "`cat $dotest/current`" then @@ -124,13 +124,11 @@ while case "$#" in 0) break ;; esac do case "$1" in --continue) - diff=$(git-diff-files) - case "$diff" in - ?*) echo "You must edit all merge conflicts and then" + git-diff-files --quiet || { + echo "You must edit all merge conflicts and then" echo "mark them as resolved using git update-index" exit 1 - ;; - esac + } if test -d "$dotest" then prev_head="`cat $dotest/prev_head`" |