login
Header Space

 
 

[PATCH] Replace instances of export VAR=VAL with VAR=VAL; export VAR

Score:
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Wincent Colaiuta <win@...>
Cc: Junio C Hamano <gitster@...>, Johannes Sixt <j.sixt@...>, Benoit Sigoure <tsuna@...>, Git Mailing List <git@...>
Date: Wednesday, November 28, 2007 - 9:57 am

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, Wincent Colaiuta wrote:

	> I'm still a little concerned that nobody commented when I 
	> pointed out that export VAR=VAL is used elsewhere in Git, 
	> especially in git-clone.sh, which is very commonly-used 
	> porcelain. Is it a problem?

	How's that for a comment?

 git-clone.sh         |    2 +-
 git-filter-branch.sh |   20 ++++++++++++--------
 git-quiltimport.sh   |   10 ++++++----
 3 files changed, 19 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..3afc945 100755
--- a/git-filter-branch.sh
+++ b/git-filter-branch.sh
@@ -66,17 +66,17 @@ set_ident () {
 			h
 			s/^'$lid' \([^<]*\) <[^>]*> .*$/\1/
 			s/'\''/'\''\'\'\''/g
-			s/.*/export GIT_'$uid'_NAME='\''&'\''/p
+			s/.*/GIT_'$uid'_NAME='\''&'\''\nexport GIT_'$uid'_NAME/p
 
 			g
 			s/^'$lid' [^<]* <\([^>]*\)> .*$/\1/
 			s/'\''/'\''\'\'\''/g
-			s/.*/export GIT_'$uid'_EMAIL='\''&'\''/p
+			s/.*/GIT_'$uid'_EMAIL='\''&'\''\nexport GIT_'$uid'_EMAIL/p
 
 			g
 			s/^'$lid' [^<]* <[^>]*> \(.*\)$/\1/
 			s/'\''/'\''\'\'\''/g
-			s/.*/export GIT_'$uid'_DATE='\''&'\''/p
+			s/.*/GIT_'$uid'_DATE='\''&'\''\nexport GIT_'$uid'_DATE/p
 
 			q
 		}
@@ -84,7 +84,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 +206,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 +232,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 +269,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 +404,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.2064.g4e322

-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Rebase/cherry-picking idea, Wincent Colaiuta, (Mon Nov 26, 5:02 am)
Re: Rebase/cherry-picking idea, Benoit Sigoure, (Mon Nov 26, 5:32 am)
Re: Rebase/cherry-picking idea, Johannes Schindelin, (Mon Nov 26, 9:26 am)
Re: Rebase/cherry-picking idea, Wincent Colaiuta, (Mon Nov 26, 7:27 am)
Re: Rebase/cherry-picking idea, Wincent Colaiuta, (Mon Nov 26, 8:34 am)
Re: Rebase/cherry-picking idea, Johannes Sixt, (Mon Nov 26, 8:51 am)
Re: Rebase/cherry-picking idea, Junio C Hamano, (Mon Nov 26, 1:26 pm)
Re: Rebase/cherry-picking idea, Shawn O. Pearce, (Mon Nov 26, 9:08 pm)
Re: Rebase/cherry-picking idea, Junio C Hamano, (Mon Nov 26, 9:25 pm)
Re: Rebase/cherry-picking idea, Marco Costalba, (Mon Nov 26, 3:12 pm)
Re: Rebase/cherry-picking idea, Wincent Colaiuta, (Mon Nov 26, 9:15 am)
Re: Rebase/cherry-picking idea, Johannes Schindelin, (Mon Nov 26, 9:41 am)
Re: Rebase/cherry-picking idea, Wincent Colaiuta, (Mon Nov 26, 9:55 am)
Re: Rebase/cherry-picking idea, Junio C Hamano, (Wed Nov 28, 4:06 am)
Re: Rebase/cherry-picking idea, Wincent Colaiuta, (Wed Nov 28, 4:52 am)
Re: Rebase/cherry-picking idea, Junio C Hamano, (Wed Nov 28, 5:47 am)
Re: Rebase/cherry-picking idea, Wincent Colaiuta, (Wed Nov 28, 6:04 am)
Re: Rebase/cherry-picking idea, Junio C Hamano, (Wed Nov 28, 2:44 pm)
[PATCH] Replace instances of export VAR=VAL with VAR=VAL; ex..., Johannes Schindelin, (Wed Nov 28, 9:57 am)
Re: [PATCH] Replace instances of export VAR=VAL with VAR=VAL..., Johannes Schindelin, (Wed Nov 28, 10:29 am)
Re: [PATCH] Replace instances of export VAR=VAL with VAR=VAL..., Johannes Schindelin, (Wed Nov 28, 3:03 pm)
Re: [PATCH] Replace instances of export VAR=VAL with VAR=VAL..., Johannes Schindelin, (Wed Nov 28, 7:08 pm)
[PATCH v2] Replace instances of export VAR=VAL with VAR=VAL;..., Johannes Schindelin, (Wed Nov 28, 11:56 am)
Re: [PATCH v2] Replace instances of export VAR=VAL with VAR=..., Johannes Schindelin, (Wed Nov 28, 7:05 pm)
Re: [PATCH] Replace instances of export VAR=VAL with VAR=VAL..., Nguyen Thai Ngoc Duy, (Wed Nov 28, 10:19 am)
Re: [PATCH] Replace instances of export VAR=VAL with VAR=VAL..., Johannes Schindelin, (Wed Nov 28, 10:27 am)
Re: [PATCH] Replace instances of export VAR=VAL with VAR=VAL..., Nguyen Thai Ngoc Duy, (Wed Nov 28, 10:27 am)
Re: [PATCH] Replace instances of export VAR=VAL with VAR=VAL..., Johannes Schindelin, (Wed Nov 28, 10:36 am)
Re: Rebase/cherry-picking idea, Benoit Sigoure, (Mon Nov 26, 8:39 am)
speck-geostationary