■掲示板に戻る■ 1- 最新50CVSを使ってファイル管理
- 1 :名無しさん@お腹いっぱい。 :2001/08/10(金) 18:10
CVSを使ってファイル管理している人の質問スレ
- 33 :31 :01/08/28 15:38 ID:kWMpTnew
- #include <stdio.h>
static char const rcsid[] =
"$Id: f.c,v 1.5 1999/08/27 23:36:42 peter Exp $";
int main() { return printf("%s\n", rcsid) == EOF; }
C 言語プログラムで上記のような文字列 rcsid が定義され、か
つ使われていないとき、 lint(1) が警告を出したり、 C コンパ
イラによっては最適化により文字列を削除する場合があります。
もっとも、よい解決策は上のプログラム例のように文字列 rcsid
を使うことです。
なんでこれが「もっとも、よい解決策」なのか、サパーリ判らん。(;´Д‘)
と、思ったが、無理矢理 printf() でも良いから使えって事なのね。
解決しとらーん!
- 34 :名無しさん@XEmacs :01/08/28 17:19 ID:ign9iVXY
- >>32
何をトチ狂ってるんでしょうね。ホント。
すみません。
static なら衝突なんかしませんよねぇ。逝ってきます...
> つか identコマンドつかえや!!
ident コマンドが無いんですよ。
RCS が無いからなんでしょうかね。
CVS を make install しただけじゃダメなんでしょうか。
- 35 :名無しさん@お腹いっぱい。 :01/08/28 17:23 ID:IyiIr/CU
- RCSなかったらCVSも動かんだろ。GNUからもらってこい。
- 36 :名無しさん@お腹いっぱい。 :01/08/28 17:39 ID:QKtRe60g
- dotfileをcvsで管理すると便利だよね。
新しいマシン使うときも一発
- 37 :名無しさん@XEmacs :01/08/28 18:04 ID:ign9iVXY
- >>35
CVS は動いてるんですな。これが。
sccs はあるけど、RCS は無いみたいです。
でも、$Id$ はちゃんと展開されてる。
CVS の配布には RCS の一部だけが含まれてるんでしょうかね。
- 38 :名無しさん@お腹いっぱい。 :01/08/28 19:04 ID:/foo1b.s
- 二重現実逃避モード。
>>37
含まれています。cvs/src/rcs.c だとか cvs/src/diff.c
なんてものがある。
- 39 :原住民 :01/08/31 01:14 ID:s.FxukAw
- CVSで vendar branchを使ってるとき、なくなったファイルの扱い変じゃない??
つまり、とある versionから hage.cがなくなってて
cvs import hoge vendar rel1_1
とかすると、hage.cには rel1_1 tagはつかないけど。
どっかで cvs co -r vendar hoge すると hage.cも生まれてくる。
要らないのが生まれてきて邪魔なんですけど、これって仕様??
それとも俺の使い方が間違ってる?
- 40 :名無しさん@お腹いっぱい。 :01/08/31 01:40 ID:cWiTsGz2
- vendor の綴りを間違えてるくらいだし。
man 見といたら?
- 41 :名無しさん@お腹いっぱい。 :01/08/31 02:40 ID:5Mv8F2qA
- CVS ってサーバにある方のファイルの revision 下げることってできますか?
別に前の revision 落としてきて、それを commit しなおせばいいじゃんとか思ってた
んですけど、最近会社で JBuilder + CVS で開発してて周りの人が
「revision 下げられないんじゃバージョン管理してる意味ないじゃん」って言うんで
す。
あと、「ファイルのロックができないのも困りものよねぇ」とかも言われます。
CVS はファイルのロックをしないからこそいいのだと思ってたんですが。
俺が間違ってるんでしょうか?
- 42 :名無しさん@お腹いっぱい。 :01/08/31 02:57 ID:GicJp6nc
- >>35
いつの時代の話だ。今はもうRCS5.7相当の機能がCVSに取り込まれてるよ。
>>41
CVSではback outしてもRevisionは上がるのが普通。
- 43 :42 :01/08/31 02:59 ID:GicJp6nc
- >>38を思いっきり読み飛ばしていた...鬱氏。
- 44 :名無しさん@Emacs :01/08/31 09:16 ID:.P4YZmic
- >>41
> 「revision 下げられないんじゃバージョン管理してる意味ないじゃん」って
なんのことかよくわかりません。
古いバージョンをメンテナンスするときにブランチ切ってない
とかいう話じゃないよね?
- 45 :名無しさん@お腹いっぱい。 :01/08/31 09:51 ID:SYzSjnws
- >>44
> 古いバージョンをメンテナンスするときにブランチ切ってない
いえ、そういう事じゃなくって、
誰かが間違って、ゴミだけを付けたファイル(C-p で上に行こうとして p を入れちゃっ
たとか)を commit したときに、 rivision 上げて対処するんじゃ何かバージョン管
理って感じがしないなぁって事みたいです。
言われてみれば確かにそうかもという感じがしたので。
- 46 :名無しさん@お腹いっぱい。 :01/08/31 10:01 ID:W27R9832
- >>45
そのゴミだと思っていたものが実は重要だったとして
間違って消してしまったらそれこそバージョン管理の意味がない。
だからどんな修正だろうと積み上げになっていったほうが安全。
- 47 :44 :01/08/31 10:54 ID:.P4YZmic
- >>46
おれもそう思う。ひょっとして >>41 の同僚は release version の管理と
revision の管理を混同してないか?
- 48 :名無しさん@お腹いっぱい。 :01/08/31 12:35 ID:SYzSjnws
- >>46,47
varison 管理と rivision 管理を分けて考えれば、
> 間違って消してしまったらそれこそバージョン管理の意味がない。
というのは確かに正しいですね。なるほど。
CVS における、version の管理というのは
TAG 付けで行なうのがいいんでしょうか。
- 49 :名無しさん@お腹いっぱい。 :01/08/31 14:22 ID:H9.KahBw
- ディレクトリ毎にも tag管理出来る所が rcsに比べて良いよね。
後は、マージしてくれるとこも。
- 50 :原住民 :01/08/31 16:44 ID:s.FxukAw
- >>40 って言うかmanみてもわからなかったぞ。
後生だから教えてくれ。
- 51 :名無しさん@お腹いっぱい。 :01/08/31 17:04 ID:FzOr630E
- 日本語を書く時、ファイルの中身はどんな encoding でも問題ないですが、
log をいったん EUC なんかにしてしまうと JIS にはそう簡単に直せないですよね。
この問題をみなさんどうしてます? 最近僕は嫌気がさして英語でしか log をつけ
ないようになってるんですが。
- 52 :名無しさん@XEmacs :01/08/31 18:35 ID:BRFmNDuc
- >>14
> あと、Emacian を使っていたら、pcl-cvs で
ふつーは、Emacsen といいますです。
- 53 :名無しさん@お腹いっぱい。 :01/08/31 18:58 ID:lieJqDvo
- >>51
file の中身も文字コードが変わると悲惨なことになりますが…。
cvs diff なんぞとろうとすると、目も当てられなくなる。
- 54 :名無しさん@お腹いっぱい。 :01/08/31 19:44 ID:H9.KahBw
- >原住民
ウチでは、checkout に vendortag は付けれないです。
"cannot find module vendortag" と出た。
ウチで vendor のソースを import する時は、
releasetag に 3rdparty_20010831 みたいに prefix を
付けちゃうんで、引っ張り出す時に困る事はないです。
- 55 :35 :01/08/31 21:09 ID:hc4CeL/k
- >>42
> >>35
> いつの時代の話だ。今はもうRCS5.7相当の機能がCVSに取り込まれてるよ。
ここんとこずっとFreeBSDだから気にしてなかった。
Solaris 2.6に手でCVS入れたころの話だから...
うーん、こういうふうにして歳がばれるんだな。
- 56 :原住民 :01/09/01 17:21 ID:MjyGu27w
- >>54 ええ、できない? 俺、いつもやってるけどなあ。
release tagで取り出せばいいっちゃいいんだけど。stickyにならないっけ?
まあなってもかまわないか。
後は updateして vendor branchについていいけるか、ってのが心配。
working directoryにちょこっと変えてたりするので。
最悪明示的に update -j 使えばいいってのはわかるけど、
command lineが長くなってうざい。
- 57 : :01/09/02 01:26 ID:KYUxK1l2
- CVSはロックしないからいいんだというのは合ってる(だろう)けど、
CVSでもロックしようと思えばできるぞ。
担当ならもちっと勉強だな >>41
- 58 :名無しさん@お腹いっぱい。 :01/09/02 03:43 ID:Nr33AwC2
- >>41
JbuilderのCVSはおまけです。
ちゃんとバージョン管理したいならWinCVSを使いましょう。
- 59 :名無しさん@お腹いっぱい。 :01/09/07 17:42
- 文系でも cvs もえ。というか文系だからこそ cvs もえもえ。
どんなヘボ文章でも編集過程残します。将来大作家にでもなって死後
cvs repository がみつかって大騒ぎとか。
- 60 :名無しさん@お腹いっぱい。 :01/09/07 23:13
- CVS?はあ?
CSVの間違いだろ。
Excelのデータをやりとりするのに使うファイルだ。
単なるテキストファイルだからUNIXでも読めるだろう。
CSVでファイル管理するのかね〜
- 61 :名無しさん@お腹いっぱい。 :01/09/07 23:20
- >>60
ネタだとイマイチ。
天然ならちょっと尊敬。
- 62 :名無しさん@お腹いっぱい。 :01/09/08 00:11
- ネタだろうけど面白くない。
どうせならイタイ発言スレにコピーされるぐらい真実味
のあるのが欲しい。
あのスレのはほとんど天然物だけど。
- 63 :名無しさん@お腹いっぱい。 :01/09/08 00:23
- 俺は手作業でrsync。
あぁ知恵遅れか…イッテコヨウ
- 64 :名無しさん@お腹いっぱい。 :01/09/13 11:27
- rename database ってどうなっているんですか?
そうとう昔から案が出てるようだから、
そろそろ実装してくれないかなーと思っているんだけど。
#これがあれば cvs がますます気楽に使えるようになるのに。
#今は file を import するのに名前について相当気を使う。
- 65 :名無しさん@お腹いっぱい。 :01/10/09 00:52
- CVSであるモジュールにあったファイル名を
全部表示(削除したファイルも含めて)することってできないでしょうか?
あと、あるリビジョンのファイル名一覧を得ることはできないでしょうか?
随分古いスレをあげてしまってすいません。
- 66 :名無しさん@お腹いっぱい。 :01/10/09 05:53
- >>65
>全部表示(削除したファイルも含めて)することってできないでしょうか?
workspaceでcvs log -Rじゃだめ?
>あと、あるリビジョンのファイル名一覧を得ることはできないでしょうか?
一覧だけ得るのはどうやるんだろう。
cvs co -r1.2.3.4 とか、workspaceでcvs update -r1.2.3.4 とか
すれば、特定のリビジョンのファイルだけにはなるけど。
- 67 :名無しさん@XEmacs :01/10/09 05:54
- 「リビジョン管理は CVS ……」
「?」
「ファイル形式は… C … CSV…
ちょっと時々ごっちゃになるねん
CVS?
CSV?
CVS?」
「はあ…」
「わかってるねん
わかってるねんで?
バカにしたらあかん
このスレは CSV …
それがごっちゃに…」
「このスレは CVSです」
「わかってるねんで!?」
- 68 :ななしさん@おなかいっぱい :01/10/09 06:28
- 最近、/etc以下などの設定ファイルの管理にCVSを使い始めた。いや、
master.passwdとかはrepositoryには入れてないけど。どうせpasswd使え
ば中身変わっちゃうし……。
しかし、これはなかなか快適かも。ログはしっかり残るし、インストール時の
デフォルトや過去の任意の時点との比較も簡単。
- 69 :名無しさん@お腹いっぱい。 :01/10/09 06:35
- >>68
BSD Magazine の影響ですか?(ニコッ
- 70 :名無しさん@XEmacs :01/10/09 07:09
- >68
昔 RCS で /etc の下とか管理してたりしたけど、
面倒で止めたダメ人間。
Linux 使ってると何年かに一回、全体の入れ替えやっちゃうから、
なんか意味ないような気がして。
- 71 :名無しさん@XEmacs :01/10/09 07:30
- データとプログラムが密接に関係するプロジェクトの場合、
データの扱いはどうしてますか?
# 自分は残念ながら、データは手動管理…
- 72 :名無しさん@お腹いっぱい。 :01/10/09 10:50
- >>70
aliases の管理とかであれば rcs でもいいんだが
ある設定変更のために複数のファイルに変更が
及ぶ場合(例えば /etc/rc.conf で NIC 追加後, hosts 編集とか)に
cvs だと格段に便利だよな.
そしてそのタイミングでわかりやすいようにタグを打っていく. 完璧.
- 73 :65 :01/10/09 13:21
- >>66
> >全部表示(削除したファイルも含めて)することってできないでしょうか?
> workspaceでcvs log -Rじゃだめ?
できました。ありがとうございます。
cvs log でファイル名を指定しないと消したファイルも見る事ができるんですね。
> >あと、あるリビジョンのファイル名一覧を得ることはできないでしょうか?
> 一覧だけ得るのはどうやるんだろう。
リビジョンではなくてタグでした。でもタグでも変わらないですよね。
viewcvs だと、あるタグが打ってあるファイルの一覧が表示できるので、普通の CVS
のコマンドでもできるのかなぁと思っていたんですが。
> cvs co -r1.2.3.4 とか、workspaceでcvs update -r1.2.3.4 とか
> すれば、特定のリビジョンのファイルだけにはなるけど。
そうなんですよね。ファイルを取ってこないと確認できない。
cvs ls みたいなコマンドがあると結構便利かもしれないですね。
- 74 :名無しさん@お腹いっぱい。 :01/10/09 14:22
- http://www.amazon.co.jp/exec/obidos/search-handle-url/index=books-jp&rank=+salesrank&field-keywords=cvs&bq=1/ref=sr_aps_allb__/250-9205354-1985857
CVSの本が数冊出ていますがどれがおすすめでしょうか?
- 75 :名無しさん@お腹いっぱい。 :01/10/09 15:31
- repositoryにいって
find module -name '*,v' | grep -l tag-you-want | sed 's,Attic/,,'
とか...>>73
- 76 :名無しさん@お腹いっぱい。 :01/10/09 16:30
- >>64 でいってるようなリネームしてもディレクトリごと管理できる
revision 管理ソフトって存在してるんですか.
cvs の rename database は頓挫? してるようだし.
- 77 :65 :01/10/09 18:51
- >>75
それは、Repository がある host に login できなきゃいけないですよね。
それとも、何か方法があるんでしょうか。
ついでにもう一つ質問なんですが、
Emacs の pcl-cvs で変更がないファイルも一覧に出す方法はないでしょうか?
一応 C-x v d で vc-dired-mode に入って、 C-x v t で vc-dired-terse-mode を ON にした後に
cvs-examine をやると出てくるみたいなんですが、もっと簡単にやれるとうれしいです。
# Emacs スレで聞いた方がいいのかな。
- 78 :名無しさん@お腹いっぱい。 :01/10/09 21:31
- >>65
ないしょで Apacheとcvsweb をインストールしちゃう、とか :)
- 79 :78 :01/10/09 21:38
- マジレスすると、こうかなあ。
$ cvs -d $CVSROOT co -p -rREV MODULES 2>&1 >/dev/null | \
sed -n 's/^Checking out \(.*\)$/\1/p'
メチャメチャ遅いけど。
- 80 :名無しさん@お腹いっぱい。 :01/10/09 21:43
- >>76
p4, subversion
- 81 :75 :01/10/10 02:38
- >>77 いや、loginできなくても NFS mountぐらいできれば okよ。
と屁理屈を言ってみる。
俺も cvswebの hackとかしてるんだけど、working directoryがないと
できない操作が多くてつらいね。
logぐらい何とかさせろ。
新着レスの表示
read.cgi ver5.26+ (01/10/21-)