Browse Source

[git] Add git-tag-update

master
Matteo Cypriani 9 years ago
parent
commit
580e240c9e
  1. 16
      git/README
  2. 32
      git/git-tag-update

16
git/README

@ -71,3 +71,19 @@ script in a directory in the PATH (for instance /usr/local/bin) and
add an alias:
git config --global alias.merge-ff-only "\!sh -c 'git-merge-ff-only'"
# git-tag-update #
git-tag-update allows one to update a tag message while automatically
keeping its original date. It takes the name of the tag to update as an
argument.
Beware that the tag's author will be changed to whatever is the current
author. You can change it temporarily with git config if you need to
update commits with different authors.
To activate the git tag-update command, put the git-tag-update script in
a directory in the PATH (for instance /usr/local/bin) and add an alias:
git config --global alias.tag-update "\!sh -c 'git-tag-update'"

32
git/git-tag-update

@ -0,0 +1,32 @@
#!/bin/sh
#
# git-tag-update, Copyright © 2012 Matteo Cypriani
#
# This program is free software. It comes without any warranty, to
# the extent permitted by applicable law. You can redistribute it
# and/or modify it under the terms of the Do What The Fuck You Want
# To Public License, Version 2, as published by Sam Hocevar. See
# http://sam.zoy.org/wtfpl/COPYING for more details.
#
# This script allows one to update a Git tag message while keeping its
# original date. The tag's author will be changed to whatever is the
# current author (you can change it temporarily with git config if you
# need to update commits with different authors).
set -e
#set -x
if [ $# -ne 1 ] ; then
echo "Usage: $0 <tag-name>"
exit 1
fi
TAG=$1
GIT_COMMITTER_DATE="$(git tag -v $TAG 2>/dev/null|grep ^tagger | cut -f5- -d' ')"
export GIT_COMMITTER_DATE
git tag -sf $TAG $TAG
echo "Old tag commiter date: $GIT_COMMITTER_DATE"
GIT_COMMITTER_DATE="$(git tag -v $TAG 2>/dev/null|grep ^tagger | cut -f5- -d' ')"
echo "New tag commiter date: $GIT_COMMITTER_DATE"
Loading…
Cancel
Save