CVS 1.3
RCS board: http://pc5.2ch.net/unix/ Working thread: CVSスレ head: 1.3 branch: locks: strict access list: symbolic names: keyword substitution: kv total revisions: 3; selected revisions: 3 description: CVSを使ってファイル管理している人の質問と情報交換スレ。 >>22 そこwincvs specificな話ばっかりじゃねーか でも見てるとUNIXだと問題にもならんようなネタばっかだぜ。 そーいやこないだコマンドラインからは問題ないけどスクリプトからだと cvs update できなくてちょっとハマった。 結局 zlib のバージョン違いが原因らしく -z3 外して治ったんだけど、皆も これに遭遇してたりする? ttp://cgi.NetLaputa.ne.jp/~kose/diary/?200403b&to=200403161#200403161 CVS内で使われるdiffってなんなの? 本物のdiffのサブセット? >>29 だって本物のdiffと比べて、使えるオプションとか全然違うじゃん。 cvsがラッパーになってオプションを置き換えつつ本物を呼んでるのか それとも中にdiffのようなものがあってそれをコールしてるのか。 じゃあ偽者でもいいや とにかく、cvsが使ってるdiffと、/usr/bin/diffにあるdiffとは オプションも動作も似てるけど別物だから 困っちゃうよね という話 スマソ 違った cvs diffがrcsdiff呼んでdiff(1)が実行されるのですね その過程でオプションがもぎ取られていくのでは >>38 二言目には「ソース見れ」ってのは よくない風潮だよ OK cvsの仕様バグってことがわかったので ありがとう >>39 なんでも「ソース見れ」はよくないが 今回の件はソースを読むのが一番早くて確実でしょ。 pserverを立てる方法は結構いろんなサイトに載ってたりするのですが extの立て方を立てるサイトがなかなか見つかりません。 説明されているサイト等を教えていただけませんでしょうか。 どうせならRCSのスレにしようぜ って誰も使ってネーーーーーーーー あーたのしーー branchとタグの話を詳しく解説したサイトってない? Free BSDの場合とかも知りたい。 branch ってのはあれだ。 朝飯だか昼飯だか分からん様な時間帯に食う飯のことだ。 すいません、教えてください。 とあるオープンソースのソフトを改造しようと思って自前のリポジトリに入れてみたんですが、 // $Id で始まる行が変えられてしまっていました。これってCVSの管理用キーワードということ らしいんですが、みなさんこういう(元々CVSで造られたものを新たにリポジトリに入れる)場合って どうしてますか? 気にしない? >>54 ttp://www.sodan.org/~penny/vc/cvs-ja_12.html#SEC100 OpenCVSキタ━━━━━━━━━━(゚∀゚)━━━━━━━━━━!!!!! http://www.opencvs.org/ しかしCVSと同機能+αなものを、綺麗に実装しなおしてくれるなら 喜ばしいことだ。 俺がイメージキャラクターを書き直してやるよ CVSたんって今何歳だっけ >56 どもです。 $Idとかって絶対必要なのかといつの間にか勘違いしてしまっていました。 別に無ければ無くていいみたいなので、cvs import -koしました。 cvs で www を管理するとします。 そのとき、local copy を cvs commit させたものを httpd から見えるようにするには、自動的に cvs update するよう cron を設定する のが普通ですか? >>63 メール通知を利用するのがいいんではないだろうか。 commitinfoにcheckoutするscriptを指定するのが一般的と思う。 でも権限に気をつけれ。 installスクリプト作っとくとかmake installするとかじゃだめかね cvs update するものが多重起動した場合の処理、ファイルが むちゃくちゃ多くなって cvs update に時間がかかるように なった場合の問題、CVS/ ディレクトリのアクセス制限処理、 単に static なファイルを取り出すだけじゃなく、HTMLを なんらかのデータ等を元に自動生成するようなページがある場合、 など、状況によりけりだと思う。 WinCVSのように unixのCVSも日本語でログ付けられるんでしょうか? >>70 コミット時に起動するエディタが日本語入力に対応してれば ログメッセージは日本語にできる. 日本語入力できなければ, 引数で %cvs ci -m 'ホゲホゲ' >>72 「シェルで日本語入力」って意味が分からん。 kinput2とか使って貼りつけるって事か? >>74 たとえばbashで8bit目を落とすような設定になっていたりすると (たとえコピペでも)アウトとかね。 それはもうCVSとは関係ない問題になってしまうよ。 レポジトリにある、特定の日付のスナップショットをチェックアウトすることってできますか? プロジェクト名/サブプロジェクト名/hoge/piyo ってなっててサブプロジェクトのモジュールのみをとりだして使いたい場合 サブプロジェクト以下のファイルだけをcheckoutすることはできますか? >>79 こういうこと? cvs co -d サブプロジェクト名 プロジェクト名/サブプロジェクト名 変更のあったファイルだけを表示したいので、 cvs update | grep -G '[AM] ' とかやってみたのですが、これでも「cvs update: Updating hoge」とかが 表示されてしまいます。変更ファイルの情報のみを表示するにはどうしたら いいでしょうか。 シェルはbashです。 >>82 ~/.cvsrcに cvs -q diff -u とか書いとくと便利。あと update -dP checkout -P とかも。ただし-PはCVS管理対象のファイルが一個もないディレクトリを消して しまうものなので、場合によっては不便かも。 「-q」なんてオプションあったんですね。 設定ファイルも初めて知りました。 ありがとうございます。 $ cvs up 2>&1 | grep ^[AM] とかゆー話なら シェルスクリプト総合 その1 http://pc5.2ch.net/test/read.cgi/unix/1101820646/ >>85 う、むしろそうゆー話だったかもしれません。 何じゃこのリダイレクトは…。orz 勉強逝ってきます。 CVSサーバで管理されてるあるモジュール配下の、ディレクトリ名やファイル名を取得してツリー表示したいんですけど、 クライアントからコマンドで実現するとしたら、どんな手段がありますか? いったん対象をすべてチェックアウトして、その情報から一覧を作成するというのはナシで。 >>90 自前でpserverプロトコル喋ってがんばる >>91 それはpserverプロトコルでできることを確認して書いてるんだな? >>90 コマンドとか言わんとeclipceかwincvs eclipseのCVSリポジトリービューってあるじゃないですか。 あれと同じような機能のビューをプラグインで作ることになって。 今はWindowsのコマンド叩いてますが、eclipseのプラグインから呼ぶ場合って、 他の手があるのですか? pserver立てる時に 「/etc/inetd をいじる」 とどの説明書きにも載ってるんですが ウチのredhatにはそんなファイルないです。(xinetdだったらあるけど。) 代わりのやりかた教えてください >>95 みたいのは既にCVSの問題じゃないんだってば。 >>95 >>98 $ info cvs を実行して、「/server_args」と入力してEnter押してみな。ちゃんと xinetdの設定ファイルの書き方があるだろ。xinetd自身はLinux特有じゃない からLinux板じゃなきゃいけないこともないよ。 100ゲト。 >>90 cvs-1.12系だとcvs rls -R とかでいけそうだね。 どうしてわざわざsubversionを使わないのかが分からない >>102 fsfsをバックエンドにするとそれなりにスピードが出るよ。 webのコンテンツを根こそぎsnapshot取るのに使っているけど いまのところSJISのファイル名(「コピー 〜 foo.gif」とか)に 遭遇しない限り問題なく動くしね。 あとまだ試してないけど、WebDAVではなくsvnserveモードで使えば 違いがあるのではないかな? ViewCVS と cvsweb ってどう違うの? プロジェクト内 web サーバにどっちか動かそうと思っているのですが、 ViewCVS や cvsweb のページを見てみても、機能の違いがわかりません。 どっちもほとんど同じ? 細々とした部分では ViewCVS が好き。 でも ViewCVS の diff が ediff ではないので cvsweb を使ってる。 CVS で、commit すると、Version .... な行の日付とかを書き換えてくれるけ ど、これを書き換えさせないためには、どうしたらいいの? 質問です。 NTサーバのpserverをLinuxから使いたいんですけど、ドライブ名ってどうやって指定したらいいですか? 例えばDドライブにリポジトリがあるときに、 % cvs -d :pserver:ユーザ名@ホスト名:d:/hoge/CVSROOT login cvs login: CVSROOT may only specify a positive, non-zero, integer port (not `d:'). cvs login: Perhaps you entered a relative pathname? cvs [login aborted]: Bad CVSROOT: `:pserver:ユーザ名i@ホスト名:d:/hoge/CVSROOT'. % cvs -d :pserver:ユーザ名@ホスト名:/d:/hoge/CVSROOT login Logging in to :pserver:ユーザ名@ホスト名:2401/d:/hoge/CVSROOT CVS password: Bad repository root '/d:/hoge/CVSROOT' となります。 windowsでwincvsからなら使えてます。 よろしくお願いします。 ここに書いてあるようにしてもだめでした。 http://lists.gnu.org/archive/html/info-cvs/2001-11/msg00615.html % cvs -d :pserver:ユーザ名@ホスト名:/d//hoge/CVSROOT login Logging in to :pserver:ユーザ名@ホスト名:2401/d//hoge/CVSROOT CVS password: Bad repository root '/d//hoge/CVSROOT' :pserver:user@host:2401:D:/hoge/cvsroot じゃどう? % cvs -d :pserver:user@host:2401:D:/hoge/CVSROOT login cvs login: CVSROOT may only specify a positive, non-zero, integer port (not `2401:D:'). cvs login: Perhaps you entered a relative pathname? cvs [login aborted]: Bad CVSROOT: `:pserver:user@host:2401:D:/hoge/CVSROOT'. となりました。 使えてるwincvsの設定では :pserver:user@host:D:/hoge/CVSROOT と書いてあります。 parseがうまくいってないだけな気がするから、 unix側のcvsを適当に書き変えちゃえばいいんじゃ >>115 いろいろ試してるんですけど、うまくいかなくて。 ""とかいろんなところに入れてるんですけど。 zshがいけないのかと思ったけど、shでも同じでした。 すいません、初心者な質問です。 CVSサーバのリポジトリに登録してあるモジュールをcheckout した場合、checkoutした人がモジュールをcommitしないと他の人が そのモジュールに対してcheckoutなり、手を加えられないといった ことはおこりませんよね? 例えば、Aさんが"hoge"ディレクトリをcheckoutしたら、Bさんは Aさんが"hoge"ディレクトリをcommitするまで、hogeディレクトリ に対してソースを見る事はできるが、手を出せないといったことは 起こるんでしょうか?用語を間違っているところがあるかもしれませんが よろしくおねがいします。 起きません。 ただし、B氏がcoした後でA氏がciした場合、 B氏はまずupしなければciできなくなります。 upした時に、競合があれば解決してciという流れ。 すばやいレスありがとうございます! なるほど、そういうこともあるんですね。 CVSやSubversionのチェックアウトは、とくにロックをかけずに 「単に作業用コピーとしてローカルに持ってくる」だけ。 基本的には同時に複数の人が別々に作業できる。同じファイル を弄ることも可。 弄る箇所が違えばほぼ自動的に他人の変更箇所も取り込める。 同じ箇所を弄れば衝突箇所が発生しうるが、そこは開発者同士の コミュニケーションで解決する。 >>117 そういうことでしたか。 cvsのソースみてみたけど、よくわからない。。。 read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる