git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] Write .editmsg in GIT_DIR to avoid being in git-status.

From
SBSanti Béjar <sbejar@gmail.com>
Date
Oct 5, 2005, 16:54 UTC
Message-ID
<87achnq4z7.fsf@gmail.com>

It appears in the git-status output during a git-commit if you have something in info/exclude.

Also for .cmitmsg and .cmitchk to make git-commit work in read-only working trees.

Signed-off-by: Santi Béjar <sbejar@gmail.com>
---
 git-commit.sh |   24 ++++++++++++------------
 1 files changed, 12 insertions(+), 12 deletions(-)

applies-to: 9eec9ff9326032bca405a12a265918725edf4ac7 4e61f41c1feed7345fc442747c82b9ea701fb59c

diff --git a/git-commit.sh b/git-commit.sh
--- a/git-commit.sh
+++ b/git-commit.sh
@@ -129,7 +129,7 @@ then
 elif test "$use_commit" != ""
 then
 	git-cat-file commit "$use_commit" | sed -e '1,/^$/d'
-fi | git-stripspace >.editmsg
+fi | git-stripspace >"$GIT_DIR"/.editmsg 
 
 case "$signoff" in
 t)
@@ -139,7 +139,7 @@ t)
 			s/>.*/>/
 			s/^/Signed-off-by: /
 		'
-	} >>.editmsg
+	} >>"$GIT_DIR"/.editmsg
 	;;
 esac
 
@@ -153,7 +153,7 @@ if [ -f "$GIT_DIR/MERGE_HEAD" ]; then
 	echo "#	$GIT_DIR/MERGE_HEAD"
 	echo "# and try again"
 	echo "#"
-fi >>.editmsg
+fi >>"$GIT_DIR"/.editmsg
 
 PARENTS="-p HEAD"
 if GIT_DIR="$GIT_DIR" git-rev-parse --verify HEAD >/dev/null 2>&1
@@ -197,16 +197,16 @@ else
 	fi
 	PARENTS=""
 fi
-git-status >>.editmsg
+git-status >>"$GIT_DIR"/.editmsg
 if [ "$?" != "0" -a ! -f $GIT_DIR/MERGE_HEAD ]
 then
-	rm -f .editmsg
+	rm -f "$GIT_DIR"/.editmsg
 	git-status
 	exit 1
 fi
 case "$no_edit" in
 '')
-	${VISUAL:-${EDITOR:-vi}} .editmsg
+	${VISUAL:-${EDITOR:-vi}} "$GIT_DIR"/.editmsg
 	;;
 esac
 
@@ -214,16 +214,16 @@ case "$verify" in
 t)
 	if test -x "$GIT_DIR"/hooks/commit-msg
 	then
-		"$GIT_DIR"/hooks/commit-msg .editmsg || exit
+		"$GIT_DIR"/hooks/commit-msg "$GIT_DIR"/.editmsg || exit
 	fi
 esac
 
-grep -v '^#' < .editmsg | git-stripspace > .cmitmsg
-grep -v -i '^Signed-off-by' .cmitmsg >.cmitchk
-if test -s .cmitchk
+grep -v '^#' < "$GIT_DIR"/.editmsg | git-stripspace > "$GIT_DIR"/.cmitmsg
+grep -v -i '^Signed-off-by' "$GIT_DIR"/.cmitmsg >"$GIT_DIR"/.cmitchk
+if test -s "$GIT_DIR"/.cmitchk
 then
 	tree=$(git-write-tree) &&
-	commit=$(cat .cmitmsg | git-commit-tree $tree $PARENTS) &&
+	commit=$(cat "$GIT_DIR"/.cmitmsg | git-commit-tree $tree $PARENTS) &&
 	git-update-ref HEAD $commit $current &&
 	rm -f -- "$GIT_DIR/MERGE_HEAD"
 else
@@ -231,7 +231,7 @@ else
 	false
 fi
 ret="$?"
-rm -f .cmitmsg .editmsg .cmitchk
+rm -f "$GIT_DIR"/{.cmitmsg,.editmsg,.cmitchk}
 
 if test -x "$GIT_DIR"/hooks/post-commit && test "$ret" = 0
 then
---
0.99.8.GIT
Next: Junio C Hamano
Message 1 of 4 in “Write .editmsg in GIT_DIR to avoid being in git-status.”
  1. Write .editmsg in GIT_DIR to avoid being in git-status.Santi Béjar, Oct 5, 2005
  2. Junio C HamanoOct 5, 2005
  3. Santi BejarOct 6, 2005
  4. Junio C HamanoOct 6, 2005

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.