Gitは

2017-12-16 9 views
2

タグを失うことなく修正をコミット私はGitリポジトリのコミット後のフック上で動作し、次のスクリプトがあります。Gitは

#!/bin/sh 
# by Martin Seeler, and 
# by Jorge Javier Araya Navarro 

# destination of the final changelog file 
OUTPUT_FILE=CHANGELOG.md 

# generate the changelog 
if ! type gitchangelog > /dev/null; then 
    echo "ERROR: Please install gitchangelog" 
    exit 1 
fi 

gitchangelog > $OUTPUT_FILE 

# prevent recursion! 
# since a 'commit --amend' will trigger the post-commit script again 
# we have to check if the changelog file has changed or not 
res=$(git status --porcelain | grep $OUTPUT_FILE | wc -l) 
if [ "$res" -gt 0 ]; then 
    git add $OUTPUT_FILE 
    git commit --amend --no-edit 
    echo "Populated Changelog in $OUTPUT_FILE" 
fi 

をこれは新しいを作成せずにgitchangelogを使用してCHANGELOGファイルを生成するのに便利です登録してコミットそのファイルを変更します。私はcommit --amend後HEAD上のタグを、持っていた場合

しかし、タグをされ走っているので、私は、ローカルおよびリモートでそれを削除し、迷惑であることを再作成する必要があり、を「失われました」。

私は、改正後のタグを移動するためのスクリプトのための方法を把握しようとしているが、この時点で私は私がやっているかわかりません。最初にHEADにタグをリストする必要がありますか?修正後にタグを移動してもよろしいですか?私がとにかく何を意味するのかをGitは知っていますか

答えて

1

あなたはgit commit --amend後にあなたのタグを移動するためにgit tagm alias I described hereで見ることができます。 (それを再作成IE)タグを見つける

  • 移動古いものを削除
  • のシーケンスを自動化するだろう

+0

別名で後で使用するためにHEADのタグのリストを取得する方法上の任意のアイデア? – shackra

+1

@shackra https://stackoverflow.com/a/15353441/6309で修正の直前にこれらのタグを表示することができます: 'git tag -points-at HEAD' – VonC