EclipseでeGitを使って特定のブランチやタグにリベースする方法はわかっていますが、eGitを使って特定のsha1にリベースする方法が見つかりませんでした。アップストリームにプッシュする前にコミットを潰すためにこれをやりたいのです(つまり、git rebase -i HEAD~n
を実行しています。ここでnは、リベースする前にコミットのいくつかの数です)。これはeGitで可能ですか?そうでなければ、私はこの機能を提供するはずの別のEclipseプラグインがありますか?eGitでgit rebase -i HEAD〜2を実行するにはどうすればよいですか?
答えて
EGitにはリベースがありますが、まだ対話的なリベースを要求していません。
履歴ビューから、リベースするコミットを選択し、rebase-point
などのブランチを作成します。あなたは今、そのブランチにリベースすることができ、必要に応じて後で削除することができます。私は一般的に、このようなものには名前付きブランチを使用する方が好きです。なぜなら、それは自分の間違いの可能性を最小限に抑えるからです。代わりに、プッシュのためにコミットを押しつぶしている場合、origin/master
がしばしば正しいrebaseポイントであると考えてください。
@ KevinSawickiの回答を使って特定のコミットの上にリベースしようとすると、「Rebase did nothing、HEADはすでに最新です」というメッセージが表示されます私はこれを試してメッセージ?私はここには何かが分かっていないと思うが、私は何が分かっていないのか分からない。 – Zach
うん、あなたは機能ブランチでそれを 'master'にマージする前に、あなたはあまりにも多く。 –
Eclipse履歴ビューからリベースすることもできます。
- のGitリポジトリビューからリポジトリを選択し
- を選択して右クリックし、歴史
- で表示を選択するには、
- 右 - の上に現在チェックアウトブランチをリベースしたいコミットRebase on Topアイテム
- 注:を選択する必要があります。すべてのブランチとタグを表示するを履歴から最初に選択します。表示ツールバーを使用して、テーブルで探しているコミットを表示します。
私は質問にこの情報を追加する必要がありましたが、これは私が最初にそれがうまくいくと思った方法です。しかし、同じブランチの前回のコミットでこれを行うと、「Rebaseは何もしなかった、HEADはすでに最新だった」というダイアログが表示されます。 – Zach
私が成功押しつぶしてきたがthis post(カット、ここで貼り付け)からの手順を使用してコミット:
私は最後のmは現在のブランチにコミットスカッシュしたい場合は、I
- は、歴史の中で選択します私がスカッシュしたくない最初のコミット
- 右クリックして "チーム - >リセット - >ソフト"と答えてください。
- 右クリックして "コミット"と言うと、このコミットには最後のmコミットのすべての変更がまとめられます
- 1. rebase -iの実行中にコミットメッセージをrewordingするときにgit show diffを作成するにはどうすればよいですか?
- 2. すべてのブランチでgit svn rebaseを実行するには
- 3. SourcetreeでGit Rebaseはどのように動作しますか?
- 4. rootがgit pullを実行しないようにするにはどうすればいいですか?
- 5. GITどうすればよいですか?すべての競合が修正されました: "git rebase --continue"を実行してください
- 6. WCFサービスでファイルI/Oを実行するにはどうすればよいですか?
- 7. Xcode Continuous Integrationサービスで浅いgitクローンを実行するにはどうすればよいですか?
- 8. git rebase -i:/^major workはなぜですか?
- 9. IntelliJ 15で自動git pushを実行するにはどうすればよいですか?
- 10. gitコミットを "再オープン"するにはどうすればよいですか?水銀で
- 11. git diffをHEADから始めるにはどうすればいいですか?
- 12. Instikiを実行するにはどうすればよいですか?
- 13. JQueryでループを実行するにはどうすればよいですか?
- 14. カスタムエラーハンドラでシェルを実行するにはどうすればよいですか?
- 15. qでコールバックチェーンを実行するにはどうすればよいですか?
- 16. xPagesでカスタムコントロールログインフォームを実行するにはどうすればよいですか?
- 17. sharejsをnodejsで実行するにはどうすればよいですか?
- 18. RestheartでfindAndModifyを実行するにはどうすればよいですか?
- 19. iPythonをConsole2で実行するにはどうすればよいですか?
- 20. PHPでターミナルコマンドを実行するにはどうすればよいですか?
- 21. Delphiでコマンドラインプログラムを実行するにはどうすればよいですか?
- 22. Javaでタイマを実行するにはどうすればよいですか?
- 23. C#でコマンドを実行するにはどうすればよいですか?
- 24. ElasticSearchでインデックスクエリを実行するにはどうすればよいですか?
- 25. Windowsでチェックサムを実行するにはどうすればよいですか?
- 26. コマンドヒストリサポートでインタープリタを実行するにはどうすればよいですか?
- 27. C#でSystem.Web.Script.Serializationを実行するにはどうすればよいですか?
- 28. TMPL_VARでencode_entitiesを実行するにはどうすればよいですか?
- 29. JSFでミニテンプレートシステムを実行するにはどうすればよいですか?
- 30. プログラムでイベントを実行するにはどうすればよいですか?
この機能の進捗状況については、次のリンクをご覧ください。 https://bugs.eclipse.org/bugs/show_bug.cgi?id=340967 https://bugs.eclipse.org/bugs/show_bug.cgi?id= 356939 –
この機能はEclipse Lunaで利用可能で、既にインストール可能です。 http://m-sohn.blogspot.com/2013/11/interactive-rebase-with-egit-32.htmlを参照してください。 – torkildr