3


0

メインフレームのシーケンス番号を無視できる、最新の無料のD VCSはありますか。

私は、「ファイル名にはバージョン番号が含まれている」という名前のvcsから、とりわけ分岐やマージができるようになるような最新のvcsに、一連のIBM Assembler言語プログラムを移行することを検討しています。

これらのファイルには80桁のレコードがあり、最後の8桁はほとんど意味のないシーケンス番号です。

入り込んでスペースを無駄にしたくない多くの理由から、シーケンス番号の列を無視し(ただしうまく定義された方法で保持する)、配列に基づいて差分とパッチを適用するvcsが必要です。最初の72列の内容

何か案は?

'' '' '

「無視するが保存する」ということを明確にするために:私はまだアイディアを十分に収集していないので、少しあいまいであると認めます。

それはこの線に沿った何かでしょう:

_ 「マージ/パッチを適用するときに、片側にシーケンス番号がある場合は出力します。複数の側にシーケンス番号がある場合は、ファイル(1 | 2 | 3)にある番号を使用します。」 _

'' '' '

シーケンス番号を保存したいのはなぜですか? まず、それらはシーケンス番号です。 次に、シーケンス番号が非常に重要になる可能性があるメインフレームに、この要素を再統合したいと思います。 ( "SMP / E"が何を意味するのかを知っている人は理解するでしょう。 しない人、幸せになる人、でも震える人…​)

'' '' '

私は答えを受け入れなかったことに気づいた。 難しい選択だが、@ノルドリンは私が行かなければならないところに最も近い。

4 Answer


3


Mercurialでは、.asmファイルの73列目の終わりを簡単に無視することができます。以下の行を.hgrcに追加するだけです。

[encode]
* .asm:cut -b -72

(あるいは、Windowsシステムもサポートしたいのなら、もう少し複雑な方法;-)。 しかし、これはあなたの "無視するが保存する"仕様の "保存する"部分を満たすことはできません(Neilのコメントが指摘するように、それ自体はやや問題があります)。


2


最近のバージョン管理システム( Subversionやhttp://bazaar-vcs.org/[Bazaar]は、私が通常お勧めするもので、http:// jaです。 wikipedia.org/wiki/Distributed_revision_control [集中型および分散型]はそれぞれ、外部のdiff / mergeツールを利用できます。 残念ながら、私はあなたがこのカスタムマージツールを自分で書かなければならないと思うでしょう(少なくとも私はあなたが必要とするものを聞いたことがありません)、これは私が想像する巨大なタスクではないはずです。 それを言って、あなたは このStackOverflowの質問で与えられた推薦とhttps://stackoverflow.com/questions/に与えられた推薦にいくらか運があるかもしれません50371 / subversion用のbetter-merge-tool-this [これ]。 申し訳ありませんが、どの情報を特に検討したいのかについて、これ以上情報を提供することはできません。


1


ここでは「保存」の意味が重要だと思います。 シーケンス番号が「ほとんど意味がない」と言った場合、その「ほぼ」にはシーケンス以外のものも含まれていますか? Dreamtimeでは、あそこにプログラムのフローチャートの一種をエンコードしていました(あなたはBrooksのMythical Man Monthの初版に例を見つけることができます)が、そのやり方はありがたいことに死んでしまいました。

シーケンス番号列の唯一の意味が数字の順序付きシーケンスである場合。 @ Alexのアプローチ、つまり現代のVCツールのどれでもスクリプトからファイルを前処理することができます - そして、ファイルを抽出するときは、同様のツールを使用してレコードを再度シーケンスし直すことになります。


1


(開示:私はこの答えで説明されたツールのベンダーを表します)。

あなたが欲しいものはあなたが文字でそれを埋めたという事実にかかわらずコラム72-80のものが「空白」であることを理解しているdiffツールです。

http://www.semanticdesigns.com/Products/SmartDifferencer/COBOLSmartDifferencer.html[Empty Designs COBOL Smart Differencer]には、これを問題なく理解できるIBM Enterprise COBOLの変形があります。

SDはSmart Differencersをさまざまな言語に対応させるものであり、IBM Assemblerは将来のターゲットです。 興味のある方は、IBM Assembler用のSmart Differencerについてのディスカッションについては、SDにオフラインでお問い合わせください。