# UI: git-tag should support -F as well

5 messages from 2006-12-21 to 2006-12-22. Participants: Han-Wen Nienhuys, Johannes Schindelin, Junio C Hamano, Shawn Pearce.
Thread: https://gitlist.dev/t/6058

## Han-Wen Nienhuys, 2006-12-21 11:52

Subject: UI: git-tag should support -F as well
Message-ID: <emdsi9$ecm$1@sea.gmane.org>
URL: https://gitlist.dev/e/emdsi9%24ecm%241%40sea.gmane.org

```

Working on a little darcs2git script, I found the following inconsistency

git-commit supports -m and -F 
git-tag supports only -m


-- 
 Han-Wen Nienhuys - hanwen@xs4all.nl - http://www.xs4all.nl/~hanwen

```

## Johannes Schindelin, 2006-12-21 14:13

Subject: [PATCH] git-tag: support -F <file> option
Message-ID: <Pine.LNX.4.63.0612211512160.19693@wbgn013.biozentrum.uni-wuerzburg.de>
URL: https://gitlist.dev/e/Pine.LNX.4.63.0612211512160.19693%40wbgn013.biozentrum.uni-wuerzburg.de
In-Reply-To: <emdsi9$ecm$1@sea.gmane.org>

```

This imitates the behaviour of git-commit.

Noticed by Han-Wen Nienhuys.

Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
---

	On Thu, 21 Dec 2006, Han-Wen Nienhuys wrote:

	> Working on a little darcs2git script, I found the following 
	> inconsistency
	> 
	> git-commit supports -m and -F 
	> git-tag supports only -m

	How about this?

 Documentation/git-tag.txt |    6 +++++-
 git-tag.sh                |   11 +++++++++++
 2 files changed, 16 insertions(+), 1 deletions(-)

diff --git a/Documentation/git-tag.txt b/Documentation/git-tag.txt
index 45476c2..48b82b8 100644
--- a/Documentation/git-tag.txt
+++ b/Documentation/git-tag.txt
@@ -9,7 +9,8 @@ git-tag - Create a tag object signed with GPG
 SYNOPSIS
 --------
 [verse]
-'git-tag' [-a | -s | -u <key-id>] [-f | -d] [-m <msg>] <name> [<head>]
+'git-tag' [-a | -s | -u <key-id>] [-f | -d] [-m <msg> | -F <file>]
+	 <name> [<head>]
 'git-tag' -l [<pattern>]
 
 DESCRIPTION
@@ -60,6 +61,9 @@ OPTIONS
 -m <msg>::
 	Use the given tag message (instead of prompting)
 
+-F <file>::
+	Take the tag message from the given file.  Use '-' to
+	read the message from the standard input.
 
 Author
 ------
diff --git a/git-tag.sh b/git-tag.sh
index d53f94c..36cd6aa 100755
--- a/git-tag.sh
+++ b/git-tag.sh
@@ -45,6 +45,17 @@ do
 	    message_given=1
 	fi
 	;;
+    -F)
+	annotate=1
+	shift
+	if test "$#" = "0"; then
+	    die "error: option -F needs an argument"
+	    exit 2
+	else
+	    message="$(cat "$1")"
+	    message_given=1
+	fi
+	;;
     -u)
 	annotate=1
 	signed=1
-- 
1.4.4.3.g0ba4

```

## Junio C Hamano, 2006-12-22 06:47

Subject: Re: [PATCH] git-tag: support -F <file> option
Message-ID: <7vvek45svl.fsf@assigned-by-dhcp.cox.net>
URL: https://gitlist.dev/e/7vvek45svl.fsf%40assigned-by-dhcp.cox.net
In-Reply-To: <Pine.LNX.4.63.0612211512160.19693@wbgn013.biozentrum.uni-wuerzburg.de>

```
Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:

> This imitates the behaviour of git-commit.
>
> Noticed by Han-Wen Nienhuys.
>
> Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>

Ok, but what the **** is "die ...; exit 2" sequence?

> @@ -45,6 +45,17 @@ do
>  	    message_given=1
>  	fi
>  	;;
> +    -F)
> +	annotate=1
> +	shift
> +	if test "$#" = "0"; then
> +	    die "error: option -F needs an argument"
> +	    exit 2
> +	else
> +	    message="$(cat "$1")"
> +	    message_given=1
> +	fi
> +	;;

I know it was copied from Han-Wen's aabd7693, but was this
somehow to catch the case where die can fail???

```

## Shawn Pearce, 2006-12-22 06:53

Subject: Re: [PATCH] git-tag: support -F <file> option
Message-ID: <20061222065314.GB15548@spearce.org>
URL: https://gitlist.dev/e/20061222065314.GB15548%40spearce.org
In-Reply-To: <7vvek45svl.fsf@assigned-by-dhcp.cox.net>

```
Junio C Hamano <junkio@cox.net> wrote:
> > +	if test "$#" = "0"; then
> > +	    die "error: option -F needs an argument"
> > +	    exit 2
> > +	;;
> 
> I know it was copied from Han-Wen's aabd7693, but was this
> somehow to catch the case where die can fail???

What, you haven't heard of the /bin/resurrection shell?

Apparently one of its features is it can sometimes make die return
successfully, even days after the initial call.  :-)

-- 
Shawn.

```

## Johannes Schindelin, 2006-12-22 12:15

Subject: Re: [PATCH] git-tag: support -F <file> option
Message-ID: <Pine.LNX.4.63.0612221314310.19693@wbgn013.biozentrum.uni-wuerzburg.de>
URL: https://gitlist.dev/e/Pine.LNX.4.63.0612221314310.19693%40wbgn013.biozentrum.uni-wuerzburg.de
In-Reply-To: <7vvek45svl.fsf@assigned-by-dhcp.cox.net>

```
Hi,

On Thu, 21 Dec 2006, Junio C Hamano wrote:

> Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
> 
> > This imitates the behaviour of git-commit.
> >
> > Noticed by Han-Wen Nienhuys.
> >
> > Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
> 
> Ok, but what the **** is "die ...; exit 2" sequence?

;-) I did not even bother reading the code when I copied it.

Ciao,
Dscho

```
