問題タブ [rcs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
version-control - RCS でフォルダーを操作する
私はチュートリアルに従っていますhttp://www.burlingtontelecom.net/~ashawley/rcs/tutorial.htmlRCS を使用してファイルを操作する方法について説明します。これはうまく機能しますが、ファイルが 1 つしかありません。ディレクトリを含むRCSファイルを作成する方法はありますか?
myprojectという名前のプロジェクト フォルダーがあり、このディレクトリにそのプロジェクトのすべてのファイルがあります。myprojectフォルダーとその中にあるすべてのファイル のリビジョン管理システムを作成したいと考えています。
emacs - XEmacs は RCS データを読み取れませんが、私の emacs は読み取ります
通常、私は cygwin emacs (2011 年からのバージョン 23.3.1) で RCS を使用し、ステータス バーに
ァイルをチェックインおよびチェックアウトできます。Windows 用の最新のネイティブ XEmacs (2009 年 1 月の 21.4.22) をダウンロードしたところ、現在の RCS データが RCS モードをトリガーしていないことに気付きました。表示される状態は cygwin emacs で開くと、すべて問題ありません。インストール中に、RCSオプションとして「VC-RCS」のみに気付きましたが、旧標準のRCSではありませんでした。xemacs ではまったく機能しなかったか、何年も使用していなかったのでまったく気づかなかった xemacs だけに変更が加えられたのだと思います。
xemacs で単純な古い RCS サポートを取得するにはどうすればよいですか?
eclipse - Eclipseには、ローカルワークスペースの個人的なバージョン管理のオプションがありますか?
Eclipseには、ローカルワークスペースの個人的なバージョン管理のオプションがありますか?追加のインストールを必要としない自動更新を介して取得できるバージョン管理プラグインのように?
diff - .patch ファイルの適用
.patch ファイルを 1 つのファイルに適用したいと考えています。両方を同じフォルダーに配置して、これを試しました
しかし、出力に見られるように、失敗しました。install.sub.rej の内容は、基本的に lalala.patch のすべてのコードです。同様のコマンドを試しましたが、同じ結果が得られました。私は何か間違ったことをしていると思います。
パッチを適用するのはたった 1 つのコマンドであることはわかっていますが、これにはとても戸惑っています。誰かが私にコマンドを教えてくれた場合、またはファイルに直接パッチを当てた場合(そしてコマンドも教えてくれました)ありがとう
元のファイル http://pastebin.com/raw.php?i=PKru8m5r パッチ: http://pastebin.com/raw.php?i=kkMUHtj8
mercurial - RCS/CVS .v ファイルの履歴を調整するスクリプト
Mercurial への移行の準備として、何千もの ,v ファイルに体系的な変更を加えたいと考えています。(オリジナルのコピーを編集して、急いで追加します。)
私が求めている種類の変更の例:
- メッセージが既知のユーザー名を示すテキスト (例:
[Fred Bloggs]
) で始まる各リビジョンについて、コメント内のユーザー名が .v ファイル内の作成者と一致する場合、不要なユーザー名テキストをコミット メッセージから削除します。 - ,v に有用な説明が含まれている場合は、それをリビジョン 1.1 のコミット メッセージに追加します (cvs2hg は説明を無視しますが、多くの CVS ファイルは実際には RCS から取得したものであり、最初のコミット メッセージを説明フィールドに簡単に入力できます。間違い)
- 特定の共有ユーザー アカウントから行われた編集については、コミット メッセージの内容に応じて作成者を調整します。
私が検討したこと:
- 個々の .v ファイルごとに 'cvs log' を実行します - 出力を解析し、
rcs -m
この履歴を変更するために使用します。これには次のような問題があります。- テキストファイルを渡す方法がないようです
rcs -m
- そのため、リビジョンメッセージに一重引用符や二重引用符が含まれている場合、または複数行にまたがっている場合、スクリプトでそれを正しく引用するのは非常に困難です - リビジョンに関連付けられた作成者名を変更するための rcs または cvs 機能が見当たりません
- それほど重要ではありませんが、膨大な数のプロセスが開始される可能性があります-遅くなる可能性があると思います
- テキストファイルを渡す方法がないようです
- .vファイルを解析し、内容を調整するPython を作成します。これには次のような問題があります。
- ,v ファイルには、テキストであるはずのバイナリ ファイルやその逆の行末が混在しているため、ファイルが破損しないように細心の注意を払う必要があります。
- @ 文字が複数行コメントの行頭にある場合は、コミット メッセージで @ 文字を引用する際に注意が必要です。
- コミットされたファイルの最後の行が変更され、改行がないリビジョンでも注意が必要です。
\n
- 使用しているcvs2hgのバージョンを複製し、そのコードを調整して目的の編集をインプレースで行います。
作業が少ない他のアプローチや、この種の機能を実装する既存のコードはありますか?
svn - RCS/CVS の .v ファイルを修復するツールはありますか?
私は、CVS および RCS リポジトリを Subversion に大量に変換しています。時々、破損した .v ファイルに出くわします。これらを手動で修復する方法を見つけましたが、面倒になってきました。私の最新のプロジェクトには、手動で修復するよりも多くの破損したファイルがあります。
そのため、RCS ファイルを解析して修復するツールが必要です。これは、一部の古いバージョンが不完全になることを意味する可能性があります。たとえば、バージョン 1.1 が欠落しているケースを見たことがあるので、欠落していることを示すコメントを付けて空のリビジョンを追加するとうまくいきます。
そのようなツールを見つけようとして多くの検索を行いましたが、何も見つかりませんでした。私は自分のツールを書き始めようとしていましたが、最初にここで聞いてみるべきだと思いました.
コードのスナップショットを取得してインポートするだけでよいことはわかっています。必要に応じてそれに頼ります(これらの提案を回避するためだけに:)
++ありがとう
mercurial - リポジトリの構造に関するアドバイス
私は応用数学者であり、最近、科学的応用のための生産コードの開発を含むプロジェクトに参加しました。コードベースは小さくなく、Webアプリケーションの一部としてデプロイされます。
私が参加したとき、コードはリビジョン管理システムなしで奇跡的に維持されました。サーバーには中央フォルダーがあり、研究者はコードを操作する必要があるときにそこからコピーしていました。このルートディレクトリ内には、コードのバージョンが異なる一連のディレクトリがあったため、人々は見つけた最新バージョンで作業を開始し、変更を加えて新しいバージョンを作成しました。
Mercurialリポジトリを作成し、それにすべてのコードバージョンを追加して、すべての人にそれを使用するように説得しました。ただし、Mercurialに移行して以来、バージョン番号をアップグレードする必要性はほとんど感じられませんでした。厳しい使用でも、hg copy
改訂履歴を保持することができます。
ここで、このコードベースを維持するためのベストプラクティスに関するアドバイスが必要です。RCSの下で、異なるバージョンのフォルダーをリポジトリに保持することは意味がありますか?コードの単一のコピーをリポジトリに保持する場合、バージョンを追跡する最も一般的な方法は何ですか?READMEファイル?バージョンを指定するリポジトリの外部にコードのスナップショットを保持する必要がありますか?物事をそのままにしておくのは理にかなっていますか?どのような戦略を使用していますか?
私たちのチームはたくさんの科学者であり、そのようなレポを維持する方法については誰も経験がないので、私は一般的に行われていることに興味があります。
linux - サーバー上の CVS ファイルの現在の HEAD バージョンを取得する
このコマンドを使用して、CVSサーバーrlog
自体のファイルへのコミット ログを分析できます(つまり、" " で終わるファイルに直接アクセスします)。それはいいです。,v
そのファイルの現在の HEAD バージョンを stdout に出力する同様のコマンド ライン ユーティリティはありますか?
これは、PHP で作成されるカスタム CVS ステータス ユーティリティ ( ViewVCのようなものですが、特定のリポジトリ用に特別に作成されたもの) に必要です。
git - 多くのプロジェクトで構成される bzr リポジトリの作成方法
多くの小さなプロジェクト、ファイル、パッケージ、iso などで構成される大きなプロジェクトがあり、これらのファイルを何らかの制御システムに保存したいと考えていますBazaar
。
問題は、一部のプロジェクトが既に git または bazaar の下にあることです。プロジェクト/ファイルの構造を変更する必要はありません。
何かアイデア、助けて?
version-control - Windows 上の RCS - rcsmerge は常に失敗します
私は公式のPurdue RCS ホームページから Windows 用の GNU RCS バージョン 5.7 を使用しています。rcsmerge(1) コマンドを使用して異なるブランチからの変更をマージすると、次のエラーが発生します。
毎回。なぜこれが起こるべきなのか(少なくとも10年前にこの問題が議論されているのを見たことがあります)、修正方法を知っている人はいますか? GNU 現在の RCS リリース 5.8.1 では修正されていますか? もしそうなら、誰かがこのリリースの Windows バイナリを教えてくれますか?
2012 年 10 月 22 日更新: 現在の GNU diffutils 2.8.7 と同等の Purdue ディストリビューションで提供される diifutils(cmp、diff、diff3、merge) を切り替えました。これでsubsidiary program failed
エラーはなくなりましたが、今The filename, directory name, or volume label syntax is incorrect.
では rcsmerge または diff3 の呼び出しごとに正確に 2 回発生しています。これは Windows のエラー メッセージのようです。