diff options
author | Tim Henigan <tim.henigan@gmail.com> | 2012-03-14 12:38:05 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-03-14 15:22:08 -0700 |
commit | 97549084f660c43fe4b6dc34bf60afef4948b432 (patch) | |
tree | 756bc5217fd60c5cb0fcba2d3fefc62268851d23 /contrib/diffall/git-diffall | |
parent | contrib/diffall: eliminate use of tar (diff) | |
download | tgif-97549084f660c43fe4b6dc34bf60afef4948b432.tar.xz |
contrib/diffall: eliminate duplicate while loops
There were 3 instances of a 'while read; do' that used identical logic
to populate '/tmp/right_dir'. This commit groups them into a single loop.
Signed-off-by: Tim Henigan <tim.henigan@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'contrib/diffall/git-diffall')
-rwxr-xr-x | contrib/diffall/git-diffall | 24 |
1 files changed, 9 insertions, 15 deletions
diff --git a/contrib/diffall/git-diffall b/contrib/diffall/git-diffall index f981ac1bd3..91a31c8780 100755 --- a/contrib/diffall/git-diffall +++ b/contrib/diffall/git-diffall @@ -179,38 +179,32 @@ fi mkdir -p "$tmp/$left_dir" "$tmp/$right_dir" # Populate the tmp/right_dir directory with the files to be compared -if test -n "$right" -then - while read name - do +while read name +do + if test -n "$right" + then ls_list=$(git ls-tree $right "$name") if test -n "$ls_list" then mkdir -p "$tmp/$right_dir/$(dirname "$name")" git show "$right":"$name" >"$tmp/$right_dir/$name" || true fi - done < "$tmp/filelist" -elif test -n "$compare_staged" -then - while read name - do + elif test -n "$compare_staged" + then ls_list=$(git ls-files -- "$name") if test -n "$ls_list" then mkdir -p "$tmp/$right_dir/$(dirname "$name")" git show :"$name" >"$tmp/$right_dir/$name" fi - done < "$tmp/filelist" -else - while read name - do + else if test -e "$name" then mkdir -p "$tmp/$right_dir/$(dirname "$name")" cp "$name" "$tmp/$right_dir/$name" fi - done < "$tmp/filelist" -fi + fi +done < "$tmp/filelist" # Populate the tmp/left_dir directory with the files to be compared while read name |