git rebase [-i | --interactive] [options] [--exec <cmd>] [--onto <newbase>] [<upstream>] [<branch>]
git rebase [-i | --interactive] [options] [--exec <cmd>] [--onto <newbase>] --root [<branch>]
git rebase --continue | --skip | --abort | --edit-todo
パラメータ | 詳細 |
---|---|
- 持続する | マージの競合を解決した後、リベースプロセスを再開します。 |
- アボート | リベース操作を中止し、HEADを元のブランチにリセットします。リベース操作が開始されたときにブランチが提供された場合、HEADはブランチにリセットされます。それ以外の場合、HEADは、リベース操作が開始されたときの位置にリセットされます。 |
--keep-empty | その結果、親から何も変わらないコミットを保つ。 |
- スキップ | 現在のパッチをスキップしてリベースプロセスを再開します。 |
-m、--merge | マージ戦略を使用してリベースする。再帰(デフォルト)マージ戦略を使用すると、リベースは上流側の名前の変更を認識することができます。リベースマージは、上流のブランチの上にある作業ブランチからの各コミットを再生することによって機能することに注意してください。このため、マージの競合が発生した場合、私たちの側は、上流から始まって遠くまでリベースされたシリーズであり、それらのブランチは作業ブランチです。換言すれば、辺が入れ替わっている。 |
--stat | 最後のrebaseからアップストリームに変更されたもののdiffstatを表示します。 diffstatは、構成オプションrebase.statによっても制御されます。 |
-x、--exec command | 対話型のリベースを実行し、各コミットと実行command 間で停止する |
リベースはリポジトリの履歴を効果的に書き換えます。
リモートリポジトリに存在するリベースコミットは、他の開発者がその開発のためのベースノードとして使用しているリポジトリノードを書き換えることができます。あなたが何をしているのか本当に分かっていない限り、変更をプッシュする前にリベースするのがベストプラクティスです。