■掲示板に戻る■ 全部 1- 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 最新50



レス数が1000を超えています。残念ながら全部は表示しません。

CVSを使ってファイル管理

1 :名無しさん@お腹いっぱい。 :2001/08/10(金) 18:10

CVSを使ってファイル管理している人の質問スレ

2 :名無しさん@お腹いっぱい。 :2001/08/10(金) 18:14

バックアップもかねて、
他のホストにCVSROOTを置いて
/etc以下のファイルをCVSで管理したいんだけど、
大丈夫かな?

/etcで
cvs import foo start
とかして、
してrm -rf /etcしてcvs checkout etc
すりゃいいような気がするけど、

ちと恐くてねえ。どう思います? OSはFreeBSDです。

3 :名無しさん@お腹いっぱい。 :2001/08/10(金) 23:04
rm するんじゃなくて
まずは mv しておけば。

4 :名無しさん@お腹いっぱい。 :2001/08/10(金) 23:46
別ディレクトリに必要な分だけ cp して、そこで
import する。

別のディレクトリで checkout して cp -r . /etc
するか、cvs checkout -d /etc で /etc に
直接 checkout。

ただ、root で cvs 使うと文句言われないか? それで
挫折した経験があるんだが。/etc なら rcs の方が
いいかもね。

5 :名無しさん@お腹いっぱい。 :2001/08/10(金) 23:54
CVSで直前の版(n 代前の版)とのdiffを取る方法ってある?

6 :名無しさん@お腹いっぱい。 :2001/08/10(金) 23:58
>>5

cvs diff -r {リビジョン}
でどう?。

7 :名無しさん@お腹いっぱい。 :2001/08/10(金) 23:59
リビジョンを明示的に指定しないで「1世代前」みたいにしたいんですが。

8 :2 :2001/08/11(土) 01:08

> ただ、root で cvs 使うと文句言われないか? それで
> 挫折した経験があるんだが。/etc なら rcs の方が
> いいかもね。

やっぱりそうかなあ。/etcはまじめにバックアップとって、
RCSかね。複数人で管理してるからCVSの方が楽かと
思ったんだけど。

9 :ななしさん@おなかいっぱい :2001/08/11(土) 01:11
>>8
ん? 4が書いてるように別ディレクトリでcoしてコピれば
良いだけでないの?

10 :名無しさん@お腹いっぱい。 :2001/08/11(土) 01:35
ln -s /home/boke/RCS/etc /etc/RCS
uheheheh

11 :名無しさん@お腹いっぱい。 :2001/08/11(土) 01:53
master.passwdあたりが心配。

12 :2 :2001/08/11(土) 01:59

ホストは2台とも同じ管理者なんでパスワードの問題とかは
同じような危険度なんだな。

しかし、
>>9
よくよく考えてみると、
/etcにはバイナリとかシンボリックリンクとかいろなものがあるんで、
CVSで一気にってのは安全ではなさそうだ。

13 :gt;gt;7 :2001/08/11(土) 13:43
必ず一世代前となら、option 無しで、
cvs diff foo.c
で良いのでは??

14 :名無しさん@お腹いっぱい。 :2001/08/11(土) 13:47
>>7

あと、Emacian を使っていたら、pcl-cvs で

= d

で ediff できて簡単ですよ。

15 :名無しさん@お腹いっぱい。 :2001/08/11(土) 13:51

皆さん、CVS Repositor のバックアップってどうしてますか?

16 :名無しさん@お腹いっぱい。 :2001/08/11(土) 13:57
>>15
tar+gzip で固めてどっかに置いておく。以上。

17 :名無しさん@お腹いっぱい。 :2001/08/11(土) 20:19
>>15

rsync 使ってます。

18 :名無しさん@お腹いっぱい。 :2001/08/13(月) 17:28
面白そうなスレage

