kledgeb Ubuntuの使い方や日本語化、アプリの使い方を紹介しています。

コミット実行時、PGP署名を行う

リベースで生成される「コミットオブジェクト」にPGP署名を行います。

PGP署名を指定するコマンドのオプションについて

  PGP署名を指定するコマンドのオプションは、以下のオプションを指定します。

ショートオプション ロングオプション オプションの値
-S --gpg-sign 秘密鍵を特定する情報

  秘密鍵を特定する情報

    秘密鍵を特定する情報を指定します。
    例えば、以下の情報が指定できます。

  • 秘密鍵の所有者の名前
  • 秘密鍵の所有者のメールアドレス
  • 秘密鍵の鍵ID

  -Sオプションの利用について

    「-S」オプションを利用して秘密鍵を指定する時は、オプションとオプションの値の間にスペースを入れず、詰めて記述してください。

    例えば、以下のような記述方法になります。

git rebase --verbose -Skledgeb@kledgeb.com master

  オプションの値を省略した場合

    オプションの値は省略することができます。
    オプションの値を省略した場合は、以下の設定を元に秘密鍵を特定します。

  • user.name
  • user.email
  • user.signingKey

PGP署名に使用する秘密鍵について

  ここでは例として、以下の秘密鍵を使用して署名を行います。

  1.署名に使用する秘密鍵

    署名に使用する秘密鍵は、自分の環境で作成した以下の秘密鍵を使用します。


  2.秘密鍵のプロパティー

     秘密鍵のプロパティーは、以下のようになっています。


コマンドの実行例

  コマンドの実行例です。

  1.ブランチの確認

    現在のブランチ構成を確認すると、以下のようになっています。
    現在のブランチは、「fix」ブランチであることが分かります。
    同様に、「HEAD」は「fix」ブランチを指していることが分かります。


    ここでは例として、「fix」ブランチを「master」ブランチにリベースし、「mastsr」ブランチに「fix」ブランチの変更内容を結合します。

  2.ブランチの構成

    現在のブランチの構成を図にすると、以下のようになっています。


    「fix」ブランチを「master」ブランチにリベースするため、リベース対象の「コミットオブジェクト」は、以下のようになります。

  • Commit4
  • Commit5

  3.コマンドの実行

    コマンドのオプションは、上記を参考にしてください。

    「端末」から、以下のコマンドを実行します。
    コマンドの詳細は、「ファイルの変更内容を異なるブランチに結合するコマンドの説明」を参考にしてください。

    ポイントは、赤字の箇所です。

git rebase --verbose --gpg-sign=kledgeb master


  4.パスフレーズの入力

    秘密鍵のロックを解除するため、秘密鍵のパスフレーズを入力し、「ロック解除」ボタンをクリックします。


  5.コマンドの実行

    以下のように、リベース結果が表示されます。


  6.ブランチの確認

    現在のブランチ構成を確認すると、以下のようになっています。
    「fix」ブランチが指す「コミットオブジェクト」の識別子が、「1.」と異なっています。


  7.ブランチの構成

    現在のブランチの構成を図にすると、以下のようになっています。


    「Commit4」の変更内容を元に、「Commit4’」が新規に生成されています。
    同様に「Commit5」の変更内容を元に、「Commit5’」が新規に生成されています。

    「Commit4」と「Commit5」は、いずれも削除されています。

  8.署名の確認

    「端末」から以下のコマンドを実行し、「コミットオブジェクト」の署名を確認します。

git show --no-patch --format='%GG' HEAD HEAD^

    以下のように署名の情報が表示されます。


    以上でリベースは完了です。


関連コンテンツ
同一カテゴリーの記事
コメント
オプション