From: Tim Henigan <tim.henigan@gmail.com>
To: git@vger.kernel.org, gitster@pobox.com
Cc: Tim Henigan <tim.henigan@gmail.com>
Subject: [PATCH 4/5 v2] contrib/diffall: eliminate duplicate while loops
Date: Wed, 14 Mar 2012 12:38:05 -0400 [thread overview]
Message-ID: <1331743086-32304-5-git-send-email-tim.henigan@gmail.com> (raw)
In-Reply-To: <1331743086-32304-1-git-send-email-tim.henigan@gmail.com>
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>
---
v2 did not affect this patch.
contrib/diffall/git-diffall | 24 +++++++++---------------
1 file changed, 9 insertions(+), 15 deletions(-)
diff --git a/contrib/diffall/git-diffall b/contrib/diffall/git-diffall
index f981ac1..91a31c8 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
--
1.7.10.rc0
next prev parent reply other threads:[~2012-03-14 16:40 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-14 16:38 [PATCH 0/5 v2] contrib/diffall: improvements Tim Henigan
2012-03-14 16:38 ` [PATCH 1/5 v2] contrib/diffall: comment actual reason for 'cdup' Tim Henigan
2012-03-14 16:38 ` [PATCH 2/5 v2] contrib/diffall: create tmp dirs without mktemp Tim Henigan
2012-03-14 16:38 ` [PATCH 3/5 v2] contrib/diffall: eliminate use of tar Tim Henigan
2012-03-14 16:38 ` Tim Henigan [this message]
2012-03-14 16:38 ` [PATCH 5/5 v2] contrib/diffall: fix cleanup trap on Windows Tim Henigan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1331743086-32304-5-git-send-email-tim.henigan@gmail.com \
--to=tim.henigan@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).