サイトロゴ
背景ロゴ
Git Created: 2026/06/27 Updated: 2026/06/30

Git/Gitea でのタグの使い方
ローカル作成とWeb作成を分けて解説

GitのタグをローカルとGitea Web UIの両方から作る手順を解説。軽量タグと注釈付きタグの違い、タグのpush/pull、チェックアウトや削除までコマンド付きで丁寧に紹介します。

シリーズ:Git 実践シリーズ

01

ソース管理ワークフロー

02

タグの使い方(ローカル / Gitea Web)

03

コミットメッセージ規約

04

rebase の使い方

05

GitHub / Gitea Actions

「リリースしたバージョンに、後から戻れるように印を付けておきたい」——そんなときに使うのが タグ(tag) です。ブランチが「動き続ける作業の流れ」だとすれば、タグは「ある時点の状態に貼る、はがれない付箋」のようなものです。

この記事では、Git のタグを (A) ローカルのターミナルで作る方法 と、 (B) Gitea の Web 画面で作る方法 の2通りに分けて、作成からリモートとの同期、活用、削除までを順番に解説します。どちらの操作も「いまローカルでやっているのか、Gitea 側でやっているのか」を ローカル / Gitea Web のバッジで明示するので、迷子になりません。

💡 前提条件

Git がインストール済みで、リモートに Gitea のリポジトリ(例:origin )が登録されていることを前提にします。git push /git pull が一通りできれば大丈夫です。コマンド例のorigin は自分のリモート名に、main は自分の運用ブランチに読み替えてください。

そもそもタグとは何か

タグは、特定のコミットに付ける「名前付きの目印」です。もっともよく使うのは バージョン番号 v1.0.0 など)を付けて、リリース時点のコードを後から正確に取り出せるようにする用途です。 ブランチとの一番の違いは、 タグは基本的に動かない という点です。ブランチは新しいコミットをするたびに先端が前へ進みますが、タグは一度貼ったコミットを指し続けます。だから「あのときリリースしたバージョン」を確実に再現できます。

✨ こんなときにタグが役立つ

本番リリースのたびにv1.2.0 のようにタグを打っておくと、障害が起きたときに「直前の安定版はどのコミットだったか」が一目で分かります。Gitea ではタグから「リリース(Release)」を作って、変更履歴やビルド済みファイルを配布することもできます。

軽量タグ と 注釈付きタグ

タグには2種類あります。違いは「メタ情報を持つかどうか」です。実務では 注釈付きタグ(annotated) を使うのが基本だと覚えておけば十分です。

種類 作り方 持つ情報 用途
軽量タグ
(lightweight)
git tag v1.0.0 コミットへの参照のみ 一時的な目印・個人用メモ
注釈付きタグ
(annotated)
git tag -a v1.0.0 -m "..." 作成者・日時・メッセージ・署名 リリース用(推奨)

✨ ポイント

注釈付きタグは「誰が・いつ・なぜ」を記録できるため、チームでのリリース管理に向いています。一方 Gitea の Web 画面から作るタグには、メッセージを付けられる入力欄が用意されています(後述)。迷ったら注釈付きにしておけば間違いありません。


パターンA:ローカルでタグを作成する ローカル

まずはターミナルでタグを作る方法です。ここでの操作はすべて ローカル のリポジトリに対して行われ、 明示的に push するまで Gitea 側には反映されません。 ここが最初のつまずきポイントなので、最後の「リモートへ push」まで通して読んでください。

手順1:注釈付きタグを作る(最新コミットに付ける)

Step A-1

bash
# -a で注釈付きタグ、-m でメッセージを指定
$ git tag -a v1.0.0 -m "初回リリース"

# 作成されたか確認
$ git tag
#v1.0.0

軽量タグでよければ-a -m を省略します。

bash
$ git tag v1.0.0

手順2:過去のコミットにタグを付ける

Step A-2

「タグを打つのを忘れていた」というときは、対象コミットのハッシュを指定すれば後からでも付けられます。

bash
# まず履歴からコミットを探す(短縮ハッシュを控える)
$ git log --oneline
#9f2c1ab (HEAD -> main) ログ出力を追加
#3a7e0d4 バグ修正
#c1d8b6f 初回コミット

# そのハッシュにタグを付ける(末尾にハッシュを指定するのがポイント)
$ git tag -a v0.9.0 -m "ベータ版" 3a7e0d4

手順3:タグの中身を確認する

Step A-3

bash
# タグ一覧(パターンで絞り込みも可能)
$ git tag -l "v1.*"
#v1.0.0

