「ダムスナップショット」をgitに変換するという面倒なプロセスを完了しようとしています。このプロセスは非常に順調に進んでいます (この名前変更プロセスbranch
のおかげです) tag
。
すべてがまだローカルにあるため (リポジトリにプッシュされることはありません)、この質問(および関連する回答) は私が好むよりもやや面倒であることがわかりました。 -tag」コマンド?
ブランチをタグに変換する簡単なコマンドはありますか?
gitk
(そのままにしておくことができることはわかっていますが、タグを強調表示して簡単に識別できるようにする方法が本当に気に入っています)。
更新:以下の @Andy の回答のおかげで、すべてを便利かつ簡単に実行できるシェル スクリプトを思いつくことができました。CVS から git への移行を可能にしてくれたこの素晴らしいコミュニティに感謝します。
#!/bin/sh
BRANCHNAME=$1
TAGNAME=$2
echo "Request to convert the branch ${BRANCHNAME} to a tag with the same name accepted."
echo "Processing..."
echo " "
git show-ref --verify --quiet refs/heads/${BRANCHNAME}
# $? == 0 means local branch with <branch-name> exists.
if [ $? == 0 ]; then
git checkout ${BRANCHNAME}
git tag ${BRANCHNAME}
git checkout master
git branch ${BRANCHNAME} -d
echo " "
echo "Updated list branches, sorted chronologically: "
echo "---------------------------------------------- "
git log --no-walk --date-order --oneline --decorate $(git rev-list --branches --no-walk) | cut -d "(" -f 2 | cut -d ")" -f 1
else
echo "Sorry. The branch ${BRANCHNAME} does NOT seem to exist. Exiting."
fi