20

SCM(私の場合はPERFORCE)に置き換えられたテキストシーケンスがいくつかあります。

ファイルを比較するときにこれらのシーケンスを無視できるようにするために、これらのシーケンスを重要でない違いと見なすようにBeyondCompareを構成したいと思います。

私の場合、それはPythonソースファイルに関するものであり、シーケンスは次のようになっています。

# $Id: //depot/.../filename#7 $
# $DateTime: 2010/09/01 10:45:29 $
# $Author: username $
# $Change: 1234 $

これらのシーケンスはコメントの外にある場合もありますが、この場合でも、実際には変更されていないため、これらの行は無視できるようにしたいと思います。

4

2 に答える 2

16

新しい文法要素を定義し(これを「SCM」と呼びましょう)、重要でないものとしてマークする必要があります(ここのチュートリアルを参照してください。「基本」を選択し、必ず「正規表現」をチェックしてください)。

文法要素は次のようになります(例を正しく解釈した場合):

^.*\$(Id|DateTime|Author|Change):.*$

$Id:これは、$DateTime:などを含む行を無視します。

で始まる行のみを無視する場合は# $...

^\s*#s*\$(Id|DateTime|Author|Change):.*$

そして、その間のものだけを無視したい$(そして他のすべてを重要なものとして扱いたい)場合は、

\$[^$\r\n]*\$

また

\$(Id|DateTime|Author|Change)[^$\r\n]*\$

あなたがそれらのキーワードを気にするかどうかに応じて。

于 2010-09-06T15:12:37.473 に答える
5

Beyond Compareのパーサーは現在(v3 / v4)ネストされた要素をサポートしていないため、テキストがコメントや文字列などとしてすでに分類されている場合、ファイル形式の文法を使用してSCMシーケンスを特定のファイルタイプにとって重要でないものとしてマークすることはできません。 。

Beyond Compare 4.0では、文法とは別に、比較全体で任意のテキストを重要でないものとしてマークするためのサポートが追加されました。

  1. 興味のあるファイルをロードします
  2. [セッション設定]ボタン(審判アイコン付きのルール)をクリックするか、[セッション]- >[セッション設定]メニュー項目を使用します。
  3. [重要]タブに切り替えます
  4. 重要でないテキストリスト+の下部にあるボタンをクリックします。
  5. プレーンテキストまたは正規表現をテキストに追加して編集を検索し、必要に応じて[正規表現]チェックボックスをオンにします。この場合、正規表現は次のようになります。
    \$(Id|DateTime|Author|Change):.*\$
  6. [ OK]をクリックします。
  7. デフォルトでは、これらの変更は現在の比較にのみ影響します。[セッション設定]ダイアログの下部にあるコンボボックスを[このビューでのみ使用]から[セッションのデフォルトも更新して、すべてのファイルタイプの今後のすべての比較に影響するようにする]に変更できます。
于 2016-04-29T21:59:11.920 に答える