From: Johannes Schindelin <Johannes.Schindelin@gmx.de>
To: Johannes Sixt <j.sixt@viscovery.net>
Cc: Wincent Colaiuta <win@wincent.com>,
Junio C Hamano <gitster@pobox.com>,
Benoit Sigoure <tsuna@lrde.epita.fr>,
Git Mailing List <git@vger.kernel.org>
Subject: [PATCH v2] Replace instances of export VAR=VAL with VAR=VAL; export VAR
Date: Wed, 28 Nov 2007 15:56:11 +0000 (GMT) [thread overview]
Message-ID: <Pine.LNX.4.64.0711281552440.27959@racer.site> (raw)
In-Reply-To: <474D7D92.2000106@viscovery.net>
It might be POSIX, but there are shells that do not like the
expression 'export VAR=VAL'. To be on the safe side, rewrite them
into 'VAR=VAL' and 'export VAR'.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
---
On Wed, 28 Nov 2007, Johannes Sixt wrote:
> Johannes Schindelin schrieb:
> >
> > On Wed, 28 Nov 2007, Johannes Sixt wrote:
> >
> > > Johannes Schindelin schrieb:
> > > > - s/.*/export GIT_'$uid'_NAME='\''&'\''/p
> > > > + s/.*/GIT_'$uid'_NAME='\''&'\''\nexport
> > > > GIT_'$uid'_NAME/p
> > >
> > > Recently there was a report that \n in the substitution side
> > > of s/// is not supported by all seds :-(
> >
> > Okay, how about replacing the line with
> >
> > + s/.*/GIT_'$uid'_NAME='\''&'\''\
> > +export GIT_'$uid'_NAME/p
> >
> > Hmm? (It works here.)
>
> This looks good. The other case I'm refering to was also solved
> in this way.
Done.
git-clone.sh | 2 +-
git-filter-branch.sh | 23 +++++++++++++++--------
git-quiltimport.sh | 10 ++++++----
3 files changed, 22 insertions(+), 13 deletions(-)
diff --git a/git-clone.sh b/git-clone.sh
index 24ad179..ecf9d89 100755
--- a/git-clone.sh
+++ b/git-clone.sh
@@ -229,7 +229,7 @@ cleanup() {
trap cleanup 0
mkdir -p "$dir" && D=$(cd "$dir" && pwd) || usage
test -n "$GIT_WORK_TREE" && mkdir -p "$GIT_WORK_TREE" &&
-W=$(cd "$GIT_WORK_TREE" && pwd) && export GIT_WORK_TREE="$W"
+W=$(cd "$GIT_WORK_TREE" && pwd) && GIT_WORK_TREE="$W" && export GIT_WORK_TREE
if test yes = "$bare" || test -n "$GIT_WORK_TREE"; then
GIT_DIR="$D"
else
diff --git a/git-filter-branch.sh b/git-filter-branch.sh
index 19cab5a..074b2c0 100755
--- a/git-filter-branch.sh
+++ b/git-filter-branch.sh
@@ -66,17 +66,20 @@ set_ident () {
h
s/^'$lid' \([^<]*\) <[^>]*> .*$/\1/
s/'\''/'\''\'\'\''/g
- s/.*/export GIT_'$uid'_NAME='\''&'\''/p
+ s/.*/GIT_'$uid'_NAME='\''&'\''\
+export GIT_'$uid'_NAME/p
g
s/^'$lid' [^<]* <\([^>]*\)> .*$/\1/
s/'\''/'\''\'\'\''/g
- s/.*/export GIT_'$uid'_EMAIL='\''&'\''/p
+ s/.*/GIT_'$uid'_EMAIL='\''&'\''\
+export GIT_'$uid'_EMAIL/p
g
s/^'$lid' [^<]* <[^>]*> \(.*\)$/\1/
s/'\''/'\''\'\'\''/g
- s/.*/export GIT_'$uid'_DATE='\''&'\''/p
+ s/.*/GIT_'$uid'_DATE='\''&'\''\
+export GIT_'$uid'_DATE/p
q
}
@@ -84,7 +87,7 @@ set_ident () {
LANG=C LC_ALL=C sed -ne "$pick_id_script"
# Ensure non-empty id name.
- echo "[ -n \"\$GIT_${uid}_NAME\" ] || export GIT_${uid}_NAME=\"\${GIT_${uid}_EMAIL%%@*}\""
+ echo "case \"\$GIT_${uid}_NAME\" in \"\") GIT_${uid}_NAME=\"\${GIT_${uid}_EMAIL%%@*}\" && export GIT_${uid}_NAME;; esac"
}
USAGE="[--env-filter <command>] [--tree-filter <command>] \
@@ -206,7 +209,8 @@ done < "$tempdir"/backup-refs
ORIG_GIT_DIR="$GIT_DIR"
ORIG_GIT_WORK_TREE="$GIT_WORK_TREE"
ORIG_GIT_INDEX_FILE="$GIT_INDEX_FILE"
-export GIT_DIR GIT_WORK_TREE=.
+GIT_WORK_TREE=.
+export GIT_DIR GIT_WORK_TREE
# These refs should be updated if their heads were rewritten
@@ -231,7 +235,8 @@ done > "$tempdir"/heads
test -s "$tempdir"/heads ||
die "Which ref do you want to rewrite?"
-export GIT_INDEX_FILE="$(pwd)/../index"
+GIT_INDEX_FILE="$(pwd)/../index"
+export GIT_INDEX_FILE
git read-tree || die "Could not seed the index"
ret=0
@@ -267,7 +272,8 @@ while read commit parents; do
git read-tree -i -m $commit:"$filter_subdir"
esac || die "Could not initialize the index"
- export GIT_COMMIT=$commit
+ GIT_COMMIT=$commit
+ export GIT_COMMIT
git cat-file commit "$commit" >../commit ||
die "Cannot read commit $commit"
@@ -401,7 +407,8 @@ if [ "$filter_tag_name" ]; then
[ -f "../map/$sha1" ] || continue
new_sha1="$(cat "../map/$sha1")"
- export GIT_COMMIT="$sha1"
+ GIT_COMMIT="$sha1"
+ export GIT_COMMIT
new_ref="$(echo "$ref" | eval "$filter_tag_name")" ||
die "tag name filter failed: $filter_tag_name"
diff --git a/git-quiltimport.sh b/git-quiltimport.sh
index 6b0c4d2..233e5ea 100755
--- a/git-quiltimport.sh
+++ b/git-quiltimport.sh
@@ -77,8 +77,9 @@ for patch_name in $(grep -v '^#' < "$QUILT_PATCHES/series" ); do
}
# Parse the author information
- export GIT_AUTHOR_NAME=$(sed -ne 's/Author: //p' "$tmp_info")
- export GIT_AUTHOR_EMAIL=$(sed -ne 's/Email: //p' "$tmp_info")
+ GIT_AUTHOR_NAME=$(sed -ne 's/Author: //p' "$tmp_info")
+ GIT_AUTHOR_EMAIL=$(sed -ne 's/Email: //p' "$tmp_info")
+ export GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL
while test -z "$GIT_AUTHOR_EMAIL" && test -z "$GIT_AUTHOR_NAME" ; do
if [ -n "$quilt_author" ] ; then
GIT_AUTHOR_NAME="$quilt_author_name";
@@ -104,8 +105,9 @@ for patch_name in $(grep -v '^#' < "$QUILT_PATCHES/series" ); do
GIT_AUTHOR_EMAIL="$patch_author_email"
fi
done
- export GIT_AUTHOR_DATE=$(sed -ne 's/Date: //p' "$tmp_info")
- export SUBJECT=$(sed -ne 's/Subject: //p' "$tmp_info")
+ GIT_AUTHOR_DATE=$(sed -ne 's/Date: //p' "$tmp_info")
+ SUBJECT=$(sed -ne 's/Subject: //p' "$tmp_info")
+ export GIT_AUTHOR_DATE SUBJECT
if [ -z "$SUBJECT" ] ; then
SUBJECT=$(echo $patch_name | sed -e 's/.patch$//')
fi
--
1.5.3.6.2065.gd47ac
next prev parent reply other threads:[~2007-11-28 15:56 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-26 9:02 Rebase/cherry-picking idea Wincent Colaiuta
2007-11-26 9:32 ` Benoit Sigoure
2007-11-26 11:27 ` Wincent Colaiuta
2007-11-26 12:34 ` Wincent Colaiuta
2007-11-26 12:39 ` Benoit Sigoure
2007-11-26 12:51 ` Johannes Sixt
2007-11-26 13:15 ` Wincent Colaiuta
2007-11-26 13:41 ` Johannes Schindelin
2007-11-26 13:55 ` Wincent Colaiuta
2007-11-28 8:06 ` Junio C Hamano
2007-11-28 8:52 ` Wincent Colaiuta
2007-11-28 9:47 ` Junio C Hamano
2007-11-28 10:04 ` Wincent Colaiuta
2007-11-28 13:57 ` [PATCH] Replace instances of export VAR=VAL with VAR=VAL; export VAR Johannes Schindelin
2007-11-28 14:09 ` David Kastrup
2007-11-28 14:19 ` Nguyen Thai Ngoc Duy
2007-11-28 14:24 ` David Kastrup
2007-11-28 14:27 ` Nguyen Thai Ngoc Duy
2007-11-28 14:36 ` Johannes Schindelin
2007-11-28 14:27 ` Johannes Schindelin
2007-11-28 14:21 ` Johannes Sixt
2007-11-28 14:29 ` Johannes Schindelin
2007-11-28 14:39 ` Johannes Sixt
2007-11-28 15:56 ` Johannes Schindelin [this message]
2007-11-28 16:03 ` [PATCH v2] " David Kastrup
2007-11-28 22:46 ` Junio C Hamano
2007-11-28 22:53 ` David Kastrup
2007-11-28 23:02 ` Jeff King
2007-11-28 23:10 ` David Kastrup
2007-11-29 7:39 ` Johannes Sixt
2007-11-29 10:17 ` David Kastrup
2007-11-28 23:05 ` Johannes Schindelin
2007-11-28 18:49 ` [PATCH] " Junio C Hamano
2007-11-28 19:03 ` Johannes Schindelin
2007-11-28 22:48 ` Junio C Hamano
2007-11-28 23:08 ` Johannes Schindelin
2007-11-28 14:41 ` David Kastrup
2007-11-28 18:44 ` Rebase/cherry-picking idea Junio C Hamano
2007-11-26 17:26 ` Junio C Hamano
2007-11-26 19:12 ` Marco Costalba
2007-11-27 1:08 ` Shawn O. Pearce
2007-11-27 1:25 ` Junio C Hamano
2007-11-26 13:26 ` Johannes Schindelin
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=Pine.LNX.4.64.0711281552440.27959@racer.site \
--to=johannes.schindelin@gmx.de \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=j.sixt@viscovery.net \
--cc=tsuna@lrde.epita.fr \
--cc=win@wincent.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).