19 :名無しさん@お腹いっぱい。 :2001/08/14(火) 00:33
main truncに importするほうほうってない?
主な開発は VSSでやってるんで、それを引っ張ってきて
CVSに突っ込んで枝を作っていじろうと思ってるんだけど。

20 :名無しさん@お腹いっぱい。 :2001/08/14(火) 10:17

pcl-cvs使ってるんですが、
d eとかで編集(マージ)するとき、
日本語の問題はうまくいってますか?

どうも、JISのファイルとEUCのファイルを比較しているようでせっかくの
ediffがうまく動いてないんです。

21 :名無しさん@お腹いっぱい。 :2001/08/14(火) 22:38
>>20
根本的な解決ではないですがうちでは、C-x RET c して文字コードを指定してから d e
するようにしてます。

22 :名無しさん@お腹いっぱい。 :2001/08/14(火) 23:47
>>21

む、やはり困っている人がいましたか。
参考にさせてもらいます。

23 :名無しさん@お腹いっぱい。 :2001/08/15(水) 05:11
ファイル名に日本語使うとまずいですか?

24 :  :2001/08/15(水) 06:39
>>19
VSS-to-RCSコンバーターってあるの?
うちは、最初から諦めて、全部現在の版をCVSにぶち込みました。
んで、VSSは参照用として、バックアップとって、書き込めないように
して残してあります。

25 :名無しさん@お腹いっぱい。 :01/08/26 12:46
CVSは便利

26 :名無しさん@お腹いっぱい。 :01/08/26 13:20
CVSを使ったネットからのMAKE(?)の方法がイマイチわからない。
http://gnu-darwin.sourceforge.net/
ココ使いたいんだけどなぁ。

27 :19 :01/08/26 16:41
いや VSSで最新のソース取得してから、ちまちまと importする。
これの繰り返しです >>19
mainの開発陣は VSSつかってて、うちらは一寸 hackしてるだけなんでねえ..
# でも何で VSS使うの...

28 :名無しさん@XEmacs :01/08/28 14:48 ID:2OCyfEBQ
CVS でプログラムソースを管理してるんですが、キーワード置換を用いて、
各ソースプログラムの ident を埋め込もうと思っています。

ソースファイルの先頭に置くつもりなんですが、同じ書式で書こうとすると
変数名が衝突しますよね。

マクロなどを使用して上手いこと衝突しない様に書く方法って無いですか?
皆さん、どんな感じで書いてます??

29 :名無しさん@お腹いっぱい。 :01/08/28 14:55 ID:kWMpTnew
>>28
>キーワード置換を用いて、 各ソースプログラムの ident を埋め込もう

オブジェクトの中にもリテラルでID埋め込もうとしてるの?

30 :名無しさん@XEmacs :01/08/28 15:16 ID:ign9iVXY
>>29

そうです。

static char *this_src_ident =
"@(#) $Id: foo.c,v 1.13 2001/08/28 02:01:18 bar Exp $";

なんてしてるんですが、これだと変数名が衝突しますよね。
上手く衝突を逃れられれば、

$ what foo
foo:
$Id: foo.c,v 1.13 2001/08/28 02:01:18 bar Exp $

$ strings foo.o | grep '$Id'
@(#) $Id: foo.c,v 1.13 2001/08/28 02:01:18 bar Exp $

とかして確認できるってのを意図してます。

31 :名無しさん@お腹いっぱい。 :01/08/28 15:25 ID:o186web.
んー、this_src_ident の代わりに foo_c みたいにファイル名、直しか
思い浮かばん。違うディレクトリに同じファイル名があるとき面倒だが。

32 :原住民 :01/08/28 15:26 ID:RUhCQUmc
staticなら衝突しないんじゃないの?
っていうか、literarlとして object内には埋め込まれるので
stringsとかは使えるんじゃ。
つか identコマンドつかえや!!

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みてもわからなかったぞ。
後生だから教えてくれ。


掲示板に戻る 全部 次100 最新50

read.cgi ver5.26+ (01/10/21-)