tagでバージョン管理してmasterの切り戻しをしたい


gitのtagにバージョンを入れて管理し、masterを切り戻したくなった時に古いtagからmasterの切り戻しができないか検証してみました。
これをやりたかった背景としては、テキスト形式のconfigのバージョン管理をしたかったため。

やりたいこと

  • gitのtagでバージョン管理をしたい
  • master(リモートブランチ含む)の切り戻しを古いtagから実施したい

やってみたこと

  • tagにバージョンを入れて管理する
  • 切り戻したいtagのブランチを作成
  • ローカルのmasterを一旦削除
  • tagのブランチをmasterへリネーム
  • リモートのmasterへ強制上書き
    • リモートのmaster(GitLabやGitHub)はデフォルトでプロテクトがかかっているので解除する必要があります

Gitホスティングサービス

運用のイメージ

初期同期

通常運用

tagからの切り戻し

検証手順

事前準備

  • GitLabに repo というリポジトリを作成しておく

初期同期

(1) リポジトリを作成します。

(2) remoteの設定をします。

(3) テスト用のconfigファイルを作成します。

(4) commitしてtagを付けてgitlabにpushします。

GitLab設定

(1) SettingsRepository をクリックします。

(2) Protected BranchesExpand をクリックします。

(3) masterUnprotect をクリックしてプロテクトを解除します。

通常運用

(1) リポジトリをクローンします。

(2) 設定ファイルを修正します。

(3) 必要に応じてremoteの設定をします。

(4) commitしてtagを付けてgitlabにpushします。(ここでは検証なのでmasterにマージします)

tagからmasterの切り戻し

(1) リポジトリをクローンします。

(2) masterブランチをtagのv1.0へ切り戻します。

(3) 必要に応じてremoteの設定をします。

(4) リモートのmasterを上書きします。

ひとまず、これでやりたいことはできた٩( ‘ω’ )و

Leave a Reply

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)