# 注釈付きタグの中身(メッセージ・作成者・日時・指すコミット)を表示
$ git show v1.0.0
#tag v1.0.0
#Tagger: yaimi <yaimi@example.com>
#Date:   ...

#初回リリース
#...

手順4:タグを Gitea(リモート)へ push する

Step A-4

ここが 最重要 です。git push は通常、タグを送信しません。タグは別途 push する必要があります。

bash
# タグ名を指定して1つだけ送る
$ git push origin v1.0.0
# * [new tag]         v1.0.0 -> v1.0.0
bash
# --tags でローカルにある全タグを送る
$ git push origin --tags

⚠️ ️ git push だけではタグは送られない

普段のgit push origin main はコミットを送るだけで、ローカルのタグは Gitea に反映されません。「ローカルではgit tag に出るのに、Gitea の画面にタグが見当たらない」という場合は、git push origin タグ名 またはgit push origin --tags を忘れていないか確認してください。

🎯 ここまででできたこと

ローカルでタグを作り、Gitea へ反映するところまで完了しました。Gitea のリポジトリ画面を開き、 Releases Tags v1.0.0 が表示されていれば成功です。


パターンB:Gitea の Web 画面でタグを作成する Gitea Web

ターミナルを使わず、Gitea のブラウザ画面から直接タグを作ることもできます。「リリース作業を担当する人が、ローカルにクローンせずタグだけ打ちたい」といったケースで便利です。ここでの操作はすべて Gitea Web 側で完結し、 あとからローカルへ pull すれば手元にも取り込めます。

手順1:Tags ページを開く

Step B-1

リポジトリのトップから、上部メニューの Releases(リリース) を開きます。そのページ内の「新しいリリース」ボタンを押下し、 「新しいリリース」 画面へ移動できます。

Gitea -- リリース

X リリース

Y タグ

RSSフィード

新しいリリース

右上の「 新しいリリース 」ボタンを押下して、リリース画面に進みます。

手順2:New Tag でタグを作成する

Step B-2

タグ名・ターゲット(どのブランチを指すか)を入力・選択します。入力・選択後、タグだけ作成したいときは、右下の「 タグのみ作成 」ボタンを押下してください。また、メッセージ付きのタグを作成したい場合は下部の「 リリースのタイトルと内容をタグのメッセージにする 」チェックボックスをONにした後、「 タグのみ作成 」または、「 リリースを発行 」ボタンを押下するようにしてください。

Gitea -- 新しいリリース

Gitタグ

既存タグを選択 or 新しいタグ名を入力

タグをつけるブランチを選択

リリースタイトル

リリースタイトルをここに入力

リリースノート

リリース内容をここに入力

リリースのタイトルと内容をタグのメッセージにする

タグのみ作成

リリースを発行

✨ Web から作るタグが指すコミット

Gitea の Web 画面で作るタグは、 選んだターゲット(ブランチ)の最新コミット に付きます。「特定の古いコミットだけにタグを打ちたい」という場合は、ローカルでハッシュを指定して作る(パターンA・手順2)方が確実です。Web 画面は「いまの main の先端にリリースタグを打つ」という典型的な使い方に向いています。

手順3:(任意)タグからリリースを作る

Step B-3

Gitea ではタグを土台にして リリース(Release) を作成できます。タグが「コミットへの目印」なのに対し、リリースは「変更点(リリースノート)やビルド済みファイルを添付して配布するための、一段上の概念」です。

項目 タグ(Tag) リリース(Release)
正体 コミットへの参照 タグに紐づく配布物・説明
付けられる情報 名前・メッセージ リリースノート・添付ファイル
主な用途 バージョンの目印 成果物の公開・配布

✨ タグとリリースの関係

Releases ページの「New Release」からタグ名を入力すると、 タグの作成とリリースの公開を同時に 行えます。すでにあるタグを選んでリリースだけ後付けすることも可能です。まずは「タグ=目印」「リリース=配布パッケージ」と整理しておけば十分です。

手順4:作成したタグをローカルへ取り込む ローカル

Step B-4

Gitea 側で作ったタグは、ローカルでそのままgit pull しても自動では落ちてこないことがあります。--tags を付けて明示的に取得しましょう。

bash
# リモートの新しいタグを取り込む
$ git fetch origin --tags
# * [new tag]         v1.1.0 -> v1.1.0

# ローカルに取り込めたか確認
$ git tag
#v1.0.0
#v1.1.0

作ったタグを活用する

タグはただ付けるだけでなく、「その時点に戻る」「差分を見る」といった操作の起点になります。ここは ローカル での操作が中心です。

タグの時点のコードを取り出す(チェックアウト)

