15

Eclipse の Create Patch 機能を使用して、コミットされていない変更のパッチを作成しました。VCS に既にコミットされている変更に対して、Eclipse でパッチを作成する方法を探しています。

何かを見逃していない限り、これは可能だとは思いませんが、この機能を追加するプラグインはありますか? たとえば、[履歴] ビューで 2 つのバージョンを選択してそれらの間のパッチを作成したり、2 つのブランチを比較して [同期] ビューで結果からパッチを作成したりできますか?

コマンドラインからそのようなパッチを作成できて満足していますが、可能であればプロセスを合理化/統合する方法を探しています。

助けてくれてありがとう。

更新:特定のソース管理システムに固有の提案がある場合、特に CVS、SVN、および Mercurial に興味があります。再度、感謝します。

4

6 に答える 6

10

subclipse を使用すると、履歴ビューでディレクトリの 2 つのリビジョンを選択し、それらを比較して、パッチを統合差分として保存できます。

于 2009-11-17T15:17:11.677 に答える
6

コミット後にパッチ SVN を作成しました。:)

  • 「SVNリポジトリ」に入力します
  • プロジェクトのルートに移動します。
  • 「比較」をクリック
  • 「出力ファイルへの統合差分」を選択
  • 「選択」をクリックして、ファイルの名前と場所を選択します
  • 「OK」をクリック
于 2013-05-30T09:56:32.387 に答える
4

私はいくつかの広範な調査を行いました...そして、実際のEclipse比較エディターを使用して、「ローカル履歴」セクションの違いに基づいて.patchファイルを生成する方法がないことがわかりました。

このための新しい機能リクエストを作成します。

于 2012-09-26T20:22:23.977 に答える
0

他の回答と同様に、いいえ、現在は不可能です。

しかし今のところ、例としてSVNを使用した手動の回避策があります(他のVCSでも非常に類似した比較が可能になると思います)。

  • 2番目のEclipseワークスペースを作成します。ワークスペース2。
  • ワークスペース2にマージの「ターゲット」の正しいコードがあり、元のワークスペース1にパッチを取得するのを忘れたコードがあることを確認します。
  • ディレクトリを比較できるマージツールを使用して、ワークスペース1と2を手動で比較します(Windowsでは、Araxis Mergeが好きですが、WinMergeも機能します)。
  • 各ファイルを開き、変更のみが含まれていることを確認します。他に変更がある場合は、変更した各行を移動する必要があります。ターゲットファイルを変更した人がいない場合は、ファイル全体をコピーできます。
  • ワークスペース2を同期して(ただし、チェックインしないでください)、現在そこにある変更を確認できます。
  • ワークスペース1で、「SVNリポジトリ探索の視点」を開きます
  • コードがチェックインされたフォルダ(おそらく「ブランチ」または「トランク」の下にあるもの)->「比較...」を右クリックすると、チェックインの直前にリビジョン番号が入力されているはずです。
  • これで、チェックインする前のバージョンでチェックインしたコード(パッチを取得するのを忘れた)からの変更を確認できます。
  • ワークスペース1と2を並べて開き、変更された各ファイルを視覚的に実行して、1から2に表示されるすべてのものと一致することを確認します。

非常に、非常に退屈ですが、すべての変更を取得する必要があります。

于 2013-01-11T17:16:00.843 に答える
0

これを Eclipse で作成できなかったとき (CVS のみで作業する必要がありました)、入手可能な他のソフトウェアを試したところ、SmartCVS で作成できることがわかりました。ただし、この機能は有料版の Pro でのみ利用可能で、コードが多い場合は少し時間がかかります (比較的遅い)。

誰かがそれについて知っていれば、この機能を備えたオープンソースソフトウェアについて知りたいです。ありがとう

于 2013-03-20T10:12:47.623 に答える