TortoiseGitで誤ったコミットメッセージを編集するにはどうすればよいですか?


回答:


160

コミットが現在のブランチのヘッドである場合、それは簡単です。

  1. コンテキストメニュー-> Gitコミット
  2. 「最後のコミットを修正」チェックボックスにチェックを入れます
  3. コミットメッセージを修正してください
  4. OK

コミットが他のブランチのヘッドである場合は、最初にそのブランチに切り替えます。

  1. コンテキストメニュー-> TortoiseGit->スイッチ/チェックアウト
  2. 支店名を選択
  3. OK
  4. 上記の1〜4の手順に従って、コミットメッセージを修正します。

コミットが途中でマージされずに途中である場合は、リセット、修正、チェリーピックする必要があります

  1. コンテキストメニュー-> TortoiseGit->ログ
  2. コミットを選択->コンテキストメニュー->リセット
  3. ハードリセット(これにより、選択したコミットより上のコミットに含まれるすべての作業と、作業ディレクトリ内のコミットされていない変更が破棄されます
  4. OK
  5. 上記の1〜4の手順に従って、コミットメッセージを修正します。
  6. 頭から上の1つのコミットを選択->コンテキストメニュー->チェリーピック
  7. 継続する

12
TortoiseSVNの「ログメッセージの編集」が本当にありません。彼らがそのような機能を追加する可能性はありますか?
Benoit Blanchon 2013

3
ステップ6で失われました。「先頭から1つ上のコミットを選択」とは、コンテキストメニューのオプションのことです。
Flethuseo 2014年

1
ステップ6でも負けました。チェリーピックオ​​プションはどこにもありません。上記のコミットはどのような場合でも見ることができません(実際には何もない、作業ディレクトリの変更とだけ言われます)
Robert Ivanc

13
コミットが途中である場合の提案が原因で、そのコミットまでのコード変更を破棄したと思うので、反対票を投じます。これは、数週間の作業です。
サミュエル

8
警告:「このバージョンでブランチを作成」を使用して、変更するコミットにリセットする前に一時的なブランチ名を設定してください。そうしないと、この時点より上のすべてのコミットが失われるリスクがあります。(これが既にあなたに起こった場合、git reflogそれらを取得するのに役立ちます)。
スティーブピッチャー2015

19

コミットが途中である場合のケースについては、linquizeによって提供される指示に従わないことを強くお勧めします。理由については、彼の回答の下のコメントを参照してください。

  1. TortoiseGitでgitコマンドラインを使用できますが、問題は発生しません。コマンドラインGitツールとTortoiseGitを同時に使用できますか?

  2. このyoutubeビデオはそれを非常によく説明しています:http : //youtu.be/4YjKY0u9Z6I。基本的にgit rebase -iを使用してから、コミットメッセージを単純に「書き換え」ます。

更新:linquizeによって提案されたハードリセットから失われたコミットを取得できると思います。ウェインの回答はこちらを参照してください:Gitリベースを使用してコミットを並べ替え/結合するにはどうすればよいですか?


7
同意した。gitの使い方を学ぶのに信じられないほど長い時間がかかってしまいました。SVNはとてもシンプルでした。gitの概念は単純ですが、その使用法は単純ではありません。
サミュエル

TortoiseGitはインタラクティブなリベースも提供していますが、 しているため、コマンドラインを使用する必要あり
ピーター

13

コミットメッセージを修正する最良の方法はforce rebase、tortoisegitでオプションを使用することです。

TortoiseGitでコミットを並べ替える(リベース)方法については、この回答を参照してください。同じ方法を使用して、コミットメッセージを編集できます。

  • リベースダイアログで、編集するコミットを右クリックし、Editオプションを選択します。複数のコミットを編集することもできます。
  • ボタンをクリックしStart Rebaseます。
  • リベースは、マークしたコミットで一時停止します Edit
  • Commit Message下部のタブをクリックしてメッセージを編集します
  • Amendボタンをクリックして続行します
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.