bash
# タグ時点のコードに切り替える(中身を確認したいとき)
$ git checkout v1.0.0
#Note: switching to 'v1.0.0'.
#You are in 'detached HEAD' state. ...

# タグから新しいブランチを作って作業を始める場合
$ git switch -c hotfix-1.0.1 v1.0.0

⚠️ ️ detached HEAD に注意

タグを直接checkout すると、どのブランチにも属さない「detached HEAD」状態になります。中身を見るだけなら問題ありませんが、 そこで修正してコミットすると迷子になりやすい ため、作業するなら上の例のようにgit switch -c ブランチ名 タグ名 でブランチを切ってから始めましょう。

タグ間の差分を見る

bash
# v1.0.0 から v1.1.0 で変わったファイルの一覧
$ git diff v1.0.0 v1.1.0 --stat

# 2つのタグの間に入ったコミットの一覧
$ git log v1.0.0..v1.1.0 --oneline

タグを削除する(ローカル / リモートは別操作)

削除も「ローカルのタグ」と「Gitea 上のタグ」で操作が分かれます。両方消したい場合は2回の操作が必要です。

bash
# ① ローカルのタグを削除
$ git tag -d v1.0.0
#Deleted tag 'v1.0.0'

# ② Gitea(リモート)のタグを削除
$ git push origin --delete v1.0.0

✨ Gitea の画面からも削除できる

リモート側のタグは、Gitea Web の Tags 一覧からゴミ箱アイコンで削除することもできます。ただしその場合もローカルには残っているので、必要ならgit tag -d v1.0.0 で手元のタグも消してください。


コマンドリファレンス

ローカルでのタグ操作はこの一覧でほぼカバーできます。v1.0.0 の部分は自分のタグ名に置き換えてください。

コマンド コマンド内容
git tag -a v1.0.0 -m "..." 注釈付きタグを作成する(リリース用の基本)。
git tag v1.0.0 軽量タグを作成する(メッセージなしの簡易な目印)。
git tag ローカルのタグ一覧を表示する。
git show v1.0.0 タグの詳細(メッセージ・作成者・指すコミット)を表示する。
git push origin v1.0.0 指定したタグ1つを Gitea へ送る。
git push origin --tags ローカルの全タグをまとめて Gitea へ送る。
git fetch origin --tags Gitea 側のタグをローカルへ取り込む。
git tag -d v1.0.0 ローカルのタグを削除する。
git push origin --delete v1.0.0 Gitea(リモート)のタグを削除する。

トラブルシュート

タグ周りでよくあるつまずきをまとめます。

❓ ローカルでタグを作ったのに Gitea の画面に出てこない

タグはgit push origin main では送られません。git push origin タグ名 またはgit push origin --tags を実行してください。逆に Gitea 側で作ったタグはgit fetch origin --tags でローカルに取り込みます。

❓ fatal: tag 'v1.0.0' already exists と言われる

同じ名前のタグがすでに存在します。タグは原則「貼り直さない」ものです。どうしても付け替えたい場合は、一度git tag -d v1.0.0 で削除してから作り直し、リモートにも--delete と再 push で反映します(共有後の付け替えはチームに影響するので注意)。

❓ Gitea の Web 画面で、古いコミットだけにタグを打ちたい

Web 画面のタグはターゲットブランチの最新コミットに付きます。特定の過去コミットを狙うなら、ローカルでgit tag -a v0.9.0 コミットハッシュ として作り、git push origin v0.9.0 で送るのが確実です。

❓ タグを消したのにローカルにまだ残っている

ローカルとリモートのタグは別管理です。Gitea 側で削除しても、ローカルにはgit tag -d v1.0.0 を実行するまで残ります。両方消したいときは2回の操作が必要だと覚えておきましょう。


まとめ

今回学んだこと

  • タグは「ある時点のコミットに貼る、動かない目印」。リリース管理に使うのが定番
  • 実務ではgit tag -a -m の注釈付きタグを使うのが基本
  • ローカル作成:git tag で作り、git push origin タグ名 で Gitea へ送る(push 忘れに注意)
  • Gitea Web 作成:Releases → Tags の「New Tag」から作成。ターゲットの最新コミットに付く
  • Gitea で作ったタグはgit fetch origin --tags でローカルへ取り込む
  • 古いコミット狙いのタグはローカルでハッシュ指定が確実
  • 削除はローカルとリモートで別操作。両方消すには2回必要

🎯 この記事のゴール

ローカルと Gitea Web、どちらからでもタグを作れて、push / fetch で双方を同期できるようになりました。タグを起点にした差分確認やチェックアウトも押さえたので、リリースのたびにv1.2.0 のような印を残し、いつでも安心して過去のバージョンへ戻れます。