1 :
コンサルタント :
03/03/10 11:10
No entry for CVS in section 2 of the manual
3 :
名無しさん@お腹いっぱい。 :03/03/10 21:54
それじゃあ、皆さんの職場での CVSを使った運用方針を教えてください。 いろいろな意見があるみたいなんで、 お互い参考になるのではないかと思うのですが。
>3 CVS は使っていません 全て手動管理です
5 :
名無しさん@お腹いっぱい。 :03/03/10 23:03
6 :
名無しさん@お腹いっぱい。 :03/03/10 23:23
特定のバージョン取り出そうとしたら 急にわけわからんようになるな stickyがどうとか
>>6 新規にcheckoutする方がいいと思われ
この間、枝を作ったつもりが普通にタグを打っただけになってて、 commitしようとしたら「sticky tag付いてるからcommitできねーよ」 とか文句言われてしばらく悩んでしまった。
subversion の場合タグ打ちブランチ分けって
コピー(svn copy)するだけなんだっけ?
特定のリビジョンを覚えておけばいいだけだし DB 内で
すごく簡単に済んでそう。
http://svn.collab.net/repos/svn/ ここではタグとブランチを別ツリーに分けてるけど
実質タグというものがないので
>>8 みたいにタグのつもりの
ツリーにも commit できそう。
>>6 % cvs update -rリビジョン番号 パス名
とか
% cvs update -rタグ名 パス名
とかしてない?
これだと、sticky tag がついちゃうから、そうなる。
sticky tag をつけたくないなら、
% cvs update -rリビジョン番号 パス名 > パス名
とかして取り出した方がいいよ。
>>10 > sticky tag をつけたくないなら、
> % cvs update -rリビジョン番号 パス名 > パス名
-pオプションが抜けてる。
>>10-11 それだと、CVS/Entriesの情報と実際のファイルの内容が食い違ってしまう
>>12 別ディレクトリに出力させればいいだけだろ?
戻りたいときに -A 付けて update すれば良いだけじゃないの? ハマりやすいのは確かだけどさ。
質問をお願いします。 project/ project/subdir1/ project/subdir2/ サブディレクトリがあり、その中身にも複数変更がある時に project/ で % cvs ci すると、以前は全てのファイルをひとまとめにして一回だけログを聞いてきたのですが、 いつからかディレクトリごとに個別に聞いてくるようになりました。 (設定などは全くいじっていません。ただ、FreeBSD全体のアップデートは 何回かしています。現在は4.7-Stableです) 元の挙動に戻すにはどうすればよいのでしょう?
>>12 あ、その通りっす。すんまそん。ありがと。
>>14 良くあるのが、バグ入りバージョンをコミットしてしまって、
とりあえず前のバージョンに戻したいって場合なんだけど、
それだと -A じゃまずいんだよねえ。
あと、sticky tag がついているのを忘れてしまうとか、そも
そもついていることに気づかない人を良くみかけるのが、10の
ように勧める理由。
もちろん、分かっている人が -p なしで使うのは止めません。
そういうときは cvs update -j今 -j一個前 file とかするんでは?
確かに、そっちを教えた方が、一般的に使えていいかなあ。 でも、自分は cvs update -p -rリビジョン | less とか良く 使うので、update -p -rリビジョン の方も教えておく価値が あると思うんだよね。で、特定のバージョンに戻したい時には、 update -p -rリビジョン の方がむしろ素直だと思うんだけど、 どうかなあ。
CVSweb から wget、これ最強。
>18 ひとそれぞれ
>>18 「特定のバージョンに戻したい時」にはね。
>>16-17 は、バージョン自体を戻すんじゃなくて、新しいバージョンをciする
ためにbackoutする場合じゃないかと。
>>17 cvs up -prRev file > file
と等価なのは
cvs up -C -jRev -jPRev
じゃないかな。つまり -j だとlocalな修正があってもマージするので
その結果conflictが起きるとそれを解消しないといけなくなる。
そんな細かいことはどうでもよい
>>23 細かいことを気にしたくないならバージョン管理ツール
なんて使わずtarでも使ってればいいです。
(^^)
はい、それから〜
27 :
名無しさん@お腹いっぱい。 :03/03/24 21:50
シェルスクリプトを CVS 管理しています。 cvs update すると、ローカルに落っこちてきたファイルの アクセスパーミッションが以下のようになります。 -r--r--r-- (CVSREAD にしているため) シェルスクリプトのみ、cvs update してきたときに、ローカルで -r-xr-xr-x にしたいのですが、こういうことはできるでしょうか?
誤:(CVSREAD にしているため) 正:(CVSREAD = 1にしているため)
+x だけはパーミッション保存されるはず (デフォルトでは)
コミットするときに +x つけわすれたんじゃないの。 レポジトリで *,v を chmod すればいいよ。 ワークスペースからどこかにインストールする形なら そのついでに chmod するような makefile 書く方がいいと思うけど。
32 :
名無しさん@お腹いっぱい。 :03/04/11 06:30
RedHat8.0のcvsコマンドなんですが、cvs dif などの際に、レポジトリ に存在しないファイルが ? XXX.txt などと表示されず、不便です。 表示するようにするにはどうしたらいいんでしょうか?教えてください。
1.11.2 です。
>>32 * 通常のcvsとRedHat8.0のcvsのソース差分を見て調べる
* 自分でcvsをmakeしてそっちを使う
35 :
名無しさん@お腹いっぱい。 :03/04/12 13:37
CVSって信用できるの?
貴方よりは。
バターナイフは木を切り倒すのには全然使えないけど、 パンにバターを塗る時には最強の道具だよ。
チェーンソーは
>>38 を始末する時には最強の道具だよ。
パンにバターを塗るのにはちょっと不向きだけど。
cvs(1) なのにどうしてタイトルは CVS(2) なのかしら。。。 くくくのくーん。。。
>40 システムコールだから
そのうちゲームになるのか…
43 :
名無しさん@お腹いっぱい。 :03/04/12 16:04
CVSの設定でリポジトリが複数ある場合はどうするの?
環境変数で切り替える
>>43 >>44 か
cvs -d CVSROOT
ちっとはmanとか--helpとかみろや。
普通の利用法なら cvsroot の (明示的な) 指定は checkout のときぐらいしか必要ないしな
ホームページ全体のスナップショット取っておくのにCVS使ってるひといますか? なんかファイル名も文字コードもファイル配置も、たまに変わるのですが・・・
スナップショットつうかサイト全体をCVSにつっこんでるよ。 > なんかファイル名も文字コードもファイル配置も、たまに変わるのですが・・・ こういうことが起こったことは一度もないなあ。文字コードは編集のときに 違うコードで保存してしまってる(オペミス)んでしょたぶん。ファイルの配置が 変わるってのはありえんような気がするな。それもオペミスでしょうたぶん。
「ホームページ全体」って何よ?
51 :
名無しさん@お腹いっぱい。 :03/04/16 21:55
>>50 いいたい事がわかってるくせに
いちいち意地悪な揚げ足取りしか出来ないんだね。
自分の性格悪いなあって思わない?
間違いがわかってるんなら指摘してあげたらどうだい?
>>51 >>48 の言いたいことはおれにはわかんないよ。
自アカウントのページ全体なのか、
(Apache で言う) DocumentRoot 以下なのか、
両方を含むのか。
どっかよそのサーバのページをごっそりとってきて
CVS につっこんでるのか。
もしくはそれ以外の何かなのか。
つーか、「ホームページうんぬん」は
ファイル名や文字コードやファイル配置が変わるのに関係あるのか?
頭に来るとすぐ age で脊髄反射レスする方が性格悪い
ageの件、以後気をつけます。
>>50 =52
48の言っている意味がわからなくて、でも何かしら
回答してあげたいという心優しき気持ちがあるならば、
はじめから52のように書けば良い。
俺も一瞬、性格悪い奴だなって思ったぞ。
でも52には少し感心したぞ。
>55
漏れは
>>50 ではあるが
>>52 ではない
かつ、回答しようなどとはつゆほども思っていない
ぶちこわし。。。
ぶち壊し云々以前の問題として、質問者の姿が見えないのだが。
59 :
名無しさん@お腹いっぱい。 :03/04/17 00:08
>>58 つーか、そんなの常時監視してるわけ無いじゃん。
俺も質問したら翌日確認してるよ。
何を言いたいのかわからん質問で、なおかつ質問者がいないんじゃ どうしょうもないヽ(´ー`)ノ 戻って来ない限り、この話題は終了ってことで。
61 :
名無しさん@お腹いっぱい。 :03/04/17 00:30
あしたまで待ってやれよ。
>>56 > 漏れは
>>50 ではあるが
>>52 ではない
ガ━━(゚Д゚;)━━ソ!
違ったのか。恥かいちゃった…。
( ̄ー ̄)ニヤリッ
(^^)
65 :
名無しさん@お腹いっぱい。 :03/04/19 02:53
age
∧_∧ ( ^^ )< ぬるぽ(^^)
67 :
名無しさん@お腹いっぱい。 :03/04/22 04:07
質問させてください。 キーワード展開($Id$とか)でチェックアウト日付をローカルタイムで展開するためには、 どうすれば良いんでしょう? ちなみにRCSの場合には環境変数RCSINITに"-zLT"を指定してますた。(うろ憶えだけど)
>>67 キーワード展開とチェックアウトの日時は関係ありません。
んで、commitした日時だとして、結論は前スレ参照。
考え方を変えるのをお勧めする。
historyなら-zLT使えます。
CVSにファイルの日付をローカルタイムで展開するオプションが導入されたら、
PDTだとかなんだとかが日本時間でいつになるか、全部頭に入れなくちゃ
ならなくなるのは目に見えているので、個人的には勘弁願いたい。
>>68-69 ありがとうございます。
>キーワード展開とチェックアウトの日時は関係ありません。
うぉー、その通りでつ。
>んで、commitした日時だとして、結論は前スレ参照。
前スレ見れないっす(T_T;
>historyなら-zLT使えます。
historyってなんでつか?
>PDTだとかなんだとかが日本時間でいつになるか、全部頭に入れなくちゃ
日本時間の場合だと「時間+09 JST」みたいにUTCからの時差が表示に含まれるから、
覚える必要はないと思うんですが?
>>70 書き忘れ(どうでもいいかもしれないが)
>>68-69 え〜ショックー!!、、、でも、ありがとう。(T_T;
73 :
名無しさん@お腹いっぱい。 :03/04/25 09:09
CVSをproxy通すにはどうすればいいの?
74 :
(・∀・)y−~~~ :03/04/25 09:14
75 :
JGreener :03/04/25 13:53
ども。 今までeclipseでJava使いだったのですが、 今度の仕事でC#を使う羽目になりました。 ひいては、CVSを使いたいのですが、M$の製品からCVSを便利に使う方法はないでしょうか。 よろしくお願いします。
eclipse 2.0 で cvs の設定にコンソールに出力するオプションが あったんだけど、これって 2.1 で無くなったんでしょうか。
80 :
名無しさん@お腹いっぱい。 :03/05/02 17:06
Linux板とのマルチポストで失礼します。 SSH経由でCVSを使おうと思っていますがうまく行きません。 $ cvs -d mona:/cvs co morarah xxxxxxxx@mona's password: TERM: Undefined variable cvs server: cannot open /cvs/CVSROOT/config: Permission denied Cannot access /cvs/CVSROOT Permission denied 秘密鍵と公開鍵は以下の場所に置いてます。 mona鯖 ~/.ssh/authorized_keys2/id_rsa.pub ~/.ssh/authorized_keys2/id_dsa.pub ~/.ssh/identity.pub クライアント ~/.ssh/id_rsa ~/.ssh/id_dsa ~/.ssh/identity 環境変数CVS_RSH="ssh"も設定しています。 どなたかおわかりの方はいらっしゃいませんでしょうか?
Permission deniedって書いてあるように見えなくもない。
>>81 それが鯖の管理者がパーミッションかけていないと言い張るもので・・・
もう一度聞いてみようかな
ありがちなのは /cvs か /cvs/CVSROOT ディレクトリに mona の x パーミッションがないとか
クンクンは CVSROOT と CVS_RSH にこんな値を設定しているわよ
export CVSROOT=:ext:
[email protected] :/home/hanajan/CVSROOT/
export CVS_RSH=ssh
これで試してみたらどうかしら。。。
クククのクーソ。。。
とりあえず、2つ間違えていることが分かりますた。 1.authorized_keys2をディレクトリにしてしまっていた(本当はauthorized_keys2というファイル) 2.cvs コマンドが間違えていた。 cvs -d :ext:mona:/cvs co morarah が正解。 これでもまだ"Permission denied"ですが・・・ 鯖側の問題のような気もする
>>85 以外は鯖管理者のミスでした。
お騒がせしました。
みなさんありがとうございました。
>>80 1. ssh xxxxxx@mona でリモートログインが可能かどうかを
先に調べられては。
2. 84さんの様にユーザーを指定されてはいかがでしょう。
3. つまるところは
cvs server: cannot open /cvs/CVSROOT/config: Permission denied
でしょうね( ;´∀`)
Σ( ´∀`) 間に合わなかった(w
>>88 既に解決したのですが。
1についてはできていました。
2については
>>85 のミスでした。
cvs -d :ext:xxxxxxxx@mona:/cvs co morarah
3については確かに鯖管理者が完全にパーミッションを設定していなかったようです。
>>89 ( ^∀^)
>>91 他のクンクン (○係 とか ○式 とかいうの) が復活したとき
または
「【クンクン】女の子専用のスレッドなの。。。【スレ】」
を hanajan 師匠が立てたとき
ククーン。。。
94 :
名無しさん@お腹いっぱい。 :03/05/08 16:11
あるユーザに、checkout と checkin は許可したいが add は許可したくない、などということはできますか?
>>94 ファイルにはユーザから書き込めるようにして、ディレクトリには書き込めないようにリポジトリの
パーミッションを指定すればよい。
co, ci, add 全てできるグループと co, ci だけを可能にするグループをあらかじめ作る(mona ⊂ giko)
$CVSROOT/2ch っていうプロジェクトがあったら、
2ch/itteyoshi.c, 2ch/omaemona.h とかにはgikoに書き込み許可をあたえて、
2chディレクトリにはmonaグループのみに許可をあたえれば良い。
>95 ロックファイルを作成できなくなるのでは?
>>95 そもそも、ファイルのパーミッションは関係ないよ。
CVSはファイルを消してから再度作成するので、ディレクトリのパーミッションにだけ影響を受けるのよん。
だから、ロックファイルの作成場所は設定で変更可能だけど、
それを解決したとしても、
>>95 のようなことすると、gikoはciもcoもできなくなるよ。
>>97 > だから、ロックファイルの作成場所は設定で変更可能だけど、
それ知らなかった。どうやんの?
99 :
名無しさん@お腹いっぱい。 :03/05/13 00:55
CVSリポジトリを他のホストに移したいんですが、CVSROOT以下をまるまるコピー すればいいの?
うん。
既にcheckoutしているworkspaceがあれば移動前のレポジトリを使わないように注意よん。
>>98 スマソ。今確認してみたら、そんな機能はなかった。
configure --helpした時に「あ、あるんだ」と思った記憶があったんだが…。
逝ってきまつ。
たびたびゴメン。 やっぱりあったよ。configureのオプションじゃなくてCVSROOT/config だった。 以下、Infoよりコピペ: LockDir=directory Put CVS lock files in directory rather than directly in the repository. This is useful if you want to let users read from the repository while giving them write access only to directory, not to the repository.
105 :
名無しさん@お腹いっぱい。 :03/05/14 22:20
checkoutするときに.cvsignoreを無視したいのですがどうすればいいですか
`-I !'は不可らしいので % rm .cvsignore
% setenv CVSIGNORE ! でもいいのかな。でもrm(mv)の方が早そう。
すいません、cvsツリー自体はいじらない方向でお願いします
ツリー自体いじらずにどうやってcheckoutするのかと(ry
>>109 % cvs -n co
で万事解決問題ナシ!
携帯ゲーム機"プレイステーションポータブル(PSP) このPSPは、新規格UMD(ユニバーサルメディアディスク)というディスクを利用しており、そのサイズは直径6cmととても小さい(CDの半分程度)。 容量は1.8GBとなっている。 画面は4.5インチのTFT液晶で、480px x 272px(16:9)。MPEG4の再生やポリゴンも表示可能。外部端子として、USB2.0とメモリースティックコネクタが用意されているという。 この際、スク・エニもGBAからPSPに乗り換えたらどうでしょう。スク・エニの場合、PSPの方が実力を出しやすいような気がするんですが。 任天堂が携帯ゲーム機で圧倒的なシェアをもってるなら、スク・エニがそれを崩してみるのもおもしろいですし。かつて、PS人気の引き金となったFF7のように。
━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―
113 :
名無しさん@お腹いっぱい。 :03/05/27 01:28
バカな後輩が変なモノをcommitしてしまったので、 そのcommitをレポジトリ自体から消し去り、 レポジトリを後輩がcommitする直前の状況に戻したいのですが、 そういうことってできますか? そのファイルにはそれ以来commitはしていません。
>>113 cvs admin -oリビジョン ファイルネーム
だったかな。
#最近CVS使ってないので忘れ気味…
115 :
名無しさん@お腹いっぱい。 :03/05/27 02:01
>>113 馬鹿なことをしたことも記録しておくのが基本じゃないのかな...
漏れだたら普通にリビジョン指定して
cvs update -p hoge.c > hoge.c
cvs ci
>>114 ,116
アドバイスありがとうございます。
マニュアル読んでもどれがいいのかわからないので助かります。
アドバイスのコマンドを調べてから試してみます。
>>114 の方法でバッチリでした。
サンクスです。
119 :
名無しさん@お腹いっぱい。 :03/05/27 23:09
TurboLinux8ServerにCVSを入れようとしています。
あらかじめrootでログインしてインストールしています。
「CVSによるオープンソース開発、Karl Fogel, Moshe Bar, オーム社 (
http://www.linux.or.jp/bookreview/BR67.html )」
「入門CVS 第2版、大月 美佳、秀和システム(
http://www.mikamama.com/CVSBook/main.html#About )」
に従って
rpm -q cvs
find / -name cvs\* -print 2>/dev/null
でcvsがすでにインストールされていないことを確認し
(正常にインストールされているかは不明ですが以前にapacheとJakarta-Tomcatをインストールしているのでautoconf, automake, libtool,などはインストール済みです。ApacheとTomcatはjk2コネクタを用いて連動して無事動いています。)
最初は cvs-1.12.1.tar.bz2 をインストールしようとしたのですが
./configure ( または ./configure --prefix=/user/local )
のあとに makeすると
(最後の方のみ抜粋)
Making all in os2
make[2]: Entering directory `/home/***/download/cvs/src/cvs-1.12.1/os2'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/***/download/cvs/src/cvs-1.12.1/os2'
Making all in emx
make[2]: Entering directory `/home/***/download/cvs/src/cvs-1.12.1/emx'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/***/download/cvs/src/cvs-1.12.1/emx'
Making all in vms
make[2]: Entering directory `/home/***/download/cvs/src/cvs-1.12.1/vms'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/***/download/cvs/src/cvs-1.12.1/vms'
Making all in m4
make[2]: Entering directory `/home/***/download/cvs/src/cvs-1.12.1/m4'
make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/home/***/download/cvs/src/cvs-1.12.1/m4' make[2]: Entering directory `/home/***/download/cvs/src/cvs-1.12.1' make[2]: Leaving directory `/home/***/download/cvs/src/cvs-1.12.1' make[1]: Leaving directory `/home/***/download/cvs/src/cvs-1.12.1' のようなメッセージが出ました。ディレクトリ内の***はユーザ名。 make checkを実行すると *** zlib test OK *** make[1]: Leaving directory `/home/***/download/cvs/src/cvs-1.12.1/zlib' Making check in diff make[1]: Entering directory `/home/***/download/cvs/src/cvs-1.12.1/diff' make[1]: Nothing to be done for `check'. make[1]: Leaving directory `/home/***/download/cvs/src/cvs-1.12.1/diff' Making check in src make[1]: Entering directory `/home/***/download/cvs/src/cvs-1.12.1/src' make check-local make[2]: Entering directory `/home/***/download/cvs/src/cvs-1.12.1/src'
/bin/sh ./sanity.sh `pwd`/cvs This test should produce no other output than this message, and a final "OK". (Note that the test can take an hour or more to run and periodically stops for as long as one minute. Do not assume there is a problem just because nothing seems to happen for a long time.) Test suite does not work correctly when run as root make[2]: *** [localcheck] Error 1 make[2]: Leaving directory `/home/***/download/cvs/src/cvs-1.12.1/src' make[1]: *** [check-am] Error 2 make[1]: Leaving directory `/home/***/download/cvs/src/cvs-1.12.1/src' make: *** [check-recursive] Error 1 のようなメッセージが出ました。 この状態でmake installすると Making install in m4 make[1]: Entering directory `/home/***/download/cvs/src/cvs-1.12.1/m4' make[2]: Entering directory `/home/***/download/cvs/src/cvs-1.12.1/m4' make[2]: Nothing to be done for `install-exec-am'. make[2]: Nothing to be done for `install-data-am'. make[2]: Leaving directory `/home/***/download/cvs/src/cvs-1.12.1/m4' make[1]: Leaving directory `/home/***/download/cvs/src/cvs-1.12.1/m4' make[1]: Entering directory `/home/***/download/cvs/src/cvs-1.12.1' make[2]: Entering directory `/home/***/download/cvs/src/cvs-1.12.1' make[2]: Nothing to be done for `install-exec-am'. make[2]: Nothing to be done for `install-data-am'. make[2]: Leaving directory `/home/***/download/cvs/src/cvs-1.12.1' make[1]: Leaving directory `/home/***/download/cvs/src/cvs-1.12.1' のようなメッセージが出ました。
/usr/local/shareにcvsディレクトリができそこにcontribディレクトリのみができました。本来なら、ここに複数のディレクトリができるはずなのですか・・・ usr/local/info には以下のようなファイルができました。 cvs.info cvs.info-3 cvs.info-6 cvs.info-9 cvsclient.info-2 cvs.info-1 cvs.info-4 cvs.info-7 cvsclient.info cvsclient.info-3 cvs.info-2 cvs.info-5 cvs.info-8 cvsclient.info-1 dir 再インストールするたびにこれらは全て消去しました。
123 :
bloom :03/05/27 23:14
インストールするものを
cvs-1.11.5.tar.gz
cvs-1.11.2.tar.gz
などにに変えてもほぼ同じようなメッセージが出ました。
次に大月美佳の「入門CVS」のみに従ってRPMでインストールしようと
ftp://ftp.turbolinux.co.jp から cvs-1.11.5-1.i586.rpm をダウンロードしrpm -ivh cvs-1.11.5-1.i586.rpm しましたが
error: failed dependencies:
libcom_err.so.3 is needed by cvs-1.11.5-1
libgssapi_krb5.so.2 is needed by cvs-1.11.5-1
libk5crypto.so.3 is needed by cvs-1.11.5-1
libkrb5.so.3 is needed by cvs-1.11.5-1
大月美佳の本に書いてある通りのパッケージ依存エラーがでたので
本に従ってこれのSRPM cvs-1.11.5-1.src.rpmを同じサイトからダウンロードしインストールしようとしまたが、
/var/src/rpm/SOURCES というディレクトリを作れないというメッセージが出たので
/var/srcディレクトリに無理やりrpm/SOURCESディレクトリを作り
SRPMのインストールに成功させました。
/var/src/rpm にはSOURCESのほかにSPECディレクトリができましたが、
他はできませんでした。
大月美佳の本によると、他にRPMS, BUILD, SRPMSなどのディレクトリができるはずなのですが・・・。
それも無視して本に従って rpm -bb /var/src/rpm/SPEC/cvs.spec >& s.log& を実行後 tail -f s.log を実行しましたが、 プロセスの終了後s.logをみるとrpmの使い方が表示されるだけで、大月美佳の本で説明されている-bbオプションはないことだけがわかりました。 大月美佳の本の正誤表にもこのことは書かれていませんでした。 makeなどを実行中に表示されるメッセージをみても何をすればいいかわかりません。 とくに、Leaving directory , Entering directory (ttsshからアクセスしているため英語。日本語コンソールでは「ここから入ります」、「ここから出ます」) の意味がまったくわかりません。Apacheのmakeでのインストールに失敗したときも同じようなメッセージがでていましたが、 man makeにも説明がなく理解が止まっています。どの資料やサイト、MLを見ればいいでしょうか? ということなのでRPMは断念し依存関係の影響を受けにくいmakeでインストールを試みたほうがいいのではないかと思い、質問してみました。 教えて君で申し訳ないのですがおながいします
>>121 これ読んだ?
Test suite does not work correctly when run as root
あと、こんな聞き方して返事してもらおうと思うな。
128 :
名無しさん@お腹いっぱい。 :03/05/28 01:21
>>126 何ですか?
>>127 > これ読んだ?
> Test suite does not work correctly when run as root
読みました。
「/上で実行された時、テスト組は正確に働きません。」ということですね。
しかし、ディレクトリは/ではありません。
> あと、こんな聞き方して返事してもらおうと思うな。
では、いったいどんな聞き方をすればいいと?
限界まで情報を吐き出すだけだしたつもりです。
できれば、何が情報が足りないかを具体的に示してくれればこちらでも対処します。
>>126 Linux上で動かしたからといってLinux板で質問しろということもなかろう。
makeについてはLinuxだけの専売特許ではないはずなのだから
>>128 at root じゃなくて as root でしょう。
とっとと犬板行ってくれ。
英語が読めないようですね・・・
問い
(1) 下記の語句を使用して、150文字程度の文章を作成せよ。[15点]
(↓使用する語句)
「run as root の意味」
「実行権限」
「sudo/super」
「ルートディレクトリ」
(2) コンピュータ用語において、entering / leaving (some directory) とは
どのような事象を指すのかについて調べ、100字程度で論述せよ。[15点]
(3) 大月美佳の「入門CVS」について、一般人が知ることが出来るであろうことを
40字程度で説明せよ。
[20点]
(4)
>>128 に不足しているのは何かを、下記の語句を使用して300字以内で述べよ。
[50点]
(↓使用する語句)
「Linux の基礎知識」
「状況の説明能力」
「英語の理解力」
「釣りか?」
「アプリケーションユーザに必要とされる」
>>127 > あと、こんな聞き方して返事してもらおうと思うな。
そんなこといったら
>>121 がウィソ厨になってしまうぞ。
Windowsのシェアを縮小するためにここは教えてあげようではないか。
>>121 が突然「やっぱりUnixは糞だ。これだからWindowsに負ける。
WindowsはUnixよりも信頼できる、Windowsは
Unixよりも使いやすい。Unixを使う奴は頭が古いジジイだ」なんて言い出したらどうする?
(Windows板にはこういう例の嫌な奴が多いのよ)
rootでログインせずに./configure, make, male checkをすればいいと素直にいったほうがいいぞ。
>>128 > では、いったいどんな聞き方をすればいいと?
> 限界まで情報を吐き出すだけだしたつもりです。
情報が足んないというより、少しはまとめろってこと。
原因を探る能力がなくても、まとめることはできる。
139 :
名無しさん@お腹いっぱい。 :03/05/28 02:18
親切な人こと棄教者様が
>>127 >>128 に答えてやろう。
as root というのは root というユーザ、すなわち管理者のことだ。
君は root ユーザとしてコンパイルしていないか?
when run as root というのはそのことを指す。
決して君が / というディレクトリで作業をしている、と make が文句をつけているわけではないのだ。
ここまで分かったら I is hacker, you is fool などと書いて恥の上塗りをする前に
厨学校にもう一度通いなさい。
>>140 as root を「/ディレクトリとして(ディレクトリを"場所"として解釈していない)」 と解釈した場合はと突っ込んでみるテスト
make checkすると、なにやらrshコマンドがないと文句を言われました。 マシン名の定義が悪いのでしょうか? OK, all tests completed. /bin/sh ./sanity.sh -r `pwd`/cvs This test should produce no other output than this message, and a final "OK". (Note that the test can take an hour or more to run and periodically stops for as long as one minute. Do not assume there is a problem just because nothing seems to happen for a long time.) ./sanity.sh: line 1: rsh: command not found ERROR: cannot test remote CVS, because `rsh マシン名' fails. make[2]: *** [remotecheck] Error 1 make[2]: Leaving directory `/home/****/download/cvs/src/cvs-1.12.1/src' make[1]: *** [check-am] Error 2 make[1]: Leaving directory `/home/****/download/cvs/src/cvs-1.12.1/src' make: *** [check-recursive] Error 1 /etc/hostsの中身です。 127.0.0.1 localhost.localdomain localhost *.*.*.* マシン名 "*.*.*.*" は CVSをインストールしようとしているこのマシンの固定グローバルIPアドレス "マシン名" は CVSをインストールしようとしているこのマシンの適当に定義されたホスト名 です。
rootでのログインをやめ解凍したファイルを一旦削除し
再解凍後再びmakeし、エラーが出たので再びrootになり/tmpディレクトリの一部を削除し
さらに解凍したファイルを一旦削除し再解凍後、makeすると今までとメッセージが
異なるものに変わりました。今
>>114 のような状態になり悪戦苦闘は相変わらず続いております。
>>135 Javaで、makeをXML形式で書けるApache Antを使いすぎた、
JavaのXMLparserはちょっとした間違いを厳密にチェックしてくれるから、
makeが使いにくいと感じてしまったことは認めます。
これからの時代はmakeもXMLで記述できるようになるのではないかと期待しています。
rsh は rsh だよ ちょっとはググれ
>>119 CVSとはまったく関係のない、それ以前の問題です。
linux板に行ってください。
TurboLinux8Serverとかいうのを使ってるならサポートに金払って訊いてください。
make check てしなくちゃいけないものなの?
rshそのままサルみたいに使って下さい。こっちはIPスプーフィングして攻撃しやすいんで。
>>148 プロモーション版を使っているので金を払わずにつかっています。
rshのRPMを無事インストールできたので昨日までの悪戦苦闘から少しずつ
よい方向に向かっています。
現在 make check中です。かなり時間がかかっています。
RPMの話題がちょっとでもあるとLinuxスレで聞けという話になりますが
RPM以外の話題を中心にするらはいいのではと思い投稿しました。
RPMのことがかいてあるのはcvsのRPMでうまくいかなかったのでmakeでやりたい、
ということを書いたのです。
>>146 一瞬zshやtcshのようなシェルを新たにシェルをインストールしなければならないかとおもいました。
>>151 実は今自宅でssh使って遠隔にあるネットワーク内のマシンにcvsをインストールしようとしています。
厳重なFire Wallを設置した組織なのでそう簡単にはいかないと思います。
sshでログインするときもあるログイン専用のホストに一旦ログインしてからという手間をかけてアクセスしていますので。
そのFireWallを通してFTPにアクセスするのもかなり手間取るほどです。
わざわざ許可を貰ったのですから。
FTPアップロードもWindowsからFFFTPでそのマシンに直接アップロードすることも許されないのです。
rsh 使うの?
>>153 rshを初めて取り扱ったのでよくわかりませんが、
sshでリモートでログインしているのが原因でしょうか?
155 :
名無しさん@お腹いっぱい。 :03/05/28 14:53
また新たな壁にぶち当たりました。あともう少しだと思うのですが・・・
/bin/sh ./sanity.sh -r `pwd`/cvs
This test should produce no other output than this message, and a final "OK".
(Note that the test can take an hour or more to run and periodically stops
for as long as one minute. Do not assume there is a problem just because
nothing seems to happen for a long time.)
マシンのホスト名: Connection refused
ERROR: cannot test remote CVS, because `rsh マシンのホスト名' fails.
make[2]: *** [remotecheck] Error 1
make[2]: Leaving directory `/home/ユーザ名/download/cvs/src/cvs-1.12.1/src'
make[1]: *** [check-am] Error 2
make[1]: Leaving directory `/home/ユーザ名/download/cvs/src/cvs-1.12.1/src'
make: *** [check-recursive] Error 1
単体でrshを実行すると
$ rsh マシンの固定グローバルIPアドレス
マシンのホスト名: Connection refused
となります。代わりにに、sshコマンドは成功します。
そのネットワークより上位の場所にあるほかのサーバ(組織全体のFire Wall内にある)対してはrshでアクセスできます。
もしかすると現場から直接操作していないのが原因でしょうか。
それとも、xinetdでrshを自動起動していないのが原因でしょうか。
>>151 のような人に狙われることを恐れ.rhostsは作成していません。
ところで、rloginやrsh, telnetは sshがあればいらないきがするのですが、
なぜCVSはrshを要求するのでしょう?
これから現場に逝って来ます。 現場ではプロキシ使って投稿できないのでしばらくの間投稿はなくなります。
>>156 ×現場ではプロキシ使って投稿できないのでしばらくの間投稿はなくなります。
○現場ではプロキシを使わないとネットワーク外にアクセスできないのでしばらくの間投稿はなくなります。
それは助かります。
159 :
bloom :03/05/28 15:14
>>158 「おもちゃがいなくなるので寂しくなります」と言い換えましょう。
あぼーん
>ところで、rloginやrsh, telnetは sshがあればいらないきがするのですが、 もちろんいらないですよ。
とっとと make install して使ってみたまへ
( ゚Д゚) …。
166 :
名無しさん@お腹いっぱい。 :03/05/28 23:30
167 :
名無しさん@お腹いっぱい。 :03/05/28 23:31
>>165 なぜCVSと関係ないと?
それを詳しく説明してください。
>>160 悪い言い方をすれはそれは毒舌ですね。
しかし良い言い方をスレばCVSに対する認知度を高めて欲しいということですね。
ということでCVSを普及させるために頑張ります。
>>165 Linux板は別の議論をするときに使わせてもらっています。
それから、私はそう簡単には逝くことも氏ぬこともできません。
cvs-1.12.1.tar.bz2 がうまくいかなかったようなので
cvs-1.11.5に挑戦。
現在cvs-1.11.5をmake check中
checkに時間がかかるのでその間にフランス人のサイトにてCVSの解説を読んでいます。
>>165 ところで、プログラム板でCVSの話題をしても「Linux板に行け」という話しは聞きません。
暗示するだけでは解らないので言いたいことや不満があるならわかりやすく詳細に述べてください。
そろそろ餌まくのやめない? 放置が原則でしょ。>>all
/usr/local/share/cvs の下に contrib 以外に何ができてほしいの?
どいつもこいつも攻撃的になっているところをみるとそんなにCVSが嫌いなのか。 それともLinuxが異常なほど嫌いなのかね。
175 :
名無しさん@お腹いっぱい。 :03/05/29 00:46
>>171 > そろそろ餌まくのやめない?
> 放置が原則でしょ。>>all
そういうことを言うとUnix板の悪口を言われてUnixの人気が下がってしまうから止めれ
>>172 diff/ doc/ emx/ lib/ man/ os2/ src/ tools/ vms/ windows-NT/ zlib/
これができるとオーム社のCVSの本には書いてありました。
>>176 windows-NTとかはどうみたっていらないだろ
>>171 俺的には「餌を撒く」というより
「知識を提供しオープンソーステクノロジーを普及させる」といった方が誇らしげになれる。
>>176 そんなもん普通はできないっすよ。
contrib だけでおけー。
インストール成功おめでとう。
−−−−−−糸冬了−−−−−−
cvs のインストールなんて、 だれでもできるような低い次元の話は もうしないように。 数学板で 九九のやり方を教えてくれと ごねるようなものです。
>>180 お前調子にのりすぎ。
その傲慢さがUnixの普及を妨げるということをわかっているのかい?
>>181 お前が調子にのりすぎ。
そのDQNさが(略
>>180 > cvs のインストールなんて、
> だれでもできるような低い次元の話は
> もうしないように。
>
> 数学板で 九九のやり方を教えてくれと
> ごねるようなものです。
そう言うんだったらWindowsやMacしか使えない奴らがUnix上でmakeでCVSを
アドバイスなしで自力で簡単にインストールできるすべを素早く習得できるよう
にならんといかんな。それがお前にできるか? お前にその気があるか?
お前のようなやつがいるから皆Unixから退いていく。
おまえら釣られすぎ。 その(ry
ハマさん 4 匹も釣れたよ。
スーさん、これ全部ザコだよ。
まあ、make checkの意味は info automakeして、
/make check とやればわかるだろ。英語の得意な
>>119 なら。
その前に cvs のソースといっしょに入ってる INSTALL とか TESTS だろ。
>>179 結局cvs-1.11.5でもcvs-1.11.2でもcheckはうまくいきませんでした。
インストール成功といってもmake checkに失敗したことが気がかりです。
rshコマンド実行に失敗したことが頭から離れられません。
>>188 ,189
情報どうもありがとうございます。
make checkに関する情報が見つかったのでTESTを読んでみます。
info automakeは
http://cvshome.org/ にのっているマニュアルとほとんど同じようなもので
INSTALLはCVSインストール後の説明のようでした。
何の目的で、何をどのように実行して失敗したのか、 具体的に調べようとしないと駄目だよ。 rsh が失敗、と漠然と考えてるのでは、重要な失敗なのか、 無視していい失敗なのかもわからないし。
>>186 プログラマでいまどきgoogleを知らない奴はおらんだろ。
いまどきそんなつまんねえ煽り流行んねえんだよヴォケ
>>183 > お前のようなやつがいるから皆Unixから退いていく。
退いていってだれか困る人いるの?
cvshome.org見ると1.12.1と1.11.6が出てるらしいんだが、国内のmirrorで来 てるところ知らない? ringはLATEST_IS_1.12.1とLATEST_STABLE_IS_1.11.6だ けはできてるんだけど、tarballがない。
>>195 WindowsとかLinuxのRPMに慣れてくるとああいう香具師がかなり増えてくるもんだ。
あんたら玄人よりもああいう香具師のほうが過半数で、あんたらの数倍以上のプログラマの
人口はああいう香具師っていうのが現実。プログラマ板を見ろよ。
DBいじくってるだけ、WindowsでVBしかできなくてもで自称プログラマを名乗っているほどだし。
>>194 WindowsがISO標準OSになってしまっては困るとか。
どの技術者もWindowsに対応していない開発環境はいらないと言い出して
Windowsを買わないと仕事ができなくなる状況に追い込まれるとか。
Unix系に対するとんでもない偏見がもたれるとか。
実際ウィソ厨にはUnixはジジイが使う古くて使い物にならない、という偏見をもった香具師が多い。
就職や転職でも、Windowsマンセーな面接官に対してUnix使っていましたというと
オタク扱いされてそこで切り落とされるとか(恐ろしいことにコレ実話らしい)。
199 :
名無しさん@お腹いっぱい。 :03/05/29 13:08
ところでお前らCVSを何に使っている(使おうとしている)んだ? 一人で使っているのか?
ひとりで妄想commitしてます
いえ、commitそのものが妄想なのです。
日記帳代わりに使っています。 一日、一週間、一ヶ月の反省をするときに rdiffしてハァハァしています。
>>199 の彼女を checkout して適当にデバッグしてやって commit してやっていますが、
ありがたがられたことがありません。セキュリティーホールを入れたのが間違いでしょうか。
×セキュリティーホール ○バックドア
cpコマンドを実行するのが面倒な時に、CVSを使えば importしてexportするだけで楽々ファイルを移動できて 重宝してます。
>>198 > WindowsがISO標準OSになってしまっては困るとか。
なぜ困るの?
> どの技術者もWindowsに対応していない開発環境はいらないと言い出して
> Windowsを買わないと仕事ができなくなる状況に追い込まれるとか。
だれが困るの?
> Unix系に対するとんでもない偏見がもたれるとか。
だれが困るの?
> 実際ウィソ厨にはUnixはジジイが使う古くて使い物にならない、という偏見をもった香具師が多い。
だれが困るの?
> 就職や転職でも、Windowsマンセーな面接官に対してUnix使っていましたというと
> オタク扱いされてそこで切り落とされるとか(恐ろしいことにコレ実話らしい)。
なにが問題なの?
放置しろよ。
>>199 一人でも使ってるが、そもそも今netを介して開発しようとしたらほとんど必
須だろ。
一人の時はrcsも意外と気軽で便利だったり。
一人でやる分にはワーキングコピー方式の いったんチェックアウトしなきゃいけないのがめんどくさいな。 今あるディレクトリをバージョニングして欲しいのよ。 そのまま。RCS ってそう言う風に使える?
rcsは一つのファイルしか扱わないから×
213 :
名無しさん@お腹いっぱい。 :03/05/29 19:20
CSV
>>212 そうだね。rcs は『一人の時は…』じゃなく『ファイルが一つの時は…』かな。
設定ファイルをちょっといじってみるなんて時には重宝やね、rcs。 気軽にバックアップを取れて、用が済んだらレポジトリごとポイ。
218 :
名無しさん@お腹いっぱい。 :03/05/29 22:41
みんなろくなことにCVSを使ってないんだな。失望したぜ
219 :
名無しさん@お腹いっぱい。 :03/05/29 23:11
CVSを仕事に使ってる香具師は少数か。 あれほどもてはやされたのに。 CVSはeXtreme Programmingでは必須アイテムだろう。 eXtreme Programmingのひとつ、ペアプログラミングを実現するなら CVSは欠かせない。
220 :
????s??s :03/05/29 23:13
プログラムソースをはじめとする各種テキストファイルは当然として、 ChangeLog メモを家と各所の職場でとるために USB メモリにリポジトリ作って使ってる。 同一のメモをどこでも使えるし、万一 USB メモリを忘れてもあとでマージが簡単だし。 かなり便利。 あとは会社で開発中のプロジェクト全体を import して、自分用リポジトリを作成、 自分が変更したものを commit、次のプロジェクト全体でのマージが行われたものを また import し、マージされた変更は admin -b でベンダー枝に戻す、のくりかえし。 プロジェクト全体でバージョン管理ツール使っていないから自分用は自分で管理するしかない状況だから。 それなりの規模があるのに。開発拠点が分散してるというのもあるが・・・
ホームディレクトリ下の各種設定ファイルをCVSで管理してるYO
自宅サーバにあるレポジトリからホームディレクトリ下の設定 ファイルを各マシンにcoして使ってるんだけど、rcsでそういう のできるんでつか?
サーバの RCS をマウントする。
>>219 ファミレスで何時間もプログラミングをする同僚が
CVS を導入できないでいる...
オフラインでできる事が少なすぎるんだよね。
CVSup とかを使ってやるとしても煩雑すぎるし...
Subversion の Cross-Repository Communication 実装に期待。
あ、ホームディレクトリがいっぱいあるのでつね。
228 :
名無しさん@Emacs :03/05/30 02:45
.objなファイルはデフォルトではリポジトリにつっこまない ようですが、これをつっこむにはどうしたら良いのでしょうか? CVSROOT/cvsignore に !*.objというのをつけたのですが駄目でした
~/.cvsignore とか、/etc/cvsignore(これ効くのかな?) とか、ない?
サーバーまるごとcvsでバックアップとってる俺は逝ってよしですか?
バイナリとかどうしてんの? Id の問題もあるし、サイズは倍々になるし。 Id は全部無効にすれば問題ないけど。
-kb
_.... ._{{ 〃 , - ' ,..、、.ヾ{{フ'⌒`ヽ、 / ,:', -‐‐` ´ '´⌒ヽ ヾ:、 . ,' ,'´ ,ィ ,ィ ,' , `ヽ', ',-< ,' .i /|. /.| { i, i, }. }_,,)) ! | ! .,'-.{ ! !|; |`、.}゙!.! |. ! ヽ. ', ', |Vァ=、゙、 `゙、!-_:ト,リ', l ! | ゙', ヽ、', l:!Kノ}. f:_.)i゙i: リ ! l ル' | l!iヾ- ' , .!__:ノ ゙ ,リ l リ'´ < おちつけ . ',|!!、 r‐┐ ` ノ' /,イ 'i!゙、ヽ、 ゙ー' _, ィ,:',:''´ ゙:、ィ、jヾー::: 'iヘ ノ',リ ,、- '´ ヽ、゙、 { `>"、 /\\ ', } //`ヽ
237 :
名無しさん@お腹いっぱい。 :03/05/30 09:39
>>236 Unix板にもこういうAA貼り付ける怪しい奴がいたなんてショック
238 :
名無しさん@お腹いっぱい。 :03/05/30 10:02
Oノ
ノ\_・’ヽO.
>>237 └ _ノ ヽ
〉
241 :
名無しさん@お腹いっぱい。 :03/05/30 11:18
BSD信者にはアニヲタが多いってのは本当ですか?
静かになりましたね
246 :
名無しさん@お腹いっぱい。 :03/05/30 23:18
数日見てなかったら100レス以上増えててびっくりした。。
このスレも毎日cvs updateしる!
マンドクセエからプッシュ型CVSきぼんぬ。
>>233 `!*.obj'ではなく`!'だけじゃないとダメなのでは?
そもそも無視するファイルのリストに入ってるファイルでも
cvs add出来るけど、cvs importで無視されたくないと
言う話なのか?
お、レスきた。thx.
>>250 えっと、それは*.objという指定はできないということ?
つまり、デフォルトで無視されるやつを「無視するな」と書くと
全て入ってしまうの?
やっぱり後から cvs add するしか無いんかな?
いや単に、無視するやつを個別に指定できるのなら、その逆も出来て
良かろう、と思たんだけど。
>>228-251 cvs <command> -I '!' -I '*.bak' -I '*.rej'
の様に、キャンセルした後に、無視させたいものを指定するのは如何。
ただし .cvsignore に書かれているものはキャンセルできません。
>>253 ありがとさん。
なるほど。結局、デフォルトで無視されるものを
静的な設定で無視しないようにするのはやはり無理
なのか…
cvsって、ディレクトリの削除が面倒かったり、かなり慣れるまで
時間がかかりそうなイメージあるんだけど、みんなは
「正直ここは直して欲しい」
ってとこ他に何がある?
俺は個人でしか使ってないから、逆に「この仕様は共同作業のプロジェクトとかでは
むしろ自然なんだ」とかあるの?
symbolic link とか、directory とか扱えるように して欲しいな。
サンクス。 subversion 見てみた。 なかなかよさそう。 特に move ができる所が気に入った。 cvs だと気楽にファイル作ってリネームしたり 移動したりできなかったもの。 仕様がほどよく決まって、 emacs のフロントエンドが使えるようになったら のりかえよう。
>>257 vcベースのelispもついてるよ。Emacs21だと動いたよ。ちょっとbuggyだったけど。。
>>258 本当だ。見逃してました。たびたびサンクス。
>>256 名前は聞いたことあったけど、ディレクトリに
バージョン番号つけられたり、国際化がしっかりしてそう
だったり、バイナリの管理も優秀らしい(詳細不明)ね。
> 特に move ができる所が気に入った。
おれも!
インストールしたんで、これから使ってみるよ
スレ違いだね。Linux板行ってきます。
しかしモノの性質上、人とやるとなると余程のことがない限り どうしても枯れたCVSでってことになるのよね…
>>255 symbolic link じゃないけど、modulesでaliasを使う方法がム板のほうで出てたよ。
CVSを使った開発で、UNIXとWindowsの混在環境での利用に関する まとまった情報が少ない気がするんですが、みなさんどうされて いるのでしょうか。
Windowsは捨てる。
cygwinでいいんでないの
WinCVSで検索した?
>>263 みかままの「入門 CVS 第2版」は買って読んだ?
>>264 開発者がWindowsを使いたい様なので、そうもいかないのです。
開発した対象のアプリが動くのは Solaris8 なんですけどね。
>>265 >>266 私はcygwin/WinCVSで十分なんですが・・・。
CVSはSolaris8にpserver立ててViewCVSで閲覧できる様に
する予定です。
そうなるとEUC/SJISの変換とか考えていかなきゃいけない
気がしてググったりしてたんですが、良さそうなやり方が
みつかりませんでした。
>>267 本屋行ってきます。
>>268 そういうわがままというかなんというか、
自分のケツを自分で拭こうとしない開発者ってなんなのよ…
あーまあ、CVSを半ば強制的に導入するってことかな。
それならわからんでもないが。
でも自分で使う道具くらい自分で何とかしようとは思わんのかなあ。
WinCVSとか使ってWin側でcheckout/commitした所で、どうせmake やデバッグする時はSolaris上で作業する事になるんだろ? なら素直にUnix版のCVSの使い方覚えた(覚えさせた)方が何かと楽 だと思うが。
うちはWeb制作のおねーさんたちにも全員cvs覚えさせてるよ。 コマンドライン操作のcvs. どうせupdate, commitだけのルーチンワークが99%だから、 むしろコマンド操作を2つおぼえればいいだけで彼女たちも楽。 WinCVSはあまりにもいろいろな機能が全面に出すぎていて かえって覚えにくい、使いにくい、使わせにくい、危険なダメソフト。 その点TurtoiseCVSはまぁまぁだが、すすめられるかというと、 微妙だな…
>>271 おねーさんたちは UNIX 上で cvs コマンド叩いてるん?
>>272 の意訳
.oO(勢いあまって「man co」したりしてるん?ハァハァ)
>>269 そんな彼らを使いつづけるのが良くないんでしょうけど・・・
バージョン管理のフレームワークを入れて修正毎にきちんとコメントを
入れさせないと、訳が分からなくなってしまう人たちの様なので。
かといって、使い慣れたものを使って下さいと言ったとしても、
そんなもの無いと言われるのが関の山なので。
# 愚痴書いてすいません。
>>270 UNIX or Windows という視点でしか見れない人たちなので、
彼らにとっては、HP-UXもSolarisもLinuxも一緒みたいです。
そんな人達なのでmakeやデバッグをどう考えているのやら・・・
Unix版のCVSの使い方を覚えてもらうのが、確かに一番
楽ですね。
>>271 commit logとかもおねーさん達は書いてくれているのでしょうか。
commit logはなぁ、自由に書かせると人によって書き方がバラバラに なるし、CVSとか使うの初めての奴だと大抵「XX処理を修正」とか一言 しか書いてくれなくていまいちなんだよね。 幸いうちはプロジェクト全体でWebベースのBTS(バグ追跡システム) 導入してるんで「最低限バグIDは書くようにしてくれ」と言ったら、みんな きっちりバグID*だけ*書いてくれるようになったけど(w バグIDはフォーマットが決まってるので、いざとなったらcommitinfoで 強制もできるし。 本当はcommit logにも修正理由をきっちり書いて欲しいところだけど、 あんまりぎちぎちにして面倒くさがられてもしょうがないし、まぁバグID さえ書いてあればBTS側逆引きできるからいいか、と。 ちなみにそのBTSは元請けが内製した物らしくあまり出来は良くない んだけど、一応リーダーや品管がチェックしててあんまりテキトーな 事書くと突っ返されるんで、CVSのdiffと合わせて読めばそこそこ役 には立ってる。
>>275 ナニゲにちょっとイイ話だな。どこがイイと思ったかっつうと、
ツール至上主義じゃなく、組織の特性に合わせた運用で
まあまあの妥協点をみつけてるところ。
すぐ「XXXっていうツールはYYYができない。さぱーりダメ!」
とか言い放つやつ、少し見習え。いや、それ俺のことだがナー。
>>277 no comment is good comment
か。
それよりdiffの
NKF.nkf('-SeX', (@vars[:body]
が気になってしまたよ。
なんで commit log に書くこと迷うの?
だってこみっちゃう。
不覚にもワラタ。。。クソ。。。 でも最近は Subversion に浮気中。
>>268 うーん、文字コード変換なんてやらない方がいいと思うけどなあ。むしろトラブルの元にならない?
開発者だったらEUCが読み書きできるエディタくらい用意しろって言っておけ(w
「EUCが読み書きできるエディタ」は別にSolaris標準のviでいい。 問題は(vi使いにくいとか言って)Win上のエディタでSJISのまま編集、 FTP転送なんてやる連中で、うっかりSJISのままcommitしちゃう事故 がよく起きるのよねん。 確かにみんながみんな分かってる連中だったら余計な事しない方が いいんだけど。
unix 使うやつは euc-jp も sjis もわかるけど、 win only の人は sjis しか知らない人も多い。 sjis に統一したら?
unix 使うやつは euc-jp も sjis も utf-8 もわかるし、 メモ帳なら utf-8 もわかる。 utf-8 に統一したら?
Win98のメモ帳はutf-8分からない
Test
unix 使うやつは euc-jp も sjis もわかるけど、 win only の人は sjis しか知らない人も多い。 win ユーザは解雇して unix ユーザ採用したら?
cvsのフロントエンドにnkfかますとか。 そういうhackありそうだけど、ないのかね。
>>291 あることはあるんですね。ありがとさんです。
# つっても私には今のところ必要ないのだったw
wiki nameに日本語を使おうとしてそういうすごいURLになっちゃったんでしょうね…
URLエンコーディングじゃダメだったんだろうか。
sjis でも euc-jp でもいいから、とにかく統一しろ と、伝えといて下さい
295 :
名無しさん@お腹いっぱい。 :03/06/19 15:29
ド素人なんですが、yyyy/mm/dd hh:mm:ss の状態に 戻したいというようなことは出来ないのでしょうか?
>>295 cvs update -D'yyyy-mm-dd HH:MM:SS'
>>284 いや、Windowsのエディタだって、EUC解釈できるやつなんていっぱいあるでしょ?
まさかメモ帳でプログラム書いてるわけでもあるまい…。
>>297 デフォルト(新しく作ったファイル)はsjisだったり。
>>296 これ使うと付け忘れたタグを付けたりできるんだろか
お前はウザイC#厨と言われたいか! リチャードストールマンを見習え!
>>299 可能だけど、rtagに日付指定したほうが簡単だと思う。
やったことナイケド...
wget+cvsで他人のホームページの更新チェック+過去ページの保存 ってなことをやっている人ってたくさんいるんでしょうか?
いいえ
どちらともいえない
>>303 たくさんはいないだろ。
>>303 が「wget+cvs でこんなにしあわせ」ってな紹介ページでも作るならともかく。
裁判に備えた証拠保全とかに便利かも。
自分用のインターネットアーカイブの作成とか?
をたなサイトをそうやって保存してる人とかいるんかなー。 なんとなく、いるような気がして来た…
ごめんなさい。やってます。
>>307 証拠になるか?いくらでも偽造可能じゃないかな。元のページがデジタル署名されて
たりだと話は別だが。
各種ログと同程度の証拠能力はあるんじゃないかな。 差分を外部にメールしておいたりすればなおよし?
>>312 だよな、当事者のログは証拠能力ゼロでしょ、やっぱ。
当事者「だけ」がログを保存していたのであればね
__∧_∧_ |( ^^ )| <寝るぽ(^^) |\⌒⌒⌒\ \ |⌒⌒⌒~| 山崎渉 ~ ̄ ̄ ̄ ̄
commit ログから ChangeLog を作成するような変換スクリプトはありますか?
あります。
>>318 こんなものがあるのか。。
今迄、ChangeLogに書いたものを、commit時のログに貼り付けてたよ。
パッチを別ファイルに書いて、そっからChangeLogもcommit logも書き込ませてる。
321 :
名無しさん@お腹いっぱい。 :03/08/06 10:35
age ます
323 :
名無しさん@お腹いっぱい。 :03/08/06 18:16
branchの使い方、branchとのマージのやり方について質問があります。 *超* 長分ですみません。 ** 1.プロジェクト状況 ** まず状況から説明します(いちおうすべて仮の設定です)。 うちのプロジェクトでは、例えばある会計システムを作っています。 1次フェーズとして、顧客への10月1日リリースに向けてがんばって開発しているのですが、 すでに2次フェーズ(12月1日リリース予定)リリースの要件定義が終わっており、 2次フェーズの開発も行っています。 ちなみに2次フェーズの位置付けは、1次フェーズの機能拡張であり、たとえば1次フェーズでは 行えることができた業務が2次フェーズでは行えなくなったり(その逆もあり)します。 1次フェーズと2次フェーズで違いがない業務もあります(それがほとんど)。 そういうところはソースコードレベルでも変更は発生しません。 1次フェーズのリリースが終わってから2次フェーズの開発をはじめるのであれ ばbranchとか気にしないでもいいのですが、どうしてもさまざまな理由で、 1次フェーズの開発が終わる前に2次フェーズの開発が始まってしまっているので ややこしいことになっています。
** 2.うちでの CVS の使い方 ** で、うちのプロジェクトの CVS の使い方ですが、2次フェーズリリースの作業を開始した時に branchを分けました。本幹(trank)の位置付けは1次フェーズ、branchは2次フェーズという 位置付けです。 2次フェーズ向け branch( ┌──────────────→ | |本幹(1次フェーズ向け) ─○──────────────→ たとえば cvs のmodule名が kaikei とすると、今までは $ cd ~/prj $ cvs co kaikei というように ~/prj/kaikei 以下で作業していましたが、branch を切った後は、2次フェーズ向けの作業は $ cd ~/prj $ cvs co -r ブランチ名 -d kaikei-branch kaikei というように ~/prj/kaikei-branch という別作業ディレクトリを作って作業をしています。 しかしbranchを分けた後も、trankでも追加・修正が発生しています。1次フェーズと2次フェーズとの 間で業務の違いがない個所については、trankにcommitされたソースも2次フェーズのソースツリーに 組み込まなければなりません。でも branchを分けた後は、branch のほうで cvs update しても trankにcommitされたソースは反映されないですよね。
そこで1週間に1回、branchをcheckoutしている作業ディレクトリで $ cvs update -j HEAD hoge.java してtrankのソースを取り込み、 cvs commit -m"trank での最新版をマージ" hoge.c みたいにしてやっています。 でもこの作業に疑問を感じています。 1次フェーズと2次フェーズで違いが発生する箇所は、全体からみると一部分なのです。 この一部分のために、1週間に1回、他の大部分をbranchにmergeしていて面倒です。 ** 3.別の方法はないのか? ** そこで雑誌をとか本を見てみると、trankとbranchで作業ディレクトリを分けないようにし、 $ cd ~/prj $ cvs co -r ブランチ名 -d kaikei-branch kaikei kaikei-branch 作業ディレクトリで作業をし、ここで $ cvs update -j HEAD しまくれば、trank でcommitされた修正にも追従できると思います。
けれどもこれでは、branch モジュール単体ではフルビルドが通りません。 両方のフェーズとも結合テストを行っているので、下記のように cvs から checkout してコンパイル、成功すれば 結合テスト環境へリリースをしているのですが、 (Java Servlet ローカルな話題になってしまいすみません) $ cvs co kaikei $ cd kaikei $ ant (make のようなもの) $ ant deploy branch のほうは、一度 trank を取り込まないとコンパイルが通らなくなってしまいます。 結合テスト環境へリリースする時に、下記のように cvs update -j HEAD をはさめば 解決しそうではあるものの、なんか何か気持ち悪いです。 $ cvs co -r ブランチ名 -d kaikei-branch kaikei $ cd kaikei-branch $ cvs update -j HEAD $ ant (make のようなもの) $ ant deploy いちおう私が今やっているやり方だと、1週間に1回trankでのソースをマージしているので、 branch のソースツリーのみを checkoutすればコンパイルは通ります。 ここまで考えたところで、CVS の branch を使いこなしている方々はどうやっているのかな、 と思って書かせていただきました。 このような状況の時、どうやるといいのでしょうか。教えてください。 最後に、長々と書いてしまいすみません。
> この一部分のために、1週間に1回、他の大部分をbranchにmergeしていて面倒です。 とか今一つ良くわからんが、 $ cvs update -j HEAD hoge.java の代わりに $ cvs update -j 前回マージした時のタグ -j HEAD hoge.java とすればいい、とかいう話だったりする?
よく分からんのだが、必要なとこだけブランチ作って、あとはcvs co -fなんて話か?
>>329 > でもいいとおもうのですが、branchとtrankをマージした時に毎回タグを
> 振っているわけではないので、
振りなさい。
タグだらけになるのがイヤなら cvs tag -F という手もある。
s/tag/r&/ s/trank/trunk/g 具体的には cvs rtag -F merged-to-trunk -r HEAD kaikei てな感じ
>>329 のリンクミスです。正しくはこちらでした。
http://www.sodan.org/~penny/vc/cvs-ja_5.html#SEC54 >>328 > よく分からんのだが、必要なとこだけブランチ作って、あとはcvs co -fなんて話か?
cvs co の -f オプションを知りませんでした。今見たら、これでよかったのかもしれない!!
------------------------------------------------------
もう少し具体的に説明します。この module では下記の4つのファイルがあります。
(あくまでも仮定です)。
main.java
common-func.java(共通部品とか)
gyomu1.java (業務1のプログラム)
gyomu2.java (業務2のプログラム)
2次フェーズで変更が発生するのは gyomu2.java のみとします。
common-func.java とかは1次フェーズと2次フェーズで違いはありません。
1.branchを切る時に、module全体に tag を振るか、gyomu2.java だけに tag を振るか悩みました。
ファイルだけに tag を振って運用する、ということをしたことがなかったので、module全体に
タグを振りました。
2.trankでも main.java や common-func.java は、日々更新されていきます。
一方 gyomu2.java もtrank では、1次フェーズの業務要件を満たすべく更新されているのですが、
branchでは2次フェーズの業務要件を満たすように更新しています。
(みづらいところでカキコを切ってすみません) 3.ここで、branch を切ったのが 7/15、今日は 8/6 とします。 8/6 に branch を checkout すると、 main.java、common-func.java、gyomu1.java は、7/15 の内容のままが取り出されます。 gyoumu2.java のみ、8/6 までに commit された最新の内容が取り出されます。 この状態で2次フェーズ向けの結合テストをしても意味がありませんし(gyomu1.java は 更新されているし、gyomu2.java が、最新版の common-func.java に格納されている 機能を要求しているので、そもそもコンパイルは通らないだろう)。 そのため、私の最初のカキコのように手作業で 8/6 までに trank に commit されている最新の main.java、common-func.java、gyomu1.java を branchにも commit しています。 こうすれば branch だけをとりだしてフルビルドしてもコンパイルが通るし、 2次フェーズ向けの結合テストもできます。
しかし
>>328 をみて、cvs co の -f のヘルプをみたのですが、
tag をmodule全部に通さずに gyoumu2.java だけに振っておき、
(仮に、ブランチ名を branch-for-2nd とする)
8/6 の時点で以下のように branch を取り出すと、
$ cvs co -f -r branch-for-2nd -d kaikei-branch branch
・main.java、common-func.java、gyoumu1.java は、branch-for-2nd という
タグが振られていないので、trank の最新が chekcout される。
・gyomu2.java のみ、branch-for-2nd という tag が振られているので、
この tag の最新版が checkout される。
ということで、目的が達せられるような気がしてきました。
これだと↑でやっているように手作業で branch にも commit しなくてすみそ
うです。
# でも1次フェーズと2次フェーズで違いが発生するソースが、少数の時しか使
# えなさそうですね..
>>328 さんが意図していたのはこういうことでしょうか?
そういうこと。
>>334 > # でも1次フェーズと2次フェーズで違いが発生するソースが、少数の時しか使
> # えなさそうですね..
分けたいファイルに関しては分けるしかないだろ。
CVSは基本的にファイル単位の管理なんだから、
ブランチと共有したければそういう風にファイルを分ける。
あと、
>>331 。trunkね。
cvs は書きかけのソースをバックアップするためのものではない、 とはついに誰一人理解できないまま一プロジェクト終了… リポジトリのソースに他人が加筆修正し得ることを誰一人 受け入れることができず、最高潮に達した陰険ムードとともに 一プロジェクト終了… 今プロジェクトでは各自のPCに半端なレポコピーが育っていき、 結合テストもヘッタクレもないという惨状…
本題とはあまり関係無いかもしれんが、 >本幹(trank)の位置付けは1次フェーズ、branchは2次フェーズ これ、2次フェーズやってる最中に3次フェーズの開発始まったらどう するんだ?2次フェーズの枝から更に3次フェーズの枝を作る? 1次フェーズ終了した時に2次フェーズの枝を幹に戻すにしても、その 前に3次フェーズが始まるかもしれないよねぇ。 つか、俺も昔新しいフェーズを枝にしてた事あったんだけど、あまり 仕切りのよくないプロジェクトで、「商用は1次フェーズで運用、総合 テスト環境では2次フェーズの物件が試験中、でも開発は既に3次 フェーズに突入」なんて事があって、枝ぐちゃぐちゃになっちまった。 あと、CVSってHEADからの差分を記録するから枝の処理はどうし ても遅くなる。上記のような感じで幹に戻るタイミングを失うと、ずっと 遅いまま作業する羽目になってかなり鬱。 BSDなんかでやってるように、幹は常に最新フェーズで、フェーズが 分かれた時に古い方を枝に持っていく(1次/2次で分かれたら1次を 枝に持っていく)ようにした方がいいと思うけどな。(マージしやすいか どうかは分からんが…)
>>336 そりゃ運用方法が悪いだろ。
ツール導入したからって、それだけでうまく廻るわけない。
その辺のオープンソースプロジェクトみたいに、全員ソース管理システム
の事を理解しているならともかく、そうでないならその現場に合わせた
ルール作って運用保守してやらなきゃ、無法地帯になるのは当たり前。
>>337 それも書こうかと思ったんだがやめといた。なんとなく。
Subversion使っとけ!
CVS is not a substitute for management. CVS is not a substitute for developer communication. CVS does not have a builtin process model
いつも $ cvs update でファイルの先頭に M がついているかどうかで、変更があったか調べているのですが、 このときに、 $Id$ などのタグは無視して、変更があるもののみ M がでるようにするには どうすればいいのですか?
あぼーん
% cvs remove "山崎 渉" % cvs commit -m "逝ってよし"
>>345 少し違うみたいです。
ただ、 k オプションは関係あるみたいです。
ko, kb みたいに。
cvsを使ってmozillaの過去の任意の日時のコンパイルを行いたいと思っています。 最新のtrunkをチェックアウトしてきてから、cvs update -D "日時 GMT" にて時間を逆行してからmakeするとディレクトリの構成が異なるためか、 *** No rule to make target 'Makefile.in', needed by 'Makefile'. Stop. とエラーが出て完了しません。希望の日時のスナップショットを得るには 事前にタグを付けておかない限り無理なのでしょうか? 何か方法があればご教示ください。宜しくお願いします。
cvs update -D "日時 GMT" で、いいんじゃないの?
Makefile.in だから autoconf まわりか? Makefile.in より Makefile のほうが古いからかも。 はずしてるかもしれないけど、 find . -type f -name Makefile -exec touch {} \; してみれ。
色々調べたけど、埒があかなかったので質問させて下さい。 例えばcygwinでwindows上にCVSサーバーを仕立てる場合、カンマ入りの ファイル名の扱いってどうなってるんでしょうか? メールで、Maildir形式だとファイル名に禁止文字があるからwindows上では 使用できなかったりして、これがあるからちょっと不思議に思いました。 でも謎なのは、ファイル名にバックスラッシュとかを含めると、「駄目です」 みたいに怒るダイアログが出てきて、カンマも使えない文字の一覧にあるのに、 エクスプローラでカンマ入りのファイル名は普通に作れたりすることです。 (Win2K + SP4) いったいこれは何なんでしょ?カンマが普通に使えるならOKだけど、禁止文字に あるからにはキモくて使いにくいし。。 解決しないと仕事にならんってわけじゃないですが、とっても気になります。 何か御存知の方、御教授下され
cygwinのCVSはよくわかなんけど、 cvsntでWINにCVSサーバーたてたときはなんの問題もなく普通につかえたけど、 使えるじゃだめなんかい?
カンマは普通に使えるだろ。 単にそのダイアログが間違ってるだけと思われ。
あるいはピリオドと見間違えてるだけとか。 MS UIゴシック/MS Pゴシックだと判別しにくいんだよねー
ピリオドだって使えるじゃん。
>>350 ロングファイル名ならカンマも使える。
8+3 形式だと禁止文字。
みなさま、お返事ありがとう。
>>351 使用には支障ないけど、気になったんすよ。もしこれがOKなら、WinとUNIX系OSで
リポジトリが共有できたりするんかなー、 とか思って。
>>352-354 ちなみにダイアログ内の文字のフォントはMSゴシック系じゃありませんでした。
バックスラッシュがきちんと表示されとりました。(カンマも見易かった)
>>355 なるほど。とっても明解な回答ありがとうございます!むっちゃすっきりしました
ブラウザで見ると
>>1 が[ここ壊れてます]になってるな。
358 :
名無しさん@お腹いっぱい。 :03/08/31 05:05
てすと
これ cvs すれか。 navi2ch で見るとタイトルがわからん。
これから修復します。 カキコしないようにおながいします。
修復完了したつもりです。 ではドゾー。
363 :
名無しさん@お腹いっぱい。 :03/09/04 16:53
復活age
では復活記念に質問。 cvs diff で、diff -qのように、変更されたファイルの一覧だけを得たいのですが、 どうしたらよいのでしょうか?
cvs statusの結果を適宜加工するとか、 cvs -n updateするとかかな。
>>364 cvs status |grep ^File |grep -v Up-to-date
とか?
はい、それから〜
368 :
名無しさん@お腹いっぱい。 :03/09/12 18:11
>>368 そのURLの質問者くらいには各ファイルの内容書いてくれないと、
「別の原因」かどうかも分からんのだけど。
過去に例を見ない良スレだ。(でも念のためにsageておく) 早速なんですが、モジュールの削除ってどうすればいんですか? sourceforge.jp使ってます。 教えてもらえないでしょうか?(教えて君ですいません)
cvs rmじゃなくてrepositoryごと? それは管理者に頼むしかなかったような気がする。
>>371 ありがとうございます。
それならrepositoryごとはあきらめます。
別件なのですが、repository内のディレクトリの削除ができません。
ディレクトリ削除してcommitだけでは駄目ですか?
ディレクトリは消せない。 checkoutやupdateの時に-Pつければ、 空のディレクトリが出来ないようには出来るけど。
>>373 ありがとうございます。
ってことはリポジトリの中に一回作ったディレクトリは消せないってことですか?
(管理者に頼まないと)
まぁそういう事だね。 行き当たりばったりでやろうとすると、CVSの仕様というか制限というか は結構ウザい。新しくディレクトリを作るとか、枝を分けるみたいな変更 を加える時も、リポジトリを直接触れる権限を持ってないと失敗した時 めんどいし。
一般的には、checkout/updateは-P推奨にしておいて、 空のディレクトリが欲しい時にはdeleteme.txt等のダミーファイルを入れておく という手が良く使われまつ。
.keepme か .cvsignore 使ってるわ
ディレクトリ構成などがきっちり決まるまでは Subversion で管理し、 きっちり決まって安定してきたら CVS に突っ込む、 というような運用が良いのだろうか? と、口から出任せを言ってみる。
subversionの履歴ってcvsに移せるの? 移せないんだったら全然意味ない気が。
>>379 いや、ネタにマジレスされても・・・
ていうか、ディレクトリの増減 (特に減) の情報は、
どうやっても CVS では欠落するので、履歴を全て移すというのはナンセンスなわけで。
モジュール名を間違えてimportしちゃったんだが、削除するのに管理者権限いるの?
382 :
名無しさん@お腹いっぱい。 :03/09/17 15:23
WinCVS1.3.10.1 Beta10(Build1)なんですけど。
Python 2.1.3 (#35, Apr 8 2002, 17:47:50) [MSC 32 bit (Intel)] on win32
CVSROOT:
[email protected] :/home/cvsroot/abc (ssh authentication)
cvs checkout -c (in directory C:\Documents and Settings\mona\My Documents\WinCVSCO\)
cvs checkout: warning: unrecognized response `Unable to open connection:
' from cvs server
cvs [checkout aborted]: end of file from server (consult above messages if any)
***** CVS exited normally with code 1 *****
こうなってしまいまつ。
SSHがうまく行っていないのですかね?
>>381 リポジトリ上でrm -rfできる権限は必要だわねぇ。
>>382 とりあえずsshでログインしてみて、できるかどうか確かめてみたら?
ssh -l mona fabiyon.com cvs --help
とかさ。
386 :
名無しさん@お腹いっぱい。 :03/09/20 05:22
普通に使っていたらリビジョンナンバが1.1, 1.2, 1.3...ってあがっていくでしょ。 これをキリがいいときにメジャー番号、つまり2.0や3.0とかにあげたいんだけど どうすればいいの? ちなみに普段はWinCVSを使っているんだけど、WinCVSの中から そういうコトってできるの? コマンドラインからだったら cvs commit -r 2.0 で出来たけど、この方法であってんの? この方法でメジャーバージョンをあげたら、ブランチが切れてたけどなんとかならんの?
ブランチが切れたって、具体的にはどういうことが起きたの?
>>386 リビジョン蛮行でバージョン管理してはいけない。
タグをつけよう。
389 :
名無しさん@お腹いっぱい。 :03/09/20 11:59
>> 387 ブランチが切れたというのは、WinCVSのグラフィカルな表示をみて感じたんだけど、 1.xと2.xが一本のブランチとして繋がっていないように表示されるというコトです。 >> 388 勿論、タグでも管理しているけど、普通に使っていればリビジョンのメジャーバージョンが 上がらない=十分に使いこなしていない様に感じてしまって。 存在するのに仕えないのは気持ち悪いし、世のかなのリポジトリでは2.Xとか使われている 例は良く見るし…。
>>389 >リビジョンのメジャーバージョンが上がらない=十分に使いこなしていない
そんなこたぁない。
http://www.jp.freebsd.org/cgi/cvsweb.cgi/src/Makefile CVSでリビジョン番号を明示的にいじってるプロジェクトなんて少なく
とも俺は見た事ないんだけど。
まぁRCSが「x.y」形式のリビジョン番号を使ってたので、RCSをベース
に作ったCVSもそれをそのまま引き継いじゃってるけど、いっそ頭の
「1.」は無視して考えた方がいいかもね。
WinCVSの動作は知らんけど、普通2.xとかやらないからバグってる
のに誰も気付いてないだけじゃないの?
>>389 > 例は良く見るし…。
例えばどこよ ?
見たことないんで、まじで知りたい。
よく夢に見ると思われ
よくは見ないけど、ないわけじゃない。 % cvs stat lisp/gnus.el =================================================================== File: gnus.el Status: Up-to-date Working revision: 6.198 Repository revision: 6.198 /usr/local/cvsroot/gnus/lisp/gnus.el,v Sticky Tag: (none) Sticky Date: (none) Sticky Options: (none)
あと五千例ほど出せばフーンって思ってやるよ。
あと五千万例ほど出せばヘーヘーヘーって言ってやるよ。
>>390 ,391
ほんとだ…。
主だったオープンソースプロジェクトを除いてみましたが、
1.X以外のプロジェクトを見つけることが出来ませんでした。
早とちりでしたすみません。
私が見たのはCVSの説明のサンプルとして2.Xとかをチラホラ
みたので、CVSもそのように管理する(できる)と思い込んでいました。
>>385 レスありがとうございます
そのコマンドは通りました。
うーむ・・・SSHは動いているのか・・・
>>397 そうなるね。
すると、WinCVS (というかPython?) から ssh系由でcvs呼出した時だけ、
ストリームの内容が改変されちゃってる可能性が高い。LF<-->CRLF変換とか。
以下をチェックしてみ?
- cgywinで、どっかをテキストモードでマウントしてたりはしない?
- 最近のcygwinなら不要だけど、昔のcygwin使ってるなら、CYGWIN環境変数にbimode書いとかないとまずいかも。
漏れはCUI派でWinCVSとか使ったことないんで、外してたらスマソ。
>>389 | ブランチが切れたというのは、WinCVSのグラフィカルな表示をみて
| 感じたんだけど、1.xと2.xが一本のブランチとして繋がっていない
| ように表示されるというコトです。
1.xと2.xは(少なくとも)一本のブランチではありません。
info cvsで(Branches and revisions)のページを読みましょう。
自分で管理してるプロジェクトで、毎日 update するようなのは、 一年ごとに major 番号上げてるな。
へ〓
>>400 cvs import がイマイチにならない?
cvs ci -r2 したまま sticky tag を残した場合、新規に import したファイ
ルにつくデフォルトブランチが有効にならないし、cvs update -A すると新規
ファイルが 1.x になっちゃう。何かうまい手があるのかな。
cvs はそういう使いかたはしないと何度言ったら(略
404 :
名無しさん@お腹いっぱい。 :03/09/28 19:53
複数人数でWebページ製作するのにCVSを使おうとしてるのですが、 自分以外の人はCVS(といかシェルコマンド全般)が使えません。 そこでFTPでログイン時にcvs update、ログオフ時にcvs commitとか できるとうれしいと考えたんですけど、どうやらできないっぽい。 やっぱりほかの人にCVSを覚えてもらうか、CVSをあきらめる しかないんですかね?
どんな環境でやろうとしてるんだか知らんが、各作業者がWindows 使ってるならWinCVS使わせるとか、コマンド版CVSに皮かぶせた バッチファイルでも作ってエクスプローラからダブルクリックする だけでupdate/commitできるようにしておくとか。
しかし、そういう状況ではロックを前提にした管理システムの方が いいような気もするな。 conflict一発で破綻のヨカソ
>>404 WebDAV がいいんじゃねーか?
バージョン管理はできないけど、複数人で共有して
編集するときだけ一応排他制御できる。
ありがとうございます。 複数人で、といっても一つのファイルを同時期に複数人で編集すること はありえない環境なのでconflict&ロック問題はあまり考えなくて大丈夫です。 現状ではFTPでやっているのですが、更新するときにファイルの末尾に ~とか-とか日付とかつけた過去の版がいたるところに作ってしまって なんだかなぁ。と思ってたんです。 しかもクライアントはWin&Mac混在で自分がMacのことよくわからない もので、CVSつかえ。と気軽にいえない。。
>>408 eclipseのCVSプラグイン(標準でついてくる)を使うのはどうだろう。
おおげさかな。
subversionは今開発が安定していないから、数カ月待った方が良さそうな気もするが。
>>410 webブラウザでレポを見る時のURLでバージョン指定するのって結局
どうなったの? なんか「!」で指定するへんちくりんなやつはファイルに
しか効かないみたいだったけど。あれから進展なし?
>>413 すれ違いなので簡単に...
!で指定するような機能は以前からなかったと思います。
そもそも、リポジトリの index.html を表示させると
普通に最新版の画像などが表示される事を考えると、
html 内のリンクにまでリビジョン指定が必要になるので
まずできない事ですよね。
やるとしたら、タグやブランチとして別ディレクトリに
cp して、その中を参照するのが Subversion での筋かと。
こんな感じ
http://svn.collab.net/repos/svn/tags/ CVSWeb みたいなのを求めているなら ViewCVS が
それにあたるようです。
ViewCVS で見る Subversion リポジトリ
http://svn.collab.net/viewcvs-dev/svn/ まあ、普通に細かい作業をしたいならブラウザではなく
Subversion クライアントでアクセスすれば良いんですけど。
415 :
名無しさん@お腹いっぱい。 :03/09/30 22:13
windowsでtelnetで他のPCのCVSにcommitすると cvs commit [時間] waiting for (ユーザー名)'s lock in C:\repository/aaa と出たんでフォルダ名 #cvs.lockと#cvs.tfl や #cvs.rfl や #cvs.wfl で始まるファイルを消してまたcommitするとまた上の表示が出てcommit出来ず 今度は名前を指定してcommitすると反応がなくなり、フォルダ名 #cvs.lockと #cvs.wfl が出来てしまいます。 どうしたらcommitが出来るようになりますか? どなたか教えて下さい。
>>415 >windowsでtelnetで他のPCのCVSにcommitすると
telnet使って手動でCVSプロトコル喋ってるのか?(w
リポジトリはどこにあって、CVSROOTはどう定義してて、どのツール
使って、どう操作したらそうなったのか、さっぱり分からん。
>>415 1. 誰もそのCVSのリポジトリにアクセスしないようにさせます。
2. フォルダの検索で「#cvs*」というファイルとフォルダを検索して、
全部削除します。
3. もう一度CVSの操作をやってみます。
419 :
名無しさん@お腹いっぱい。 :03/10/06 20:48
cvs update してみると、あるファイルがコンフリクトになったので・・・ 「あら、やだ。マージしなきゃね。」 とコンフリクト対象のファイルを開いてみたらコンフリクトマーカが出てないのです。 「まあ、どうしちゃったのかしら。」 と見てみると、、、、、 お□ い ら の 修 正 消 え て リ ポ ジ ト リ の 最 新 フ ァ イ ル に 上 書 き さ れ て る ヽ(`Д´)ノ こんなことあり?これじゃ CVS の意味ないよう! どうすりゃこんなこと防げますか。
> どうすりゃこんなこと防げますか。 どうすりゃそんなこと起こせますか。
Cygwin上のcvsでも使ってるんじゃねーか? anonymous CVSで最新追いかける程度なら問題ないけど、commit やり出すとなんか色々変だぞ。commit完了してもワークファイルが 更新されてなかったり。
commitがワーキングファイルに影響を与えないのは当然では?
>>422 $Id$ とかキーワード付いてる場合は更新されるでしょ。
漏れはCygwinをバリバリ使っているが、CVSだけはWindowsネイティブのを使ってるよ。
昔、Cygwinのcvsでcommitしたら、ファイルが先頭数十バイトを残して消えちゃったことがあってねえ。
それから恐くて使う勇気がでない(w
>>419 .#から始まるファイルが残ってたりしない?
cygwin のもので何の問題もないが?
>>425 うん。今だったらCygwinでも全然問題ないだろうと思う。
ただ、1度そういうことがあると、本当に積極的な理由がないと乗り換えないんだよね。。
427 :
名無しさん@お腹いっぱい。 :03/10/10 17:08
サーバー:redhat9で、init以外設定してない、フォルダをsgidでグループ共有 クライアント:eclipseからextssh 以上の環境でリポジトリと同期を取っても、グループはCVSのものになるが、 ファイルのパーミッションが444になってしまい、他の人が書き込めないようです。 sshでログインしてファイルを作成するときはちゃんと664になってくれますが、、 どなたか原因分かる人いませんか?問題ありそうな箇所だけでも教えていただければ・・m(_ _)m
>>427 | サーバー:redhat9で、init以外設定してない、フォルダをsgidでグループ共有
setgidしたディレクトリのmodeは?
telnetできるサーバをpserverで使えればいいんだけど、そうじゃないときに lockファイルできたらどうするんでしょうか?
>428 /cvs_test/CVSROOTと/cvs_test両方2774です。 というより、cvsのルート以下全部2774にしたが、作成されたフォルダは問題ないが ファイルはみな444になります。。。
>>430 ,vのファイルそのものは444で問題ないです。
CVSサーバ上での「他の人」は全てディレクトリと同じグループに入っていますか?
結論:VSS最強。
VSSってなぁーに?
>>430 431さんに少し補足すると、ファイルがread onlyでも、ディレクトリがwritableならOKなのよん。
>434,431さん できました、ありがとうございます。 グループとか間違えてテストしたから変なところではまってしまった。
436 :
名無しさん@お腹いっぱい。 :03/10/15 18:15
サーバ:RedHat9 クライアント:Windows(eclipse+extssh2) のとき、knjwrpのように漢字コードを自動変換する方法ってありますか? 最初はサーバ側にknjwrpパッチ適用済みのものをインストールして、 ホームディレクトリに.cvswrappersを置けばいいと思っていたのですが どうもうまくいかないようで・・・ 何か方法があるんでしょうか? それとも皆さんSJISのままCommitしてるんでしょうか?
まず本当に文字コードの変換が必要なのかを考えること
>>437 まず、プロジェクトで、ファイルの文字コードを(必要なら改行コードも)決める必要があるよね。
で、EUCってことにするなら、Windowsでコード書く人はEUCを扱えるエディタを使う。
SJISってことにするなら、Linuxでコード書く人はSJISを扱えるエディタを使う。
ってしません?
>>438 その流れのどこに文字コード変換が入るというのか?
>>439 あ、スマソ。436さんに書いたつもりでいた。
もちろん漏れは文字コード変換なんていらないという立場っす。
そもそも、なんでWindowsだとSJISしか読み書きできないと思ってる香具師が多いんだか。
OSと文字コードは独立なのに。
分かってないなぁ。 Winでeuc-jpとかやらせると、新規でファイル作った時に大抵SJIS のままcommitする奴が出てくるから、「仕方ない、cvs側で強制的 に変換させるしか無いか…」となるんだよ。 まぁeuc-jpとして認識されるテンプレ用意しといて、「新規でファイル 作る場合はこのテンプレ使う事」という仕切りにしておけば大半は 防げるけど、それでも時々やらかす馬鹿が…(⊃Д`) 「そんなのその現場のレベルが低いだけだろ」と言われればそれ までだが、全員が全員ちゃんと分かってる人間なら何も悩む必要 なんか無いさ。
>>441 CVSROOT 以下の設定ファイルいじって、commit メッセージの雛形を
用意できるが、それでは不満なのか?
え?commit logの話だったの?
LinuxとWindowsで同じコードを使う必要があるんですが・・・。
質問にしては何を聞きたいのか分からんし、独り言なら余所でやってくれ、と。
commitinfoでファイル、verifymsgでログメッセージをチェックして、規定の文字コード 以外なら弾くようにすりゃいいんじゃない?やったことないけど。
漢字変換が必要だという話なんですが・・・。
>>450 勝手にしてください。向後このスレでの報告は一切不要ですので念のため。
>>451 何を書き込むかは私が決めることですが・・・。
弾くので不満なら、漢字変換すりゃいーだろ。 commitinfoでファイル、verifymsgでログメッセージをそれぞれ変換するようなフィルタに 食わせればいいだけだ。 ちゃんとした質問の仕方や、貰ったヒントから自分で調べるということも知らないくせに、 いっちょ前に煽りに反応して荒らすな。
WindowsとLinuxで同じコードを使う必要がある場合は、 コード変換せざるを得ないという、単なる情報なので、 スルーしてください。
>>455 > WindowsとLinuxで同じコードを使う必要がある場合は、
> コード変換せざるを得ない
んなわきゃないだろ
>>456 じゃ言い換えましょう。
コード変換せざるを得ない場合もある。
これでOK?
>>444 (444の周りの開発環境では)
WindowsとLinuxで同じコード(ソースコード?)を使う必要がある場合は、
コード(文字コード?)変換せざるを得ないという、単なる情報なので、
スルーしてください。
ほんとどうでもいい情報ね・・・444って役にたたない
>>458 knjwrp版はそういう要望を満たすというのも要件のひとつでしょ。
つーか、君のほうが役に立たないから、荒らさないでくれる?
>>453 それだとcvs diffとかで支障出ない?
>>464 cvs diffの出力をnkfとかに食わせてどうにかするのでは?
データとして割とでかいバイナリを扱う(しかも頻繁に更新)プロジェクトがあるのですが、 cvsでバイナリを管理するって無謀ですかねえ。-kbオプションでキーワード展開するとしても 差分管理が意味をなさない以上、ディスク容量が心配です。今のところ自作ツールでバイナリ を管理しているのですが、できればcvsで管理したいのです。何かお知恵はありませんか?
そんなあなたにSubversion
>>467 レスどうもッス。Subversionも検討したんですけど、まだ開発が安定していないという
判断で見送りになりました。うーん、再度検証してみましょうかしら。情報どうもです。
大きいプロジェクトで実績があれば参考にしたいですねー。探してみようっと。
CVSWeb で History に書き込めないよってパーミッションエラーになるんですけど、 皆さんは History ファイルは o+w ですか? それとも nobody+w とかしてるんですか? いずれにしてもセキュリティ的に嫌な感じなのですが、これは仕方ないのかなあ。
仕事でSubversionを使うのはやめとけ。 要求する環境がクソ。
apache2いりませんよ
Does this mean I have to set up Apache to use Subversion? The short answer: no.
>>441 > 分かってないなぁ。
はぁ?
> 「そんなのその現場のレベルが低いだけだろ」
まったくもってその通りだ。
少なくとも、それをCVSで解決しようというアプローチは間違ってる。
そもそも文字コードのことを理解してない香具師をそのまま放置してプロジェクト成功すると思ってるの?
元々
>>436-437 の辺りがはっきりしてないので何の話だったのかよく分からん
状態になってるが、まぁとりあえず。
>>475 1. 間違っても自動修正する(CVS側での自動変換等)
2. 間違わないようにする(テンプレだけだとちょっと弱いか)
3. あえて何もしない(教育して各開発者自身でちゃんと意識させる)
2.や3.だと意識の低い奴が文字コード気にせずcommitするのとかうっかりミス
までは防げないから、結局1.を取らざるを得ないってのが441の言い分かな。
まぁかなり後ろ向きではあるが分からんでもない。
ただ、どれを取るかはそれぞれの現場の事情/管理ポリシー次第であって、
どれが正しい/間違ってるとかいうもんではないような。
ま、ちゃんと教育しろよってのは確かに正論だし、そうすべきだと思うけど、
教育できる権限は無いとか何とか色々あるのやもしれん。知らんけど。
ところで
>>441 よ、自動変換やってるんだったら結局放置されてる
>>436 の
問題にアドバイスしてやったらどうだ?(俺もやった事ないのよね)
CVS以外のとこで自動変換する、って手はないのかな?
俺も何がなんだかよくわからずもやもやしてるんだが(w コード変換の必要があって、なおかつサーバのcvsを入れ替え られる状況にあるなら、サーバにknjwrpバージョンのcvs入れて、 サーバの$CVSROOT/CVSROOT/cvswrappersをいじれば 問題は解決する。 デフォルトのcvsで、Shift_JISのファイルを扱って問題があるか どうかはやったことないからわからん。 問題ないの?>経験者
あ、そうそう
>>478 はpserverの話で、Sambaを使ってWindowsで共有すれば
Shift_JISでも問題ない。
ちっ、いい具合に荒れてきたのに
>>474 The long answer: yes.
>>481 なんで?
最近(でもないけど)のsubversionにはsvnserveというプログラムがついていて、
これをTCPのサーバとして立てておけば(inetdとかtcpserver経由で)、
svn:// というスキームでもってアクセスできるのよ。
IANAのデータベース(
http://www.iana.org/assignments/port-numbers )にも
svn3690/tcp
というのが追加されているよね?
あとcvsの:ext と同じようにover sshで使いたいときは svn+ssh:// で
アクセスできる。
ただプロジェクトの中にWebDAV経由でしかアクセスできないクライアントが
一つでもあると、結局Apacheも設定しないといけないけどね。
>>476 うまくまとめてくれてサンクス。
「分かってないなぁ」にムっときてしまったのでつい。。
ただ、文字コード間違ってciしちゃうって、そんなに致命的なのか?って思うんだよね。
うちのプロジェクトでも、よくそういう間違いしちゃうことはあるけど、
別に再度ciすればすむ話だからなあ。
ところで、
>>478-479 はファイル名の話をしている?
だったら、cvsコマンドは、SJISの2バイト目に'\\'があると、全然ダメっす。。
>>482 そうそう。Apache HTTPD は必要ないんだよね。
Apache APR は必要だけど、これは別に
HTTPD が必要な分けじゃないし、Subversion ソースに
含まれてるから別個に用意する必要もない。
WebDAV のバージョニング実装として扱われがちだから
そう勘違いされやすいのも分からないでもないけど。
こっちももうすぐバージョン 1.0 なので仲間入りよろしく
ってなかんじで
>>483 いや、ファイルの内容の話。サーバ側のcvsを使う場合で、ファイルの内容が
Shift_JISでも問題ないの?
>>485 バイナリも扱えるのに、なんでSJISがダメなんだ。
すみません、cvsupはどう発音しますか?
しぃぶいえすうp
シブ・サップ
>>485-487 べつにSJISで大丈夫だよ。
もう5年くらいSJISで色々やってるけど、おかしくなったことはないっす。
$Id$とかのキーワード展開もうまくいってるし、
cvs diffも普通だよ。
何故だめかもしれないなどと考えるんだろう?
494 :
ななしということにしたいのですね。 :03/10/24 02:22
よくわかんないけど、SJISの1バイト目か2バイト目に$があったりすると キーワード展開がおかしくなるときがあるんじゃね?
よくわかんないけど、1バイト目に$があったりすると それは$だと思う
SJIS の 2 バイト目に $ こないよ。変換規則やコード表見てみ。 ISO-2022-JP だと「ど笋」が「$Id$」になるとか、可能性は 0 じゃないけど、 実際に衝突したって話は聞いたことない。
今度作るソフトの名前は「ど笋」にしよ。
FAQに追加だな。 JISを扱う時は -kb しないと 「こんど笋たべたい」 が 「こんど篋 窺屋鯵渥牡 葦叉刑概 鴒祷い燭戮燭」 に化けるので注意!
>>500 そういや -ko と -kb って内部的な動作が違うの?
改行コードの扱い
>>493 Un*xのコマンドで無条件にSJISが通るなんて考えるほうがへんだと思うけど。
>>503 まあ、8bit目がおちるとかいう可能性は考えちゃうかもな。
ただ、cvsはバイナリもあつかえるわけで、それ考えたらSJISでおかしくならないと推測するだろう。
キーワード展開がらみを除けば。
>>504 いわゆるテキストファイルをバイナリ扱いしたら、魅力半減では?
クライアントはWindowsだっていってるのに、WindowsでもEUCが使えるから 問題ないとか、SJISで問題が発生すると考えるのはおかしいとか、 厨房まるだしですな。
>>505 いや、バイナリあつかえるプログラムで8bit落とすような実装は考えにくいってことっす。
>>508 バイナリを扱えることと、テキスト関連の処理で8-bit cleanなのは次元の
違う話だと思うけど。
510 :
名無しさん@お腹いっぱい。 :03/10/24 23:58
>>507 WindowsでもEUCが扱えるから問題ないと主張する厨房をさらしあげにきたんですが。
>>509 あ、そうか。そうかも。。
最近C書いてないから、かなりトンデモなこと言ってしまった。スマソ。
主張の強いあほがいるな。
>>510 少なくともEUCのテキストを書く(コードを書く)ような用途なら
WindowsでもEUC扱うエディタがあれば問題ないと思うが。
で、どういう問題があるとお考えで?
ソースとcommit logの文字コードがあっちょらんとcvswebが困るってのはあるけどな。 cvsweb側でiconvかなんか使って誰か何とか汁。
>>513 SJIS環境でそのファイルを使おうと思ったときに困る。
つーか、
>>436 ,438,440という流れが非常に痛い。
お前は趣味グラマかっつーの。
EUCからShift_JISに変換すりゃ良いじゃん。 内部的な処理にはEUCを使って。
実際にうちではSJISに統一して業務やってますよ。 Windowsでコード書いてる人も、Linuxでコード書いてる人もいる。 で、何も、問題起きてないんだけど。 EUCに統一すると問題がおきるんですか?
>>523 書くぶんには問題ないが、使おうとすると問題が起きる場合がある。
>>519 なんでいちいちそんなめんどくさいことする必要があるんだ?
>>523 Linuxで8bitが通らないコマンドを使うときに困る。
>>523 WindowsでEUCが通らないコマンドを使うときに困る。
だからcvsを含んだUNIXのツールを使うときはEUCに変換。 Windowsで使うときはSJISに変換。 これでいいじゃん。
使う前に決まっているジャン。 cvsにコミットする前にEUCに変換。 チェックアウト後、編集する前にSJISに変換。 編集後、EUCに……
>>530 そして cvs diff が使えなくなると。
はじめからWindowsではSJIS、Un*xではEUCと決めとけば 問題ないでしょ?
>>530 きみ一人で開発してるんならそれもいいかもね。
でさぁ、 実際に、「Linuxで8bitが通らないコマンド」とか「WindowsでEUCが通らないコマンド」 って何よ? 仮にそういうのがあるとして、それを代替できるようなコマンドは本当にないの? あるならそういうソフトウェア揃えて、CVSで扱う文字コードを統一してた方が楽だと思うんだけどねえ。
>>535 だからきみ一人で開発するんなら問題ないんだろ?一人だったらそりゃ楽だろう。
逆に言えばそのような環境にしたとしても、複数人で開発を行う場合、
将来それを使う人たちが困る場合がある。
それに「cvsで扱う文字コードの統一」の話をしているつもりだが。
WindowsだったらSJIS、Un*xだったらEUCにしておくのがよいという話。
s/複数人で開発を行う場合/複数人で開発を行う場合や/
というか、Un*xでなぜEUCのファイルが、それを入力されると予想していない ツール・コマンドでも問題がないことが多いのかわかってる?
>>536 > それに「cvsで扱う文字コードの統一」の話をしているつもりだが。
> WindowsだったらSJIS、Un*xだったらEUCにしておくのがよいという話。
うーん、何か話がずれてるのかな。
漏れが問題にしていたのは、
「複数人が開発に参加していて、利用しているOSは様々」
という状況の時に、CVS repositoryに格納されているファイルの文字コードを
いちいちWindowsでコード書いてる人はSJIS、Un*xでコード書いている人はEUC、
って、変換する必要があるか?って話でした。
で、漏れは、そんなの必要ないケースが殆どである、という主張をしているってことなんだが…。
>>538 うん。SJISの2バイト目にはいろいろやらしいコードが入ってるから、とかそうことが言いたいんだよね?
もしかして、「ツール.コマンド」とかいってるのはgccのこと言ってるの?
>>539 >「複数人が開発に参加していて、利用しているOSは様々」
>という状況の時に、CVS repositoryに格納されているファイルの文字コードを
>いちいちWindowsでコード書いてる人はSJIS、Un*xでコード書いている人はEUC、
>って、変換する必要があるか?って話でした。
変換なんかしないという話をしているつもりだが。
Windowsで開発するならSJISに、Un*xで開発するならEUCに決めておいたほうが
幸せだろうという話。
>で、漏れは、そんなの必要ないケースが殆どである、という主張をしているってことなんだが…。
だから、そりゃきみのスコープの話でしょ。
>もしかして、「ツール.コマンド」とかいってるのはgccのこと言ってるの?
違うよ。gcc以外のツールは使わないのか?
>>541 つまるところ、きみはWindowsでもEUCを使えばいいじゃんって主張なんだろ?
きみの使ってるツールは問題ないんだから、きみはそれでやればいいだろ。
だが、万人向けのソリューションではないわな。
Windowsで文字コードがEUCのものがあるとどういう不都合があるか思いつかない
レベルなんだから、あまり口出ししないでほしいな。
s/541$/539/
>>540 > 変換なんかしないという話をしているつもりだが。
ん?じゃあ、お互い同じ主張してたってこと?
でも、
>>で、漏れは、そんなの必要ないケースが殆どである、という主張をしているってことなんだが…。
> だから、そりゃきみのスコープの話でしょ。
こっちは正反対のこと言ってるように思えるし…。
漏れはどこを読み間違っているんだろう。
>>541 > つまるところ、きみはWindowsでもEUCを使えばいいじゃんって主張なんだろ?
開発対象のソースコードがEUCならね。
あるいはWindowsじゃなくてUn*xで開発してもいいけど。
> だが、万人向けのソリューションではないわな。
うん。別に万人向けなんて言った覚えはないが。
ただ、cvsのcommit時に文字エンコーディングの自動変換かますのは、
ほとんどの人にとっては最適なソリューションではないと思ってる。
cvs diffは?
>>544 cvs diffは、むしろ自動変換しちゃうと、working fileとdiff取った時にまずくね?
ああもう! UTF-8 でいいよ!
ああもう!日本語なんか使うな!
ああもう!cvsなんかやめようよ!
ああもう!人間なんかやめようよ!
ああもう!2chなんかやめようよ!
>>543 違う。Windowsで開発する場合にはSJISを選択し、Un*xで開発する場合には
EUCを選択しろってのが俺の主張。前者の場合にUn*xでSJISを使えるナニか
を使ったり、後者の場合にWindowsでEUCを使えるナニかを使ったりするのは
枝葉末節。
そうするのが、もっともcvsの恩恵を受けやすいし、他のツールの恩恵も障害
なく受けられる。
同じ行編集しなくても同時に編集したらまずい場合とかあると思うんですけど、 そういう場合どうするんでしょうか?
>>552 人間同士のコミュニケーションでどうにかする。FreeBSD なんか見てると、
だいたい「仮想機億関係はこの人が担当」って感じで、大雑把な担当を
決めて、そこをいじる場合には担当者に事前に許可を取る事になってるよね。
>>552 後から登録しようとした人がcvs updateしたときに気づくので、そのとき
>>553 のような
ことをするか、あるいはテストスィートを通してから問題がないことを確認しcommitする。
同じファイルを編集しなくてもマズい場合もあるしナー
CVS is not a substitute for management. CVS is not a substitute for developer communication.
>>551 返事ありがと。
> 「複数人が開発に参加していて、利用しているOSは様々」
この前提があったとしても、551さんの主張を通すなら、
CVSで自動変換するとか、updateするなりcommitするなりする度にnkf通すとかする必要があるけど、
そういう理解で良い?
>>558 問題は開発環境より、プログラムの実行環境だと思うけどなぁ。俺のトコロだと
開発中のプログラムの実行環境 はUNIX、使ってるエディタは Win32 って人は
それなりに居る。でもソースコード編集時の文字コードは日本語 EUC で統一
してる。
そうしないと、cvs で変換かける以前の問題として make 通らないんで。
>>559 うん。漏れもそういうことを言ってたつもりなんだけどねえ。
なぜか理解してもらえぬ。
VSSになれたものどもと付き合っていて思ったのだが、 CVSは coしないと repositoryの中身が見えないのがぐあい悪い。 もちろん repositoryを直接のぞける場合はいいんだけど。 VSSはそういった moduleの browsing toolも兼ねているのだなあ。 まあ、使いはじめると CVSの方が使いやすいんだが。
export でも見れるが
cvsweb必須
うむ、cvswebとあわせて運用してるんだが、 cvswebから直接 sourceを commitしたい、とか言い出すんだな。 まあ、それが一概に悪いともいえないとも思って。 そこらへんが改善されれば、うちの社内での CVSの利用率も あがるんじゃないかなあ、と後輩の愚痴を聞いて想ったのでした。
cvswebの拡張でcommitもできるようにした奴無かったっけ? Subversion出てきたからとん挫したかな?
cvs diff で -N を指定してると、 Atticに移っており、ローカルには存在してないファイルが、 新規にファイルが追加されたかのような出力をされてしまうのですが、 これ、なんとかならないでしょうか?
>>558 違うって。
Windows用のプロダクト、Un*x用のプロダクトを開発するときの話をしてるんだ。
>>558 さらに、漢字変換はしないという主張なんだが。
なぜわかってもらえぬのだ。
で、この議論の行方はどこにむかうかというと、
>>436 に戻るのだ。
>>568-569 なんだ。じゃあ、「Windowsで開発」じゃなくて、開発対象がWindows用のプロダクトなのね。
それって559さんの主張と同じでしょ?
なら納得です。
で、漏れが最初からいってるのは、Windows用のプロダクトを開発するメンバーの中に、
Unixでコード書く人がいたとして、
その人はSJISのままコードを書くよねえ。emacsとかつかってさ。
ってだけのことなんだけど。
それには同意してもらえるかい?
>Windows用のプロダクトを開発するメンバーの中に、 >Unixでコード書く人がいた この時点で既に想像できないんだが… もちろん書いてcommitする事は可能だが、コンパイルとかUnitTest とかどないすんねん、と。 まさか「書いただけ〜」でcommitする訳じゃあるまいし。
>>572 スクリプト系なら良くある話では?
PHP では win で書いて UNIX 系 OS で実行、
ASP とかなら UNIX 系 OS で書いて win で実行とか。
>>573 俺の周囲では「Windows 用のコードを UNIX で書く」人は、今までいなかったなぁ。
「UNIX 用のコード (あるいは UNIX で動くクロスコンパイラで処理するソース)」を
Windows 用のエディタで書く人間は良く見かけるから、確かに逆も居ておかしく
ないんだが。
単にファイル共有の問題かも。UNIX 上にあるファイルは samba を使えば簡単に
Windows クライアントから共有できるけど、逆はパーミションの問題などあって
なかなか面倒。加えて UNIX 上の環境は、ある程度まで Windows 上でも再現
できる (エディタとして gvim, Meadow 使うとか cygwin 使うとか) けど、逆は
難しいから。
>>572 NetBSD なんか、すべての環境で試せる人いないよ。
>>571 ここはCVSのスレなのだから「開発」にははコードを書いてmake、ビルドをしてテストをして
cvsにcommitするという一連の作業が最低限含まれると思っていたのだが。
>で、漏れが最初からいってるのは、Windows用のプロダクトを開発するメンバーの中に、
>Unixでコード書く人がいたとして、
>その人はSJISのままコードを書くよねえ。emacsとかつかってさ。
前にも言ったように、こういうのは枝葉末節。ま、俺のチームに「それが俺の流儀だから
俺はそのやりかたでやる」というような奴がいたら、チームから追い出すがね。
>>571 > なんだ。じゃあ、「Windowsで開発」じゃなくて、開発対象がWindows用のプロダクトなのね。
> それって559さんの主張と同じでしょ?
違うって。編集の手段なんか問題にしていない。プロジェクト全体の文字コードを決めておく
必要があるだろという話をしているつもりなんだが。
名無しで「俺」と言われても、さっぱり議論が追えない……。
あ〜、俺だよ、俺 俺の意見どう思う?
これがオレオレ詐欺ってやつか…
>>572-573 それは確かにその通りだね。例えとして逆の方がよかったかも。
ちなみに、「Windows 用のコードを UNIX で書く」は、動作確認はVMwareを想定ていました。
>>576 > こういうのは枝葉末節。ま、俺のチームに「それが俺の流儀だから
> 俺はそのやりかたでやる」というような奴がいたら、チームから追い出すがね。
だから、どういうことをやるような奴がいたらチームから追い出すって言ってるのか具体例をあげてくれ。
本当に想像できないんだけど。
Windows用のプロダクトのコードをUNIXで書いて、動作確認をVMwareでやってcommitしている人は
あなたのチームからは追い出されますか?
>>577 > 違うって。編集の手段なんか問題にしていない。
> プロジェクト全体の文字コードを決めておく必要があるだろという話をしているつもりなんだが。
「プロジェクト全体の文字コードを決めておく必要がある」ってのは100%同意するし、反対してる自覚もないんだけど。
ひょっとして576と577は別人ですか?同一かとおもってたよ。
よく考えたら毎回別々にレス返してきてるじゃん…(鬱
いつまでも基地外相手にしてんなよ
CVSでの分散開発における文字コードがらみの扱いについて、 もし自分が知らない(思い付かない)、もっと良い解決策があるなら知りたいとおもったので、 しつこく粘ったのだが、、無駄だったようだ。
なんか荒れてるなあ 開発環境が混在するときは、ソースやCVSログのコメントは 英語(US-ASCII)にすればいいじゃん。
わかった!全部unicodeで。
>>585 ログとか日本語ファイル名なら Subversion に
しておきなはれ。LANG をみて iconv を使って
全部 UNICODE にしてからサーバに送ってくれる。
co すると UNIX 系だったら EUC の日本語ファイル、
Win だったら SJIS の日本語ファイル、
とかやってくれるよ。ログも同様。
ファイル内のエンコードは当然変更しないけど...
そういえば日本語ファイル名って使ったこと無いな俺、cvs使って3年になるけど
>>589 ごった煮で日本語ファイル commit できますね。
相手先からの資料が日本語ファイルだった場合
そのまま commit しておいたりしてます。
>586 ソースやコメントを英語でってのはキビシイような。。。 やはり SJIS が無難っぽいっすよ。 EUC 必須な環境だったら必要なときに EUC に落とすのは難しい話じゃないし。 こーゆーのは SJIS な人達には難しいと思われ。 日本語ファイル名は扱ったことないや。
日本語ファイル名って一般事務のOfficeドキュメントとかなら分るけど、 開発の人がそんなもん使うの?
>>592 そう言うのが資料で回ってきたりしません?
>>593 回ってはくるけど、CVSにそんなものは入れない。
>>585 どうもありがとう。Subversionなら使ってみたことがある。
その頃は、まだログに日本語を入れるとnon-ascii charが入ってるとかエラーが出てたので、
しばらく使ってなかったんだが。。
今は解決してるのね。
日本語ファイル名は、、今までCVSにつっこもうと思ったことはないな。
>>591 CVSのログについては、EUCでもSJISでも問題ないよ。
ただ、commitする人によって文字コードが違うと悲惨なことになるけど(w
>>594 作業環境にあって欲しい資料は入れる感じで使ってます。
あとで別のところから資料探し出すの面倒だし...
作業の基になる資料だしこれも作業記録、と言う事で...
横道ですまん
日本語ファイル名ってVBの日本語関数名と同じぐらいDQNだと思うんだけど。 あとDBのテーブル名とか。
日本語ファイル名とか多言語ファイル名とかの 標準化しようっていう命知らずはおらんのかね。
>>583 > > こういうのは枝葉末節。ま、俺のチームに「それが俺の流儀だから
> > 俺はそのやりかたでやる」というような奴がいたら、チームから追い出すがね。
> だから、どういうことをやるような奴がいたらチームから追い出すって言ってるのか具体例をあげてくれ。
> 本当に想像できないんだけど。
> Windows用のプロダクトのコードをUNIXで書いて、動作確認をVMwareでやってcommitしている人は
> あなたのチームからは追い出されますか?
仕事の場合は普通に開発する環境を用意しているわけだから「俺はいつもこうやる。
ちゃんとcommitするんだから文句言うな」みたいな困ったちゃんは追い出すよ。
「こういう」というのは、
・Winodwsのプロダクトを開発中にUn*xでソースの編集をする
・Un*xのプロダクトを開発中にWindowsでソースの編集をする
とかいうことで、これらはcvsとは本質的にあまりかかわりのないことだから、枝葉末節と言った。
(後者はありがちなことだし)
>
>>577 > > 違うって。編集の手段なんか問題にしていない。
> > プロジェクト全体の文字コードを決めておく必要があるだろという話をしているつもりなんだが。
> 「プロジェクト全体の文字コードを決めておく必要がある」ってのは100%同意するし、反対してる自覚もないんだけど。
> ひょっとして576と577は別人ですか?同一かとおもってたよ。
> よく考えたら毎回別々にレス返してきてるじゃん…(鬱
いや、同一人物。
(続く)
もういいよ基地外
もともといいたいのは、
>>438 ,440がアフォだってこと。それがあなたと同一人物かどうかは知らないが。
>>585 サーバ側で処理する以外にいい方法があると思う?
そのプロジェクトのその開発フェーズで使い捨てるリポジトリだったら
話は別だけど。
どうでもいいけど、なんで、
>>438 や
>>440 がアフォってことになるのか理解できん。
>>438 の前提として、当然文字コード決めるときは、
プロダクトとして何を開発するか考えて決めるんでしょ?
キミの主張と同じだろ?
いつまでも基地外相手にしてんなよ
>595 >CVSのログについては、EUCでもSJISでも問題ないよ。 >ただ、commitする人によって文字コードが違うと悲惨なことになるけど(w うい。だから SJIS に統一するですよ。 CVS 云々以前の話ですけども。 SJIS な連中は漢字コード理解できんのは仕方ないけど、 EUC な連中で、 それはナニでそ。 >600 うわ、すげぇ厳しい。。。何でも使える優秀なスタッフばかりなんだなぁ。
>>607 ああ、そういうことか。
ソースコードがEUCの場合に、$Log$なんて書くと悲惨なことになるけど、
まあ、$Log$なんてうざいだけだしな。
(´-`).。oO(正直困ったチャンを追い出せるほど人員に余裕があるのはうらやましい…
>>598 | 日本語ファイル名ってVBの日本語関数名と同じぐらいDQNだと思うんだけど。
どうして? みんながそういっているから?
自分の環境ではうまく動かないから?
CLIで日本語なんざ打ちたくないよ。めんどくさい。
日本語ファイル名なんてトラブルの元意外の何者でもないだろ
トラブルなんてないもん
要は分かった上で使っているかどうかの違いでしょ。 分かった上で使っていれば日本語ファイルもよし。 と思うです 日本語ファイルを使わないようにするために 来た資料をアルファベットに置き換えてどのファイルが 元だったかわかりにくくしたり、資料を別のところに置いて 探す手間を増やしたりする事よりも、日本語ファイルを 使う事を選んだと言うだけで。 せっかく使える環境もあるわけだしね。
cvsにapproval(承認)制を導入するにはどうすればいいですか?
他者による承認が必要な者にcommit権を与えること自体ナンセンス。
commitinfo使えば割とどうにでもなるような。 お手軽なところでは、commit logに「approved: 承認者名」書かないとcommit できないようにするとか。(丁度FreeBSDがそんな感じだけど、commitinfoで 強制してるかどうかまでは確認してない)
CVSに限って言えば、日本語ファイル名や日本語ディレクトリ名は使用禁止にしておいたほうが いいと思うけど。
こんな事出来ませんか? ブランチの作成、とコミットはcvsへのアクセス可能なユーザー全員に許可し ブランチの主系へのマージを特定のスタッフ(リーダー)だけ行えるようにする。 1つのモジュールを複数のユーザーにコンペのように並行作業をさせて 採用されたユーザー(ブランチ)のコードだけを主系として扱いたいのです。
TortoiseCVSを VC++6でソースからコンパイルしたいのですが PostInst.exeのコンパイルの後どうすればいいのでしょうか? もしかしてCygwin & MinGW必須ですか?
622 :
名無しさん@お腹いっぱい。 :03/11/11 22:35
co する時に *.txt test*.jpg といった具合に指定した形式のファイルだけ取り出す事出来ませんか?
できません。
そこをなんとか
既にcoしてるのならshellに任せれば
cvs stat かなんかでファイル名抜き出して自分で選択したらどうか
>>627 なるほど、小さなスクリプトで実現できそう。あったまい〜
statするためには一度checkoutしてないと… リポジトリがローカルにあるならなんでもできるけどな。
>>629 横のものを縦にもしないヤシだな。あったまわりぃ〜
あれ、作業用コピー無しでモジュールの一覧を知る方法あるかな?
>>631 無理。CVSROOT/modulesに書いてあればcvs co -cで見れるけど
>>631 ViewCVS で見る、ってのはナシ?
635 :
名無しさん@お腹いっぱい。 :03/11/13 19:27
アスキーファイルだけどキーワード展開したくない。 行末変換だけさせたい拡張子をCVSWRAPPEPで制御できませんか?
>>631 モジュールだけならcvs lsで一覧表示できますね?
そのモジュール内に指定形式のファイルがあるかどうかはどうやって判断するの?
更にどうやって取り出すの?
つーかそこまでやるんだったらssh辺りでリモートシェル実行して リポジトリの中findとかして一覧取った方が早いんでね?
>>638 | モジュールだけならcvs lsで一覧表示できますね?
「ls」って1.12でついた機能?
うっかり妙な名前で付けちまったブランチタグが消せねー
>>641 CVSNT 2.0.4にはあるよ
C:\>cvs --help-commands
CVS commands are:
<snip>
ls List files in the repository
<snip>
Unixに関係ない話題はよそでお願いします。
モジュール一覧はワーキングコピーなくても、取得出来るって事だね?
でもstatusは無理みたいだよ?
>>627
647 :
名無しさん@お腹いっぱい。 :03/11/17 12:00
コミットしようとするとエラーになっちゃうんだけど、どーしたらいいですか? In C:\temp\test01-001: cvs commit -m "test01-1001 edit test" New_Project/test.txt CVSROOT=:local:Z:\CVS Checking in New_Project/test.txt; Z:/CVS/test01-001/New_Project/test.txt,v <-- test.txt new revision: 1.2; previous revision: 1.1 cvs [commit aborted]: error writing to lock file Z:/CVS/test01-001/New_Project/,test.txt, Error, CVS operation failed
648 :
オブジェクト指向促進運動 :03/11/17 12:07
IT業界にアージャイル開発とデザインパターンを広めよう! C言語を使ってかなり苦労したので その苦労を最小限におさえるために アージャイル開発、デザインパターンを 多くのプログラマに使って欲しいと思うことがある。 一種の挨拶みたいなものだね。 「なるべく挨拶を心がけましょう。」 「なるべき綺麗な字で書きましょう。」 のように デザインパターンを使うこと、アージャイル開発することが プログラマの習慣、常識になってほしい。 なんとか、デザインパターン文化、アージャイル開発文化を押し広げられたら・・・。 IT業界の将来はオブジェクト指向とアージャイル開発が握っています!
>>647 なんでエラーになったのか調べましょう。
1台のサーバーで複数のリポジトリを管理するにはどうすればいいの?
別にどうもしないが… クライアント側がリポジトリの位置を変えればいいだけだし。
結構更新してもリビジョンが2.xにならないんだけど、まだまだって事かな?w
まずそうな餌だな
ガイシュツだしな。
>>647 とりあえず、そのlockファイルが、何らかの理由で書き込めないようになってないか確かめれ。
657 :
名無しさん@お腹いっぱい。 :03/11/18 00:40
>>650-652 pserver で --allow-root オプションを複数回指定するって
話じゃないの?
659 :
名無しさん@お腹いっぱい。 :03/11/18 17:38
cvs2clって便利なんだけどさ、 commit時に自動生成するスマートな方法がわからないよ。 いくつかぱっと考えたところだと、 1. 一緒に使っているantを使って自動化する。 2. CVSROOT/modulesファイルを編集する。 3. 使いたいときだけ手でcvs2clって入力。 2.はちょっと試したとこだと、やや使いにくい気がする。(再帰されない?) build.xmlも肥大化させたくないし、今のところ3.が現実的かなー、と思っているのですが。どうなんですか? 参考:2.の具体的方法は、次のような感じ? $ cvs checkout CVSROOT/modules $ cd CVSROOT $ echo "project -i /usr/local/bin/cvs2clwraper project" >> modules $ cvs commit -m ""
っていうか、cvschangelogなんてタスクがAntにあるでないですか。気づかなかった…。かなり重いけど、使えそうだな。しかも文字コードもうまく変換できているし。ただ、やっぱりプレインテキスト形式のChangeLogもほしいけどなあ。
cvsに日本語のファイルやディレクトリ名はどうしても利用出来ませんか? 過去ログには日本語使うなという内容が何度か出てますが 現場的にどうしても日本語を使いたいという事です。 機能一覧やパーツ表などがCVSへの登録に失敗します。
現場を捨てるべきでは?
日本を捨てるべきでは?
童貞を捨てるべきでは?
666 :
名無しさん@お腹いっぱい。 :03/11/27 02:12
保守
>>667 いえ、リポジトリに入ってる(脳内)彼女をです。
cvsコマンドをcgiから発行したいのですが、 どうすればいいでつか?
>>669 そういうスクリプトを書けばいいんでないの?
cgiはnobody権限で動いているのですが、 そのままローカルのリポジトリに対してcheckoutをかけると リポジトリ/CVSROOT へのアクセス権が無いといわれて断念(直しても同じエラー) かといってcvs鯖に対して認証をかけることを試みつつも、 ------------------------------------- cvs -d :pserver:ドメイン名/パス login expect "CVS password: " send "パスワード" ------------------------------------- と書いたシェルスクリプトを走らせても認証が通らず。 ハテ、困った。
loginは一回やっとけばいい。
>>672 > loginは一回やっとけばいい。
はつみみです ;)
>>672 その、最初のloginが成功しないことが問題なのです。
cgi自体をcvs権限で動作させるしか方法がないのでしょうか?
su nobody cvs -d :pserver:ドメイン名/パス login
教えてくれ、Red Hat specific な問題かもしれんが… SSH 経由の CVS で、 ・各スタッフはローカルのワークスペースがある。 ・さらに同じリポジトリを共有した * テスト環境 * 運用環境 のツリーがあり、ここは 2775(もしくは 2771)で運用している。 また、これらは、-d host.domain:/var/lib/cvs のように、 ユーザ名を使わず、各スタッフが update したり commit できるように なっている。 という環境で、umask 002 (各ユーザの login profile で設定)に しているにもかかわらず、 commit した直後の該当ファイルが 644 とかになってたりして とても運用上辛かったりする。 ほかにどの部分での umask が作用しているのは俺にはさっぱりだ。 デフォルトの /etc/profile なのか、SSH の設定なのか はたまたリモート側(こいつはDebian)なのか…助けろみなさん!
>>675 ホームディレクトリには書き込み権限があるの?
>>677 ちょっと状況を把握しきれてないけど、
もし、cvsが作るファイルについてumaskを変えたいのであれば
いくらprofileに書いてもムダ。
makeする時のconfigureのオプションで指定しよう。
configure --helpででてくるよん。
>>671 > cgiはnobody権限で動いているのですが、
> そのままローカルのリポジトリに対してcheckoutをかけると
> リポジトリ/CVSROOT へのアクセス権が無いといわれて断念(直しても同じエラー)
どう直したんだか不明だがこれは試したか?
CVS global options (specified before the command name) are:
-R Assume repository is read-only, such as CDROM
>>677 補足。リモート側のcvsね。
しかし、「スタッフ」ってのはUNIXのgroupなのかどうかすらよくわからんので
本当にmakeしなおしてまでumaskを変えるべきケースなのかはわからないので、よろしく。
>>680 残念ながら、僕はcgiからcvsの管理(タグ打ちやupdate)を
したいので、読むだけモードでは無理だと思います。
色々試していたんですが、CVSROOT内部のファイルを見る限りでは、
どうもローカル内でリポジトリを作ると、
作った本人しか使えないように思えます。
(:pserver:プロトコルを使って外部から使用するとき、
リポジトリ自体はcvs権限で作られる)
cgiからexpectスクリプトでcvsリポジトリに対して
loginが出来ない理由は相変わらず不明です。
やはり、cgiそのものをcvs権限で動かすのが一番ベストなんだろうか。
考え方としてもシンプルだしなあ……。
Perl で CVS つかうなら、 $perl -MCPAN -eshell m /cvs/ したことはあるのかと小一時(ry モジュール CVS をつかうといいと思うわ。。。 クククのクーソ。。。
>>682 > やはり、cgiそのものをcvs権限で動かすのが一番ベストなんだろうか。
> 考え方としてもシンプルだしなあ……。
これが嫌な理由があるの?
suexecつかえば簡単だと思うんだけど。
あるいはnobodyとcvsが共通に所属するグループを作って、
リポジトリをgroup writableにするという手もあるね。
>>682 nobodyのホームディレクトリって普通は書き込み権限が
ないと思ったから
>>678 って書いたんだけど、どう?
nobody:*:32767:39:Unprivileged user:/nonexistent:/sbin/nologin ログインユーザじゃないんだから「nobodyのホームディレクトリ」 なんて普通実在しないだろ。
>>685 Linuxの場合、リポジトリのてっぺんに正しいmodeを設定し、かつ
そのディレクトリにsetgid(chmod g+s)することで、その中に作られた
ファイルやディレクトリがmodeとgroupを継承するという習慣があります。
>>689 groupは継承するけど、CVSの場合はファイルのモードは必ずリードオンリーになる。
まあ、ファイルがどんなパーミッションだろうと、ディレクトリのパーミッションがまともならOKなのだが。
>>690 それはCVSがそういうふうに設定しているからで、
>>689 はLinuxでの
一般論を説明しているだけです。
>>688 OSによってあるかどうかさえ違うので、
そのあたりも含めて書き込めるかどうか、
という疑問なのです。
>>692 $HOME が writeable でないとすると login できないのは .cvspass が作れな
いから? ほかになんか支障あるっけ?
>>691 でも?685さんはCVS使いたいんだよね。
ディレクトリのsetgidの話は有用だと思うけど、ああ書いたらCVSでもそうなると思っちゃうだろうな、
と思って補足してみただけです。
695 :
名無しさん@お腹いっぱい。 :03/12/08 14:46
ログ出力用ファイルなど、CVSで取り出したときにはあってほしいけど、 コミット時には変更を反映させたくないファイルってどうやって扱えばいいですか?
696 :
名無しさん@お腹いっぱい。 :03/12/08 15:08
cvs で extssh2 を扱う方法について教えてください. 特に cygwin の場合をお願いします.
>>696 この場合、 CVS は extssh2 とは直接関係ないでしょう。
~/.ssh/ssh_config に Protocol 2 としておいて
CVSROOT=:ext:user@host:/u/l/cvs/repos で CVS_RSH=ssh って、
リポジトリが置いてある機械へ ssh -2 user@host cvs -d /u/l/cvs/repos help とか
cvs コマンドがリモート実行されることなわけで。
きっと >696 の人は、 Cygwin が入ってる機械で SSH サーバーを動かして
sshd_config に Protocol 2,1 とか記入するってことだと思う。
それは、Cygwin のスレとか、cygwin sshd でググるのがいいんじゃない。
698 :
名無しさん@お腹いっぱい。 :03/12/09 19:45
LINUXで運用中のリポジトリをCVSforNTに移行したいのですが文字や改行コードの変換必要ですか?
WinCVSごった煮で質問しちゃってもいいかしら;;
複数のCVSリポジトリを作成したんですけど
ログインサーバーの切換ができないんです。
具体的に言うと
[email protected] :/home/cvsroot
[email protected] :/home/cvsroot
って言う二つのサーバーがあって、最初に上の方をWinCVSに登録したんです。
で、新たに下のサーバーを登録したんですが、管理>設定でCVSROOTの入力で
サーバー切り替えても最初に登録したほうを見に行こうとして、新しいほうに行けないんです。
どこをどう設定したら切り替えられるのか、行き詰まってるので優しい方、教えてください;;
701 :
テンパリくん :03/12/14 02:29
さげちゃった;ー; ageます。
-d
ちょいと前から疑問に思っていたことなんだけど多人数でアプリケーションを作る際に CVSで履歴の管理をしているんだけど、承認が通った物しかコミット出来ない様な 流れになっているとしたら、日々の開発の履歴はどういう風に管理するのが 良いんだろう。ローカルにもリポジトリを作って開発を続けて、リリースのタイミングで 承認をとってメインのリポジトリにコミットするとかって流れになるのかな。 WinCVSとかって対象のリポジトリが1つという環境をターゲットにしてる様な インターフェースになってる気がするけど間違いなのかな。 そもそも根本的に使い方が間違ってる気もするけど、こういった状況に 追い込まれてるので何か考えなくてはいけないのだ。
>>704 > WinCVSとかって対象のリポジトリが1つという環境をターゲットにしてる様な
なんでやねん。むしろWinCvsはリポジトリの切り替えが楽だろ。
>>704 俺はリポジトリを二つ作って
1. ローカルにリポジトリを用意
2. ローカルリポジトリのベンダーブランチに、定期的に公式リポジトリから cvs export して
きたものを import
3. 自分が書いたものを承認通すときには、ローカルリポジトリで cvs rdiff -rベンダブランチ
-rHEAD で作ったパッチを送る
と運用していた。
人数がたかがしれてるなら、CVS リポジトリは 1 つにしてしまってブランチ分けても良いと
思うけど。
普通メインをHEADにすんじゃないの? つーかcvsup使えよ。
NetBSDはマスタリポジトリに直接枝作って作業してるね。
リポジトリが1つだと作業中の履歴とかも全部そのリポジトリだけ見れば
追えるというメリットがあるけど、逆に作業中のbroken状態のものまで
マスタリポジトリに乗せたくないって場合もあるだろうし、まぁどっちが
いいかは一概には言えないね。
>>707 意味わからん。どこへのレスだ?
>>708 >>707 は
>>706 の
| 2. ローカルリポジトリのベンダーブランチに、定期的に公式リポジトリから cvs export して
| きたものを import
へ。
>>704 俺ブランチ作って承認降りたらマージってのは?
>>709 それじゃあ(最新に追従させる為)次にimportする時に困るじゃん。
他のプロジェクトを追っかける場合はベンダーブランチ使った方が便利よ。
だからcvsupと。
cvsupって、他のプロジェクトのHEADなりbranchなりをローカルの vendor branchにimport、なんて事ができるのか?
cvsupによる「追っかけ」と、ベンダブランチを使って「追っかけつつ ローカルの修正もその都度マージする」という話をごっちゃにしてる ような。 単に最新追いかけるだけでいいならそら「cvsup使え」だけど。
>>714 >単に最新追いかけるだけでいいならそら「cvsup使え」だけど。
cvsup ってリポジトリ全体の複製を取る事もできるんじゃないの?
で、その複製の仕方が RCS を解釈しながらだから
ローカルのみの差分を潰さずに最新の状態にできるんじゃ?
実際にやった事無いから聞いた話だけだけど...
ここの level3 にある cvsup の非exact モードってやつね。
http://cvs.m17n.org/cvs/offline.ja.html
>>715 > ローカルのみの差分を潰さずに最新の状態にできるんじゃ?
> 実際にやった事無いから聞いた話だけだけど...
できるよ。つーか使ってる。あんまり頻繁にじゃないけど。
なるほどそういう事だったのね。よく調べずにすまんかった。
先生方、御教授願います。CVS_RSHな利用で、ローカルとリモートで CVSのバージョンが違ってても大丈夫ですよね? # きっとコマンドを垂れ流しにしてるだけだから大丈夫とは思いますが、念の為
>>718 コマンド垂れ流しっつーかプロトコルの問題。
あんまり違いすぎるとどうかと思うが普通は大丈夫だろう。
とりあえずローカルとリモートのバージョンぐらいは書けや。
>>719 先生お返事ありがとうございます。
今のところ、ローカルリモート共にver 1.11 で問題は生じないと思われるのですが、
将来的に状況が変化したらどうしようかを考えておったのです。ひとまず安心しました。
こちらは興味本位ですが、異なるバージョン間でのリポジトリ使い回しも似た様な
状況になるのでしょうか?
リポジトリ自体はRCS。
>>721 隊長了解です。御教授ありがとうございました
ファイルを登録するときにテキストファイルなのにcvs add -kb とバイナリファイルとして登録してしまいました。 バイナリファイルの指定をはずすにはどうするんですか?。
cvs adm -kkv
725 :
名無しさん@お腹いっぱい。 :04/01/16 23:33
CVSサーバーをローカルなPC上
/Users/myname/cvsroot
から、サーバーに移そうと考えています。サーバー上とは
:ext:
[email protected] :/usr/local/cvsroot
です。試しに、PC上のものをそのままサーバ上にコピーしてみたのですが、
update, commit, log などほとんどのコマンドはうまく働きませんでした。
どこか変更する必要があるのでしょうか?
よろしくお願いします。
>>726 cvs update
すると、フリーズして帰ってきませんでした。
checkoutした作業ファイル中の
CVS/Root, CVS/Repository
の中を書き直したらうまく行きました。
728 :
名無しさん@お腹いっぱい。 :04/01/18 22:20
CVSをmakeして、cvs -d /hoge init と実行しようとしたら、 cvs: relocation error: cvs: undefined symbol: GSS_C_NT_HOSTBASED_SERVICE と出ました。意味がよく分からないんですが、コンパイルに失敗したのでしょうか? GSS_C_NT_HOSTBASED_SERVICEでググったら、saslのようなものが。 僕のレベルでは理解不能です。ちゃんと動くようにするには、何をしたらいいんでしょうか? cvsは1.11.11です。
>>729 すみません、2コ目のマルチです。だってよく分かんない・・・。
そっちではOSについてるのを使えと言われました。(redhat)
サポート期間も切れちゃったし、自前でコンパイルしようかと。
なんとかご教授いただけませんか?
>>731 LAN内で使うのだから大丈夫とは思うんですけど、
セキュリティホールとかがあったら気持ち悪いな、
と思ったからです。
>>731 言い忘れました、お答えありがとうございます。
マルチ申し訳ありませんでした。
>>732 > LAN内で使うのだから大丈夫とは思うんですけど、
> セキュリティホールとかがあったら気持ち悪いな、
> と思ったからです。
そうやって全部自力でコンパイルするつもりですか。
全部自力でコンパイルするのってそんなに変?
変ではないにしても大変だなあ、と
何をしたいのかわけわかんないよ。
739 :
名無しさん@お腹いっぱい。 :04/01/19 18:34
CVSのaddコマンドを一ファイル毎に実行するのが辛いです。 ディレクトリの複数のファイルを一気にaddする方法はございませんでしょうか
cvs -qn up | grep '?' | sed -e 's/\? *//' | xargs cvs add
FDでマークして cvs add %T なんて横着をしたりもしまつ
742 :
名無しさん@お腹いっぱい。 :04/01/19 19:19
>>740 なるほど参考になりまつ
>>741 FDがあればそれの方が簡単でしょうね
みなさんどうもでつ
それだけのためにemacs入れる必要ないじゃん
>>740 それはgrepを使わずに
| sed -ne 's/\? *//p'
とするとこだろう。
?を含むファイル名を使う奴は想像しづらいが。
こうだろ cvs -qn up | sed -ne 's/^\? *//p' | xargs cvs add
ちょっと質問です。 プロジェクト(module)の名前を変更することってできないのでしょうか?
module名を付けた時、どうやったの?
>>748 モジュールを登録するときに普通に
cvs import -m "test project" module module module_1
という感じにしました
>>749 なんでベンダータグやリリースタグまでモジュール名指定してるんだ…
ってのはともかく、モジュール名変更したいならリポジトリ上で直接変更
してcheckoutし直せばいい。
つか、他に方法は無いんじゃないか?
>>751 違いがよくわからないんですが、
モジュール名とは、ちゃんとmodulesファイルの中で定義されたもののこと
ということでしょうか?
そういうことみたい。 infoの"Defining the module"を参照。
>>753 なるほど、わかりました。
答えてくれた皆さん、ありがとうございました。
subversion使おうぜ!
特定のブランチをロックするとかできますか?
特定のブランチをジャズするとかできますか?
今日のブランチは、特定の卵かけ御飯です。
rock(音楽)に対してjazz(音楽)ってのがあるのと同様に、
lock(ダンス)に対してjazz(ダンス)ってのがあるんだよ。
>>760
ロック <=> ボサノバ だろ
763 :
名無しさん@お腹いっぱい。 :04/01/31 06:18
ファイルごとのリビジョンの初期値(1.0?)を変更することはできないんでしょうか? あとから変更するのは無理そうな気がするので、プロジェクトをあたらしく作ったときにでも もっと小さい値とかを指定したいです。
本質的に、リビジョン番号はプロジェクトのバージョンとは何ら関係ないものだから いじらない・いじる必要がないもの。 それでもいじりたいなら、infoの "Assigning revisions" の項を参照
~/.cvsignore を無視するオプションって、無いよね? 無視したいときはどうするの? その度に消すの? やりたいことは、ホームディレクトリ以下を一括でCVS管理したいんだけど、 そのためにホームディレクトリに .cvsignore を作ってしまうと、 他のディレクトリでの cvs up とかでも、~/.cvsignore の設定が生きてしまうので、 それを避けたいな、ということなんだけど。
-I !
>>766 '-I !'を付ければディレクトリ毎の.cvsignore以外は無視されるようになるよ。
常に ~/.cvsignore を無視していい人は~/.cvsignoreを置かなければ良いのではないだろうか
>>770 >>766 の後半をよく読んでみよう。
まぁ、$HOMEを直接CVS管理対象にしてしまってるのがそもそもの
間違いだと思うが。
$HOME/work以下をCVS管理対象にして、ドットファイルの類を反映
させる時はmake installするとか。時々反映し忘れるけど、防止策と
してlogout時に自動的に反映させるようにしてもいいだろうし。
>>771 なるほど。その手がありますか。
まあ確かに、$HOME以下で直接的に管理したいのはドットファイルだけなので、
そうしてみようかな。
というか、Makefile の勉強から始めないといけないな。
>>771 ~/.cvsrcに書いちゃったら同じだろ。
make installより、symlinkでもしとけば。
漏れも$HOME以下をSubversionで管理してるんだが 間違いだったのか
俺も$HOMEを直接CVSにつっこんでるなあ。特に不便もないけど。
俺はmake installするようにしてるけど、これが融通がきいててよい。 複数環境で使っていると、環境によってファイルを切り替えたいとか 置くファイルを取捨したいとか加工したいとか生成したいとかいう要求が出てくる。 もちろん切り替えずに一つのファイルで全ての環境をまかなうように書ければ それがいいんだけど、いろいろ事情があることもある。 また、複数ユーザで使う環境の場合は関係ない環境のファイルまで$HOMEにぶち まけたくないと思うこともある。 直接$HOMEにcheckoutしているとそうした要求に対応できない。 symlinkで済むものはmake installの中でsymlinkしてもいいんだし。 反映し忘れはcronでチェックしてる。これもMakefileにrule書いて。 dotfilesの他にほぼどこでも展開するのはelispかな。
SubversionでOSごとホストごとにbranch作ってるYO! そのホストに必要なファイルをtrunkからsvn copyしてきて必要なら編集。
778 :
名無しさん@お腹いっぱい。 :04/02/09 17:52
CVSのインストールされていないSunOSのマシンがあります。 それをユーザーとして使っているので、管理者として ソフトをインストールすることが出来ません。 自分のホームディレクトリにCVSをインストールすることは出来ますか? どのようにインストールすれば良いのでしょうか? CVSはクライアントとして使うだけです。
780 :
名無しさん@お腹いっぱい。 :04/02/09 19:24
>>779 $ ./configure --prefix=/home/myname/usr/local
$ make
$ make install
でインストールしてみました。
$ ~/usr/local/bin/cvs checkout project
でチェックアウトできました。
クライアントとしては使えるみたいです。
しばらく使ってみます。
781 :
名無しさん@お腹いっぱい。 :04/02/10 00:18
>>780 CVSROOT の設定だけじゃないの?
>>781 CVSROOTの設定だけとは?
もう少し詳しく説明してもらえませんでしょうか。
>>781 cvs自身をどこにインストールするかとCVSROOTに何の関係が?
つまり、以前ブランチから幹にマージしたわけですよ。 よって、それからもそのブランチで開発が続いて、 ところが、再度幹にマージしたい時って時間指定とか しないといけないわけですよね? ゆえに、普通にマージすると同じパッチを2度当てる事になっちゃう? もとい、以前マージしたときのタグだとか時間が分からない場合は どうするんでしょ?
頭が初期不良?
時刻だったら cvs log で探せばすぐ見つかりそうな。
>>787 それでいけますた
でもマージ時のコミットログにどのブランチから
マージしたかは書いておかないといかんですね。
さすがにそれくらいは書くか...
マージしたブランチにタグ打っとけ。
790 :
名無しさん@お腹いっぱい。 :04/02/17 02:05
もまいら様、solarisで使うCVSでお勧めは? または使っているの教えれ!下さい。m(__)m
>>791 ${b}-base の場所が移動していくように
ブランチにタグを打つわけですね。
今回からそうやるようにしてみます。
とりあえずこないだマージしたところに ${b}-base ... と...
すまそ、solarisで使うcvsweb系でした よろ〜
cvswebはperl scriptなんだからますますSolarisでのお勧めも糞もないが。
795 :
名無しさん@お腹いっぱい。 :04/02/21 04:31
>>794 おまいバカしね
そんなのわかってんだよ
たいして知りもしねーで まったく
おまいなんかうんこでも食って寝ろ
分かってるんだったら聞くなよ(w
797 :
名無しさん@お腹いっぱい。 :04/02/21 15:58
>>796 おまいは鼻くそでも食って寝ろ
または使っているの教えれ!下さい
って書いてあんだろ タコ
うんこうんこうんこ
798 :
名無しさん@お腹いっぱい。 :04/02/21 16:39
794に同感。「Solarisでのお薦め」って意味不明。
799 :
名無しさん@お腹いっぱい。 :04/02/21 18:59
うんこって言葉が好きな人は純真な人です。
うんこそのものが好きな人は不潔です
性欲を持て余す。
802 :
名無しさん@お腹いっぱい。 :04/02/23 22:36
CVSで、オーナー、グループを変更しないでインポートやチェックアウトできますか?
803 :
名無しさん@お腹いっぱい。 :04/02/24 21:20
うんこ連発君 cvswebっていろいろあるし(viewcvsとかFreeBSD版とか) いろいろバグもあるから、Solarisで動かすのならどれがいいの? ってことで良い? 漏れは使ってないからわからん。
sage
805 :
名無しさん@お腹いっぱい。 :04/02/27 21:36
CVSって個人で利用する利点ありますか?
ある。
807 :
名無しさん@お腹いっぱい。 :04/02/27 22:59
CVSwebは、ファイル単位での比較しかできないな なんつーか、コミットしたときの歴史を ファイル一覧とともに 閲覧したり タグごとにファイルの差分比較が見れたり そういう方向性のCVSビューワないのかな
808 :
名無しさん@お腹いっぱい。 :04/02/28 02:30
>>805 意味はあるんだけど、1人なら CVS の欠点を解消した
フォロワーを使った方が良いかも。
昨日の俺と今日の俺が同一人物とは限らないし。
俺なんか五人もいるし
俺には12人も居るし
あれ、13人いる!?
11人いる!
>>805 一人でもCVSでしばらく慣れとくと、あとで何かのプロジェクトとかに
参加したりするときにスムーズに逝くかも。
>>815 一人だけだとソース管理まわりを全部押しつけられるか空回りするだけ
なので他に誰か巻き込んでおこう。
一人にしろ複数人にしろ、バージョン管理は便利
性欲を持て余す。
cvs update するといくつか U が出て そのままマージされてしまいますが、 どこがマージしたかはどうやって調べますか? cvs diff file.c かな、と思ったのですが 何も出ませんでした。 そのままマージされるのが怖いので確認したいのです。
cvs diff file.c -r 1.x
>>820 ありがとうございます。
U のファイルを cvs status で一つずつリビジョンを調べ、
さらに一つずつ cvs diff しないといけないのでしょうか?
手元にあるファイルと、リポジトリの最新の違いを
一気に diff する方法はありますか?
単にファイル名を省略すると、カレントディレクトリの全部のファイルに 対して処理してくれるよ。cvs diffでもcvs updateでもcvs commitでも。 あと、リポジトリの最新=HEADとの差を調べるのは cvs diff -r HEAD
>>822 ありがとうございました。
cvs -q diff -r HEAD 便利です。
いろんなオプションがあるものですね。
コミットされたらその diff 結果をメールで送らせたいのですが、 その手のプログラムは log.pl しかないのでしょうか?
825 :
名無しさん@お腹いっぱい。 :04/03/16 23:24
fooがbranch tagだとして、そのbranch上での2004-01-02の状態に work directoryを更新するにはどうするのがいいのでしょうか。 1. cvs up -dP -rfoo && cvs up -dP -D2004-01-02 → CVS/TagはTfooのままだが更新されるファイルはdefault branch上の revisionになってしまう 2. cvs up -dP -rfoo -D2004-01-02 → 何だか日付が変な気 cvs-1.11.11です。
>>825 試してないんだけど、
cvs up -dP -rfoo && cvs up -dP -jfoo -jfoo:2004-01-02
っていうのだとどうだろう?
>>827 cvs update -j ってどこでも使えるもんなの?
>>828 「どこでも」っていうのが何を指してるのかがわからない。
トランク上でもブランチ上でも使えるはずだが、そういう意味じゃなくて?
えーとたしかFreeBSD拡張だったような、とかそういうことでは。
最近のバージョンではね。
あ、嘘。cvs diffの-jと間違えていた。ごめんなさい。
834 :
名無しさん@お腹いっぱい。 :04/03/25 13:23
二つあるCVSROOTを1つにまとめたいのですが、どうしたらいいでしょうか? 歴史的経緯で2つにわかれているのですが、不便なので統一したいという話になっています。 リポジトリ同士で、プロジェクト名は重なっていません。 また、リポジトリツリーへのrootアクセス権は持っています。 よろしくお願いします。
>>834 プロジェクト名とかモジュール名が重なってないなら楽な気がする。
modulesファイルによほど変なことが書いてない限り、
単に一ヶ所にコピーしてloginfoやらcommitinfoやらを
併合すればいいんちゃう。
836 :
名無しさん@お腹いっぱい。 :04/03/26 18:02
cvs-1.12.2 cvsweb-2.9.1(FreeBSD版)を使用してます。 cvsweb上でファイルのバージョンをクリックすると、ソース表示 するはずですが、以下のエラーがでて参照できません。 Error: Unexpected output from cvs co: /opt/local/bin/cvs: invalid option -- l Usage: cvs [cvs-options] command [command-options-and-arguments] ・・・省略 原因と回避方法を教えて頂けませんでしょうか?m(__)m
837 :
名無しさん@お腹いっぱい。 :04/03/26 18:34
サーバはFreeBSDなのですが、 Win2000Pro上のWinCVSから、ファイルのリネームをするにはどうすればいいのでしょうか? なお、なぜかActiveTclがインストールできなかったので、Tclは使えません。 どなたか教えていただければ幸いです。
>>834 物理サーバがそれぞれ異なっていたのを、同一物理サーバ上に持って
きたのなら
それぞれのCVS配下のRootファイルの中にpserverで接続先が
書かれているから、それも一括で置換しないとダメです
>>837 別名でファイル追加、元のファイル削除。
リネームが簡単にできないのはCVSの制限なので、OS云々は関係ない。
ちなみに「
>>839 のやって履歴が無くなるのは嫌」という場合は、リポジトリ
上で別名コピー(通称repo-copy)をする。詳しくは「repo-copy」でぐぐれ。
841 :
名無しさん@お腹いっぱい。 :04/03/30 17:37
Chora CVS Viewer使っている人いますか? 日本語EUCは表示できないですかね?
Chora は Hode の設定もある。 hode/config/lang.php とか。
>>842 レスどうもです。
Tryしてみようと思います。結果報告します。
この間 (UNIX上の)COBOLチームから「おれらにもCVS使わせてくれ」と 来たんで、一通り説明して使ってもらってた。しかし、 # しらんかったけど COBOLというものは、行の先頭に適当に行番号をつけるものだそうで、 「ソース変えてないのに、行番号整理したら、diff見てびっくりした」と クレームが来ました。 perlででもfilter書いて、cvswrapperに登録しようとしたら、 " not supported by this version" (1.11-5です) というメッセージを出して、受付けてもらえませんでした。なんとか cvsコマンドだけを打ってもらって管理したいのですが、1.11.5では wrapperを入れるようなことはできないのでしょうか?
1.10.8辺りだと使えてたみたいだけどね。 1.11以降はぐぐっても情報無いねぇ。
なるへそ。 やっぱり使えるバージョンまで戻るしかないのですか。 configureで謎なオプション指定したら、なんて甘いこと 考えてたんですけど。 とりあえず1.10.x取ってきてビルドします。
847 :
名無しさん@お腹いっぱい。 :04/04/17 21:25
cvs commit -m "コメント" で、付けたコメントを修正したい場合はどうすればよいでしょうか?
>>847 cvs admin -mrev:msg filename
cvs import すると半数以上のファイルが cvs server: ERROR: cannot read file xxxxx.html: Permission denied と表示されて、それらのファイルがリポジトリに登録されません。 Permission denied と出ていますが、index.html は駄目でも diary.html は大丈夫です ( 残りの半数はちゃんと登録されています )。 import するファイルが大量にあるとなるようです。 原因と解決方法、分かる方はいらっしゃいませんか。
>>849 >Permission denied
>Permission denied
>Permission denied
>>850 index.html と diary.html は同じディレクトリにあり、
同じパーミッション ( 644 ) です。
index.html は OK で diary.html だけがダメなのが不思議なのです。
$CVSROOT側は問題ないの?
>>850 ,852
ありがとうございました。原因はやはり Permission でした…。
クライアントに cygwin を使っているのですが、
いつのまにか半数以上のファイルが 000 になっていました。
cygwin のスレで何故 000 になったのか聞いてこようと思います。
> cygwin のスレで何故 000 になったのか聞いてこようと思います。 あーあ、それも聞かれてわかる奴いるのかなあ。 などと後ろ向きの気分になる俺。
管理者権限のユーザ以外で操作するか set CYGWIN=nontsec を設定してみる
cygwin からコミットしたときに次のようなメッセージが表示されました。 cvs [server aborted]: received broken pipe signal これはなにかまずいことをやってしまったのでしょうか?
おそらくもう子供が作れない体になってますね
| cut
cygwinのcvsはとっても不安定なのでお勧めできない。 ちょっと大きめのcommitするとすぐ>857のエラー出るよ。
862 :
名無しさん@お腹いっぱい。 :04/05/24 12:36
あのーCVSってどうやって使うんですか? データ管理の一つの形式みたいなものですよね? よくわからないのですが、使い方教えてくれませんか・・・。 もしくは参考になるホームページを教えてくれるだけでもいいですから。
>>863 よくわからないのに何故 CVS が必要なのか。
>865 ありがろうございます。
今配布されてる 1.11.16, 1.12.8 はクラック前のモノらしいので安全そうですが、 download 後の signature の確認とかは、ちゃんとやっといた方が安全そうですね。
え、何かあったの??
>>868 すみません。誤解を与えてしまうような表現でした。
「クラック前」とは、
「CVS の公式サイト (
http://www.cvshome.org/ ) がクラックされる前」、
という意味で言いました。
CVS の旧バージョンにあったセキュリティホールのせいで、
もじら組や Namazu のサイトもクラックされているようですね。
>>869 > CVS の旧バージョンにあったセキュリティホールのせいで、
> もじら組や Namazu のサイトもクラックされているようですね。
CVS って root でうごいてんの?
chroot とかしてないの?
>>870 よく知らんけど、そういうことやっても CVS の管理下にあるやつはどうしようもないでそ
大抵の場合一番重要なのはそれらのファイルだろうし
gnu arch ってどうなの。
なにがどうなのよ。
使ってる人いないかと思って。 cvs->subversion の流れとはちと違う感じだしね。
何がどう違うんだよ。
スマソ、誤読した。(cvs->subversionはなんか違うだろ〜と言ってるのかと思った)
>>869 cvs pserverはinetd経由うで起動するからroot権限だよ
ところで、root権限とchrootとなんか関係あるの?
何のために/etc/inetd.confでユーザ指定できるようになってるのかと…
>>871 じゃあなんで、ML や、web もとまってんの?
>>880 chroot 配下のユーザでログインしたあと、別の穴を使って権限上昇を試みる、
というケースは十分考えられるでしょうから、
大事を取って、確認とれるまで停止するのは普通ではないでしょうか?
あと、web のコンテンツも CVS 管理してたら、サイト閉鎖するでしょうね。
Ruby のサイトの中の人ではないのであくまで憶測ですけれど。
あと、 ML は止まってました?うちには配信されてましたけど。
>>881 おれは、emacs-w3m.namazu.org が停止して大迷惑してるぞ。
ログをよくみたら25日に海外の数箇所からうちのcvsサーバーをつついてるやつらがいたw 1.11.16にあげたのが21日だったので助かったってことかな
cvsroot以下を定期的にバックアップして、不正アクセス発覚時に比較できる 体制でも作らないと短い時間で復旧させるのは難しそうですね。 素朴な疑問なんだけど、 sshでなくpserverを使う理由ってマシンへのログインアカウントを作りたくないから? pserver利用者にrestricted shellつかったりログインシェルとしてcvsを起動したりすると ログインアカウントがあってもいいような気もするんだけど。 あるいは、これまでpserverでやってきたので利用者を説得して変更するのは 難しいということなのかな。
>>886 > If the access method is omitted, then if the repository starts with
> `/', then `:local:' is assumed. If it does not start with `/' then
> either `:ext:' or `:server:' is assumed.
なので、CVS_RSH で ssh を指定する場合、説明には :ext: を付けるべき。
sshでanonymous accessのcvs serverなんて出来るの?? あと、read onlyもできないんだよな。sshだと。 うちはそれでもssh使ってるが。pserverは恐くてイヤン。
>>888 anoncvsshでググれ。
readonlyはcvsリポジトリ自体をreadonlyにすればいいのでは。
cvs add や remove を一括してくれるツールの名前ってなんだったでしょうか。 kingcvs... cvsknot... 何か k がついたような...。
cvsknit ?
>>891 それです!ありがとうございました。
# kingcvs, cvsknot って…。
>>889 さんくす。
ちょっとググってみたけど、ずばりってのは見付からんので、
時間があるとき頑張ってさがしてみるよ。
cのコードはひっかかるのになー。
あと、readonlyにするために、repositoryのパーミッションをread onlyにしちゃうと、ロックファイルが作れなくてエラーになります。
絵に描いたような典型的な djb 厨房だな。
>>893 FreeBSDの/usr/bin/cvsは no-locking readonly modeとして-Rなんて
オプションが追加されてる。
>>897 へー
FreeBSDは使ったことないけど、色々独自に手加えてて面白そうだよね。
何かの時のために覚えときます。サンクス。
899 :
名無しさん@お腹いっぱい。 :04/06/10 10:00
> 「CVSが安全でないことは、これまでも常に指摘してきた。その点については何ら隠し立てしていない」(Price) なんか開き直り臭い発言だな。
サードパーティソースのおっかけ
http://www.sodan.org/~penny/vc/cvs-ja_13.html についてわからないところがあります。
まず
cvs import -m "Import of FSF v. 0.04" fsf/wdiff FSF_DIST WDIFF_0_04
としてはじめて持ち込んだとき、ソースのリビジョンは 1.1.1.1 になりますよね?
それで自分で改造したファイルのリビジョンは commit すると 1.2 になります。
開発元が新しいのを公開したのでそれを import
cvs import -m "Import of FSF v. 0.05" fsf/wdiff FSF_DIST WDIFF_0_05
すると、そのソース達のリビジョンは 1.1.1.2 になりますよね?
で、最新のソースと判断されるのは 1.1.1.2 のほうだと思っていたのですが、
1.2 のリビジョンを持つものは 1.1.1.2 ではなく 1.2 が最新と判断されました。
1.1.1.1 と 1.1.1.2 しかもたないものは、1.1.1.2 が最新でした。
これはどう考えたらよいのでしょうか?
import によるリビジョンと commit したときについたリビジョンの扱い方の違いはどうなっているのでしょうか?
検索してもでてこなかったもので。
どなたか説明されているサイトなどありましたら教えてください。
もちろん直に教えていただけてもうれしいです。
>>902 1.1.1.1 = オリジナルのver0.04
1.2 = ver0.04に自分で変更を加えたもの
1.1.1.2 = オリジナルのver0.05
1.2が存在しなければ1.1.1.2が最新
1.2が存在する場合、1.1.1.1と1.1.1.2の間で差分が無ければ1.2が最新
(オリジナル側で変更が無かったので1.2がそのまま使える)
1.2が存在する場合、1.1.1.1と1.1.1.2の間で差分があれば、1.1.1.2の
importした際に「(1.2に)マージしろゴルァ」と怒られる
(オリジナル側で変更があったので、それに自分の修正を反映させる
必要がある)
import した vendor branch と、ローカルに修正した branch の二つがある ただそれだけ
>>904 つまり通常、そのローカルに修正した branch を使用しているのだから、
そちらを使用しただけということですか。
で、その branch のファイルが存在していない場合は、
唯一存在する vendor branch のものを使うしかなかったと。
cvs status -v
で見たときに branch: 1.1.1 しかなかったのでこれが幹なのだと思ってしまっていました。
vender branch ですか。ありがとうございました。
branch タグの改名について質問があります。 タグの改名は cvs rtag -r [old_tag] [new_tag] [repository] cvs rtag -d [old_tag] [repository] でできたのですが、branch タグの改名はどのようにすればよいのでしょうか。 cvs rtag -b -r [old_tag] [new_tag] [repository] とやると単純に別のブランチができてしまいました。 cvs rtag -b -d [new_tag] [repository] でその新しくできたブランチを削除しようとしましたが、 cvs rtag: Not removing branch tag `[new_tag]' とエラーがでて消せませんでした。 よろしくお願いします。
該当ファイルを手で変更するしかないと思うよ。
cvs admin -N[new_branch_tag]:[old_branch_tag] で同じ branch 番号にタグを割り当てることはできましたが、 cvs tag -b -d [old_branch_tag] でタグを消せませんでした。branch タグの消し方がよくわかりません。 また admin を使うのでしょうか?消せれば移動は完成です。 あとはレポジトリのファイルを直接変更してもできるよと書いてありましたが、 この作者のいうとおりあまりやりたくありません。 もう少し調べてみます。
cvs admin -N[old_branch_tag] で消せました。ありがとうございました。
>>910 こういう操作ってドキドキしない? cvs-1.11.xだとadminコマンドが
よくsegvして、ロックファイルが変に残っちゃってえらい目に遭った
ことがあるよ。最新バージョンだと直ってるのかな?
>>900 cvsのpserverの説明で、cvsをroot権限で動かした時にセキュリティ上問題ないかは検証してない
って感じの警告がinfoに書いてあったと思うけど。
あれ読んだらpserverなんて使う気しないと思うぞ。
pserver使う気しないのはまぁ同意だが、なんでcvsごときをroot権限で 動かさなきゃいかんのだ?
ブランチの一覧を取得することって出来ますか? たとえばFreeBSDのCVSツリーがどうなってるのか 知りたい場合ときがあります。
>>915 cvs log -Rh module
じゃだめかな?
あ、ブランチの一覧ね。スマソ。
arch なら branches なり revisions なりそのまんまのコマンドがあるんだけ どなぁ。一度チェックアウトしたあとなら無理矢理 cvs log -h | awk '/\t/ {IFS=":"; print $1}' |sort|uniq とか。
cvs stat -v のことでわなくて?
>>914 rootで動かさないと、CVSROOT/passwdに従って実効ユーザID変更できなくない?
commit したら自動でタグ ( 日時など ) が付く方法はないでしょうか。
>>926 あー、なるほど。
$ cat cvsco
cvs -q commit
cvs tag `date +%Y%m%d%H%M%S`
なんてのを使ってみます。ありがとうございました。
関係無いけど、commit なら ci でわ co だと普通は checkout
>>928 ですよね。ご指摘ありがとうございます。
私は cvs をはじめたときに
cvs import -> cvsup
cvs checkout -> cvsdown
cvs commit -> cvsco
cvs update -> cvsup
で alias しちゃったんで今でもこんな変な癖があるんです…。
>>929 変だとわかってるなら直せ!
と思います
alias しないでも、それぞれ cvs im cvs co cvs ci cvs up で特定できる
ところで日付でタグを打つと何かうれしいの?
>>929 > cvs import -> cvsup
> cvs update -> cvsup
激しく困りそうだな。
日付で思い出したんだが未だ JST でできないの?
>>934 いらないってさ
GMTをJSTで設定しちゃおうぜ
>>932 自動でタグが付いてほしいんです。
「自動」なので名前は日付くらいしかできないかな、と。
なぜ自動でタグを付けてほしいかというと、
安定版と並行して機能追加をしているんですが、
機能追加中に安定版のバグ修正や、至急の機能追加・変更があるので
タグで元に戻せると便利だなぁ、と。
もちろん、節目にはちゃんとした名前でタグを作りますが、
名前を付けなかったバージョンに変更を加えたい、ということが過去多々あり、
複数ファイルに対して cvs update -r 1.x しないといけなくて面倒なんです。
ブランチは大量に枝ができて厄介ですし。
本当はもっといいやり方があるのかもしれませんね。
>>933 cvs -qn update は cu で、
そして cvs update はそのまま cvs update です。
cvs -qn update や cvs diff で他人の変更を確認してから
cvs update の手順なのです。
>>923 ん?じゃあ、もうpasswdの3カラム目は一切使わない運用してるってこと?
漏れはそもそもsshでしか使わない主義だが。
日付タグなんかつけなくても自動的に……
ってすでに
>>938 でツッコミいれられているか。
>>938 横からすみませんが、-D での''日付''指定でコピペですむような表示はどのコマンドがしてくれますか?
cvs log とか cvs st で表示される日付は -D で指定できませんよね?
エスパーが必要だ。
>>942 ただの date コマンドだと cvs st のときとあまり変わらないような。
あなたはmanを読まない人ですか?
tagがたくさんあったらCVS tree閲覧ツールで見たときにさぞかしすごいことになってるんだろうな。
>>946 すごい皮肉だな。
たしかにdate(1)のmanを見るとExamplesにばちーり書いてあるが。
まあ、質問するやしのほとんどはエラーメッセージとマニュアルを読もうともしないからねぇ。
それらを読むようになるとMLとかNewsとかを流れるほとんどの問題は自分で解決できるし。
この程度はUNIX使いにとっては皮肉ですらないレベルだよね。なんでだろ。
UNIX使いが減っているから 絶滅危惧種だよ
950 :
名無しさん@お腹いっぱい。 :04/06/25 13:26
最近CVS(1.10)でとってきたあとに
そのディレクトリ内で cvs update -PAd とやっても
cvs [update aborted]: connect to cvs.****.sourceforge.net:2401 failed: Operation timed out
と出るようになりました。
navi2ch, emacs, timidity すべてそのエラーになります。
今でも .. から
cvs -z3 -d:pserver:
[email protected] :/cvsroot/navi2ch co navi2ch
などとやれば更新はできるのですが、ソフトごとに別々のコマンドを打つよりは
どれも cvs update でとってこれた方が便利だと思うので
何か情報もっている人がいたら解決策を教えてください。
>>950 ム板 SourceForge スレあたりで聞いた方が良くない? CVS の問題じゃないでしょ?
>>928 関係無いけど、日本語の勉強が先では? ;)
こんばんゎ
>>940 cvs2cl はどうでしょう?
というか、cvs2cl 以外に、モジュール全体に対する操作を
時系列で見やすく出力する手段ってありましたっけ?
過去を振り返りたい人には、必須のツールかと思っていました。
ところで、
>>936 「機能追加中に安定版のバグ修正や、至急の機能追加・変更がある」
って、安定板と機能追加版の管理をひとつのブランチでやっている
ことに、そもそも、少し無理があるような、、、
権限持っている人だけがタグ付け出来るようにしたんだけど出来ますか?
cvs updateする際って、ファイルはアトミックに更新されますか?
くだらない質問すれから来ました。 CVSWebで複数の日本語文字コードを化けないで表示するのはどうするですか?
cvswrapperか。 すいません自己レス。
vi風なキー操作のファイラーはありますか?
誤爆
と思ったら、 cvs [checkout aborted]: -t/-f wrappers not supported by this version of CVS 今のバージョンでは使えんのかも。。
>>965 使えんのかも、ではなく今はもう使えない。1.10系なら使えたけど。
OS XでCvsGraphをbuildするのに手間取っちゃった。 てへ。
.
969 :
名無しさん@お腹いっぱい。 :04/07/15 16:12
本当に「下のurlのようにして」るか?確認してやるから、プロジェクト名晒せや。
初心者です。 cvsのコマンド関係のリファレンス のページでいいところないかな? ぐぐってもあまりいいとこ見つからない。。
>>972 CVSのinfoじゃだめなの?
和訳も検索すればトップにでてくるけど。
和訳はどこがリファレンスになっているのかが パッと見てわかんないから 972 みたいのが出て来るのかな。 ヒットしたページをじっくり見てみてくり。>972
975 :
名無しさん@お腹いっぱい。 :04/08/12 14:25
cvsコマンドでプロジェクト一覧を取得する方法はありますか?
976 :
名無しさん@お腹いっぱい。 :04/08/12 17:21
ls $CVSROOT/
>>976 cvsコマンドで っつってんだろヴォケ