最後の N 個の Git コミットをまとめてスカッシュするにはどうすればよいですか?

Zui Houno N Geno Git Komittowomatometesukasshusurunihadousurebayoidesuka



開発者は、ローカル リポジトリを介して GitHub ホスティング サービスに変更を追加できます。要件に応じて、変更をプッシュまたはプルできます。ただし、変更を行っているときに、コミットしてリポジトリに保存する必要がある場合があります。

Git を使用すると、開発者はスカッシュによってコミットをマージできます。これは、複数のコミットを 1 つのコミットに結合するプロセスです。この操作は、「 $ git rebase -i HEAD~1 ' 指図。

この投稿では、最後の N 個の Git コミットをまとめて squash する方法について説明します。

最後の N 個の Git コミットをまとめてスカッシュするにはどうすればよいですか?

最後の N 個の Git コミットをまとめてスカッシュするには、まず、Git ローカル リポジトリに移動して初期化します。次に、ファイルを作成してステージング領域まで追跡します。追加した変更を Git リポジトリにコミットします。次に、Git ログ履歴を表示し、HEAD ポインターの位置をリセットします。 「」を実行してコミットをマージします $ git merge –squash ' 指図。最後に、変更をコミットし、「 $ git rebase -i HEAD~1 ' 指図。

それでは、上記のシナリオの手順を確認してみましょう。

ステップ 1: Git リポジトリに移動する
まず、「 CD 」コマンドを使用して、目的の Git ローカル リポジトリに移動します。

$ CD 「C:\ユーザー \n azma\Git\Demo10'

ステップ 2: ファイルの作成
次のコマンドを使用して、Git ローカル リポジトリに新しいファイルを作成します。

$ 接する file2.txt

ステップ 3: ファイルの追跡
「を実行します $ git 追加 」コマンドに、Git ローカル リポジトリに追跡するファイル名を指定します。

$ git追加 file2.txt

ステップ 4: 変更を保存する
Git ローカル リポジトリを保存して更新するには、「 $ git コミット ” コマンドと “ -m 」オプションを選択して、目的のコミット メッセージを追加します。

$ gitコミット -m 「2番目のファイルが追加されました」

ステップ 5: 新しいファイルを作成する
「」を使用して新しいファイルを作成します 接する 」 Git リポジトリのコマンド:

$ 接する file3.txt

ステップ 6: ファイルの追跡
次に、「 git追加 」コマンドとファイル名:

$ git追加 file3.txt

ステップ 7: 変更をコミットする
gitコミット 」 コマンドを使用して、追加された変更を Git ローカル リポジトリに保存します。

$ gitコミット -m 「3番目のファイルが追加されました」

ステップ 8: Git ログの履歴を確認する
次のコマンドを使用して、Git ログ履歴を確認します。

$ git ログ .

ここでは、最新の 2 つのコミットがリポジトリに追加されていることがわかります。

ステップ 9: HEAD をリセットする
今、「 git リセット ” コマンドと “ -難しい 」オプションを使用して、リセットする HEAD 位置を指定します。

$ git リセット - 難しい 頭〜 2

その結果、HEAD ポインターの位置は最近の 2 つのコミットにリセットされます。

ステップ 10: コミットをマージする
今、「 gitマージ ”コマンド” -押しつぶす 」 現在の HEAD インデックスでコミットをマージするオプション:

$ gitマージ - 押しつぶす @ { 1 }

ご覧のとおり、最新のコミットは正常にマージされています。

ステップ 11: リポジトリを更新する
追加した変更をリポジトリにコミットして更新します。

$ gitコミット -m 「2つのファイルが追加されました」

ステップ 12: Git ログ履歴
今、「 git ログ . 」コマンドを使用して、追加された変更の Git ログ履歴を確認します。

$ git ログ .

以下の出力によると、最新の最新のコミットは正常にまとめられています。

ステップ 13: N コミットをスカッシュする
最後に、「 git リベース 」コマンドと「 -私 ” を押しつぶすオプション N 」 一緒にコミットした数。たとえば、「 頭~1 」 最後のコミットを一緒に押しつぶすには:

$ git リベース -私 頭〜 1

上記のコマンドを実行すると、エディターが開き、いくつかの指示が表示されます。必要なコメントを追加し、それを保存してリベースし、押しつぶされたコミットを更新します。

それでおしまい!最後の N 個のコミットをまとめてつぶす最も簡単な方法をまとめました。

結論

最後の N 件のコミットをまとめてスカッシュするには、まず Git リポジトリに移動して初期化します。次に、ファイルを作成してステージング領域まで追跡します。追加した変更を Git リポジトリにコミットします。次に、HEAD ポインターの位置をリセットし、「 $ git merge –squash ' 指図。最後に、変更をコミットして「 $ git rebase -i HEAD~1 」 コマンドを使用して、最近マージされたコミットをスカッシュします。この投稿では、最後の N 個のコミットをまとめてスカッシュする方法を提供しました。