Eclipse でEGitプラグインを使っていますので、タグの作成方法について書こうと思います。(使用しているのはEGit 1.3.0.201202151440-r です。)
Gitにおけるタグの種類
まず、Git のタグには3種類あります。(参考・・・Git公式サイト:2.6 Git の基本 - タグ)- Lightweight (軽量)タグ
特定コミットへの単なるポインタです。 - Annotated (注釈付き)タグ
チェックサムが付き、タグを作成した人の名前・メールアドレス・作成日時・タグ付け時のメッセージを保持します。 - Signed (署名付き)タグ
Annotated (注釈付き)タグにさらにGPG秘密鍵による署名を付与します。対応する公開鍵により検証を行うことができます。
EGitがサポートするタグ
これらのうち、EGit でサポートされているのはAnnotated (注釈付き)タグのみです。とはいえ、公式ドキュメントでも Lightweight (軽量)タグよりもAnnotated (注釈付き)またはSigned (署名付き)タグの利用が推奨されていますし、GPGで署名を検証する必要がある場面は少ないと思いますので、Annotated (注釈付き)タグのみで十分な場合が多いでしょう。なお、Lightweight (軽量)タグの作成は出来ませんが読み取りは可能です。Signed (署名付き)タグについてはサポート外とされています。(参考:Light-weight and Signed Tags | EGit/User Guide)
タグの作成
タグを作成するにはプロジェクトを右クリック→チーム→拡張→タグ...とメニューをたどり、タグ名と注釈を入力して「OK」ボタンをクリックすればタグが作成されます。タグを作成した後再度タグ作成のダイアログを開いてみると、作成したタグが追加されています。なお、アイコンに黄色い人のマークが付いているものが注釈付きタグ、黄色い人のマークがないものは軽量タグです。
ちなみに軽量タグが存在する理由は、もともとリポジトリをSVNサーバから移植した際に、SVNサーバ上のタグが自動的に軽量タグに変換されたからです。(前述のとおりEGit上では軽量タグを作成できません。)
タグのプッシュ
デフォルト設定ではローカルリポジトリに作成したタグはリモートにプッシュしないようになっています。これはEGitだからというわけではなくそもそもGit自体そういう仕様のようです。設定は以下のメニューから変更します。プロジェクトを右クリック→チーム→リモート→アップストリームからプッシュ構成…(ちなみにどうでもいいですが「アップストリームからプッシュ構成…」って誤訳ですよね。正しくは「アップストリームへプッシュ構成…」だと思います。)
出てきた「プッシュ構成」ダイアログで「参照マッピング」の「編集…」ボタンをクリックします。
「Push Ref Specifications」ポップアップが出ます。「Add All Branches Spec」ボタン、「Add All Tags Spec」ボタンをクリックして設定を追加し、「完了」ボタンをクリックします。
参照仕様が追加されているのを確認し、「保管およびプッシュ」ボタンをクリックします。
これでローカルリポジトリに作成したタグがリモートにプッシュされます。