3

C-x v =RCS の管理下にあるファイル (つまり、接尾辞付きの関連ファイルがある) の現在の相違点を検査しようとしています,v。ただし、たとえば12行ごとに変更したため、出力はほとんど読めません。したがって、これらの巨大な差分のチャンクを取得します。ここでは、どの行が他の行に変更されたかを簡単に推測できません。

この差分出力をより読みやすく、引き続き使用できるようにする方法はありますか (ソースにすばやくジャンプできるようにするため)。

(私はできた

  1. C-x v l古いバージョンを表示するには、次に
  2. それfをチェックアウトするために最後のもので行います。
  3. M-x ediffファイル

しかし、それはあまり便利ではありません)

4

2 に答える 2

2

RCS でファイルを実行vc-diffすると、差分出力はデフォルトで「コンテキスト差分」になります。つまり、古いチャンクと新しいチャンクが上下に表示され、違いが強調表示されます。より最新のバージョン管理システムでは、変更された行の各グループの古いバージョンと新しいバージョンが隣接する「統合差分」が生成されます。

Emacs の diff-mode は、差分をある形式から別の形式に変換できます。C-c C-uコンテキスト diff を統合 diff に変換し、C-c C-dその逆を行うには、次のように入力します。

たとえば、このコンテキスト差分:

*** bar.txt 2013/11/19 14:00:03 1.1
--- bar.txt 2013/11/19 14:00:11 1.2
***************
*** 1,5 ****
  one
  two
! tree
  four
  five
--- 1,5 ----
  one
  two
! three
  four
  five

この統一された差分に変換されます:

--- bar.txt 2013/11/19 14:00:03 1.1
+++ bar.txt 2013/11/19 14:00:11 1.2
@@ -1,5 +1,5 @@
 one
 two
-tree
+three
 four
 five

現在の差分の形式に関係なく、ソース ファイルの対応する行にジャンプできますC-c C-c。正しいファイルが見つからない場合は、M-x diff-tell-file-name.

于 2013-11-19T14:05:10.270 に答える