subversion バージョン管理【サブバージョン】
1 :
犬板 :
2006/08/04(金) 23:33:16 ID:aMGjnjPK バージョン管理システム subversionについて語ろう。 バージョン管理システムの一つにCVSがあるが、ディレクトリの移動の管理や ネットワーク対応などでやや難がある。 これらCVSの問題点を解決すべく開発されているのがSubversionである。 オープンソースソフトウェアの開発においてはCVSが多く使われているが、 Subversionを利用するオープンソースプロジェクトも急速に増えている。
今日みかけたsubversionの本で、 バックアップソフトsubversionと謳っている本があって萎えた。
rcsカキ揣醇・・コ搶掛カカ揆カイж
monotoneスレならよかったのに
6 :
login:Penguin :2006/08/06(日) 04:24:53 ID:xoEj1Jiv
重複か? 板が違うので許される?
重複ではないけど、Linux 板でやる必要なくね?
ちょっと話題を変えて再利用・・・って思いっきりソフト名入ってるんですね。
9 :
login:Penguin :2006/08/13(日) 18:27:14 ID:1g2b6b8a
現在使用(しようとしている)のはWindows版なので厳密には板違いですが、お力になっていただければ幸いです。 当方は今、Windows上でJava(Eclipse RPC)の開発をしているのですが、バージョン管理にWindows版のsubversionを使いたいと思っております。 インストールは恙無く終わり、ローカルマシン上では「file:///〜」という指定で無事チェックイン出来たのですが、リモートマシンからのアクセス(「svn://(IPアドレス)」と指定してのsvnからのインポート)で出来ません。 subclipseのコンソールには「svn: Can't connect to host (svnserverが動いているIPアドレス)」と表示されています。 おそらくリモートでアクセスするには何かしらの設定が必要なのではないかと考えたのですが、ネット上にある情報はほとんどがWebDAVを使用するものばかりです。 残念ながらこのマシンでは(他の開発で必要なため)IISが必須なので、可能な限りapacheは入れたくありません。 (共存は可能なコトは知っていますが、このためだけにインストールするのは少し悲しすぎます(T_T)) ということで、何か情報をお持ちの方がいらっしゃればアドバイスをいただければ幸いです。よろしくお願いします。 また、必要な情報などありましたらご指摘ください。
11 :
9 :2006/08/13(日) 19:44:48 ID:1g2b6b8a
>>10 コマンドラインからバッチを起動しています(現在はタスクで起動時に実行)
>>9 にも書いたとおり、「file:///〜」は通っているので、多分大丈夫だとは思うのですが……
確認する方法、ご存知でしょうか?
Apacheをインストールしなさい。 Apacheをインストールするのが正しい方法なので躊躇ってはいけない。
あ、そっか、DAVか。
>>11 >
>>9 にも書いたとおり、「file:///〜」は通っているので、多分大丈夫だとは思うのですが……
subversionがローカルのファイルを直接読んでいるので何の参考にもなりません。
file:///a.htmlがWebサーバを通っていないのと一緒。
15 :
9 :2006/08/13(日) 22:47:47 ID:1g2b6b8a
>>14 ……ごめんなさい、当たりでした(T_T) subversionって、ローカルでアクセスするだけならsvnserve立ち上がってる必要は無いんですね。
で、どうもタスクによる指定では上手く動いてくれないので、vectorからサービス化のフリーウェア拾ってきてサービスにしてみたところ、無事に動きました。
ありがとうございました。
16 :
login:Penguin :2006/08/16(水) 00:13:47 ID:Pj3Vfy/U
subversion - バックアップツール とかいう本が出てたけど。。。どうなの?
まぁ、そういう使い方しても法律に触れるわけではないが...。 タイトルを見る限り、決してオススメできないな。
ファイルごとのバージョン管理が出来ないのは仕様ですか?
>>22 ファイルごと別々にcommitするか、CVS/RCS使え。
>>22 一遍、窓の無い壁が軟らかい部屋のある病院で見てもらえ。
>>24 じゃないけど
ヤバイ患者を扱う精神病院ってのは
飛び降り防止の為に窓がなかったり、
ぶつかってケガ/死ぬのを防ぐ為に壁がやわらかくなってたりするらしいよ。
前テレビで見た。
それ何て閉鎖空間?
30 :
login:Penguin :2006/11/03(金) 23:05:11 ID:Gh5pfkKW
ねー、subversionって前のリビジョンがいらなくなっても消すこととかできないよね? 例えばリビジョン1のときに1Gのファイルをcommitして、次のリビジョンでそれをdeleteしたとするじゃん。それでもリポジトリのサーバの方にはその1Gのファイルは残ってしまうわけだよね…。 もしくはもう昔のバージョン情報はいらなくて、HDD削減のために昔のバージョン情報を消したいとかそういう使い方はできないのかな?
>>30 dumpしてダンプファイルを編集。
その後loadすればいい。
それ以外の方法は無い。
33 :
30 :2006/11/04(土) 01:10:24 ID:yrxZYbjT
>>31 ,32
なるほど。確かにそれなら消える罠
でも例えばそれでリビジョン1を消したとして、ローカルコピーの方からリビジョン1を参照しようとした場合とかってsubversionの予期せぬエラーみたいにならないかな?
そういうのは、昔のバージョン情報がいる、って言うんじゃないかな?
svnのクライアントコマンドってブックマーク機能ある?
Tracでもつかってみやう
40 :
login:Penguin :2006/12/12(火) 11:15:58 ID:8ho5WqMl
Windows上でTortoiseSVNを使ってるんですが、(サーバーもWindows上) Thumbs.dbを削除したいんですが、どうすればいいですか? というのは、WindowsのExplorer上からだとThumbs.dbが見えないため 右クリックで削除の方法が使えないからです。 DOSプロンプトでコマンドラインから消す方法もありますが、数が多いという こともあり、できれば作業者側のPCで消せる方法を探してます。
>>40 フォルダオプションで隠しファイルを表示しない、か、保護された〜のチェックを外せば良いよ。
>>38-39 わたしが思いますに、
>>36 はmoveとかmergeとかで毎回URLタイプするのが面倒なので、
登録しておく方法はないか、と聞いているのではありますまいか。
moveとか:
作業コピーでやってコミットしなさい
mergeとか:
環境変数使いなさい
これならFAQなんですが。もし作業コピーに元のURLが保存されてることを知らないなら、
馬鹿ということになりますが、いくらなんでも人をそこまで悪く言いたくない。
おまえらLinux板でどうどうとゲイツOSの話すんなよ。 TortoiseSVNを使ってるならム板いけ
>>43 すんません。Windows板にもソフト板にもなかったんで・・・
ム板ってどこですか????
>>46 うぉ!なんて親切ちゃんなんだ!今度からそっちで聞きます。
48 :
login:Penguin :2007/12/17(月) 04:03:58 ID:MP1yZ5qo
英会話の独学してたら急に気になったんだけど、Subversionて英語発音だとサッバージョンになる?
ここはsvn上のソフトのエラー報告とかも出きるの?
50 :
login:Penguin :2008/02/11(月) 12:39:28 ID:5R8ycQ1w
project001とproject002という2つの全然別のプロジェクトがあって、それをsvnで管理したいとき、 file:///home/hoge/svnで指定する箇所は分けるべきなのですか? 以下のようにやってはダメ? $ svn import /home/hoge/prj001 file:///home/hoge/svn/ -m "project001 start" $ svn import /home/hoge/prj002 file:///home/hoge/svn/ -m "project002 start"
それは管理方針の問題だから駄目ではない。 まともな管理者が利点と欠点を理解して それを選択したのならきっとそれがベストな方法だ。
52 :
login:Penguin :2008/02/11(月) 16:21:03 ID:5R8ycQ1w
全部自分が個人としてやってたことなのですが、 自分のプロジェクトで、今まで1つのSVNディレクトリで管理してたのですが、 管理するプロジェクトが1つ増えたので、同じディレクトリに追加したところ、 チェックアウトしてみると、2つのプロジェクトが混ざって(一緒になって) チェックアウトされてしまうようになりました。そこで現在は、SVNディレクトリを 2つにわけ直してやってます。ですが、CVSだとCVSROOTは1つで済むところ、 SVNだとディレクトリを分ければならない、というのはちょっと不便な感じです。
CVSROOTっていうのは環境変数のこと? 上の方法で import しているなら、 $ svn co file:///home/hoge/svn/prj001 とやれば prj001 がチェックアウトできるのでは? チェックアウトしたときにroot情報はワーキングコピーに 記録されるから環境変数を弄る必要は無い。 勘違いしてたらすまん。
54 :
login:Penguin :2008/02/27(水) 18:31:37 ID:M71QBFgt
svnserveで配信してるんだけど 一回パスワードとか入力して認証した場合、 かなり長い間ノーパスでアクセスできるよね? この認証ってどこで管理してんの? 認証してる期間が長くてコワス
~/.subversion/auth/
56 :
login:Penguin :2008/03/07(金) 11:23:59 ID:yxfPG9lb
Emacs で,ワーキングベースとワーキングコピーの内容を ならべながら diff とって,「あ,ここはやっぱり 変更するべきじゃなかったから元に戻そう」という作業を 簡単にできるモードってありませんでしょうか? svn-status-* コマンドは使っているのですが. それ以外に何かあれば教えていただきたく.
57 :
login:Penguin :2008/03/07(金) 11:31:23 ID:yxfPG9lb
あ,ちなみに今は svn diff の結果を見ながらやってるんですが, ウギャー!と発狂して発作的に svn revert してしまい 放心状態になることがあります.screen で分割してあれこれ 工夫はしてみるんですが,視認性が悪く・・・ Emacsタン!助けて!
psvn か、二つ読み込んで ediff?
svkというのを使ってみたが、 これ使いにくいな。copyとかdiffとかで オプションがsvnと違うので面倒。 でも履歴も含めてもって来る方法がこれしかないので、仕方ない・・・
つgit-svn
>>60 ありがとう。
git-svn/hgsvn/bzr-svnとか色々あるのね。
結局、オプションに互換性があるわけでも無いから
苦労して、svk入れる必要はなかったかも・・・
お気に入りのbzrが対応してたのは知らなかったよ。
62 :
login:Penguin :2008/04/21(月) 09:07:40 ID:4ZxrAy+z
最近リポジトリへのアクセスがめちゃくちゃ遅いと思ったら、 クライアント側のIPアドレスが逆引きできてないだけだった・・・ プロバイダに連絡してすぐに直してもらったけど、 そういや sshd は UseDNS yes がデフォだったんだな。
63 :
login:Penguin :2008/04/24(木) 09:20:38 ID:lzqj2l5T
ワーキングコピーの形式はバージョンによって 変わる可能性があるようだけど、リポジトリのほうは そのままでも問題ないのかな? たとえば 1.3 時代に作ったリポジトリ、 そのままずっと運用し続けているけど、 これからもクライアントのバージョンが 1.5, 1.6, ...., 3.1415 と上がっていても大丈夫なんだろうか。 とちょっと不安。
64 :
login:Penguin :2008/04/24(木) 13:23:00 ID:lzqj2l5T
さっき大きめの更新を svn+ssh でコミットし始めて、 つけたログメッセージが気に入らなかったから Ctrl+C で中断したんだけど、Broken pipe の表示と ともにコミットされた旨の表示も。 本当にきちんとコミットされているんだろうか。なんか不安だ。 一応 svn update してみても何事も起こらないんだけど。
>>64 ログメッセージだけだったら後から幾らでも直せるのに
66 :
login:Penguin :2008/04/29(火) 22:49:00 ID:Wy5jS6O+
え?そうなの? ダンプして強引に修正とかじゃなくて?
68 :
login:Penguin :2008/04/30(水) 05:52:57 ID:lzKoMNft
>>67 ちょ,おまww
質問してるのは俺だってば
70 :
login:Penguin :2008/05/21(水) 06:47:54 ID:dJItIQm3
ワーキングコピーにはワーキングベースが入っていますよね. つまりざっくりと容量が2倍になっているわけで, とりあえず変更するつもりのものがないディレクトリに関しては ワーキングベースにファイルそのものじゃなくてハッシュ値だけ 持っておくとかで容量を節約できればなぁと思うんですが,無理? CoW 機能を持ったファイルシステムとかならもっと うまくやれるのかもしれない.
72 :
login:Penguin :2008/05/21(水) 14:14:34 ID:dJItIQm3
一応その辺の話も出てはいるのか・・・ ワーキングベースのファイルを空ファイルにしておく という work around は面白いな。 でも不用意にこれやると、リポジトリにめちゃくちゃな 差分がコミットされてしまう予感。
73 :
login:Penguin :2008/05/28(水) 11:02:45 ID:HsWDzpDn
CentOS 5 で使える svk の rpm パッケージって無いでしょうか?
>>48 厳密にはヴィジュアルヴェーシックになるよ
要するに胃キャメラって事ですね
76 :
login:Penguin :2008/06/25(水) 15:58:09 ID:wshltYxw
今日初めてsvn使ってみたのですが svn addとかsvn moveとかいちいちやるのが面倒だと思いました あるディレクトリ以下変更が加えられたファイルすべてを自動的に commitする方法はないのでしょうか?
truckと一緒に使うのがいいのかな
RapidSVN
80 :
login:Penguin :2008/07/01(火) 12:26:02 ID:+6FU+8Fp
Windows環境でtortoiseを1.5にしたら日本語フォルダにしていたリポトロジ がリポトロジブラウザで参照できなくなりました。 コミットや差分は正常にできます。 日本語フォルダ(パス)で運用されているかたはご注意ください。
>>76 その変更ツリーのトップにいってコミットすれば
更新されたファイルを自動的にコミットしてくれますよ
>>80 あんたはまず「情報リテラシー」から勉強し直した方がいい。
リポトロジ?w
>>82 それを言うなら情報が付かない只のリテラシーをなんとかすべきだろう
どっちかというと情報リテラシーに問題があるのは
>>81 だな
84 :
login:Penguin :2008/07/04(金) 17:20:34 ID:Lnyp1aKI
>>82 すいません。
情報デリカシーから勉強してまいります。
Windowsで、作業コピーのファイルを移動する時には、 1.コピー先のフォルダが作業コピー内でaddなりcommitされている事を確認 2.コピー元のフォルダを開く 3.コピー先のフォルダを開く 4.コピーしたいファイルなりフォルダをマウス右ボタンでドラッグ&ドロップする 5.移動に関する小さいメニューダイアログが出るので一番上を選択する 6.コピー先のフォルダをコミットする
このスレ、01-03はLinux板にあったのね。 古巣に舞い戻ってきたんだ。
UNIX板に置いてあると、どのスレもまともに機能しなくなるから
次スレ立ってないのに埋め始める馬鹿がいたから 避難先として誘導しただけ
まあ、いいんじゃね?
次スレを待つか
95 :
login:Penguin :2008/07/09(水) 10:01:11 ID:YkKIuky0
じゃあ仕事中のオレがリスクを背負いながら 元の巣に建てるよ
96 :
login:Penguin :2008/07/09(水) 10:05:21 ID:YkKIuky0
bazaarが一番いいと思います。
98 :
login:Penguin :2008/08/14(木) 17:49:04 ID:6NC/QdJU
■■みんなでサイトつくろうぜwwwwwwwwwwwwwwww■■
「お前ら一緒にサイト作ろうぜwwwwwwwwww」
「2ちゃん越えるサイト作ろうぜwwww」
「仕事無いんだ・・・・・・」
「やろうぜ!」
「みんなでサイトつくろうぜwwwwwwwwww」
http://gacco.o0o0.jp/ http://yutori.2ch.net/test/read.cgi/news4vip/1218673130/ http://ex14.vip2ch.com/test/read.cgi/part4vip/1218612197/ 興味沸いたらきてください!
======================!! 人材募集中 !!======================
■プログラムを組んでくれる人
*サーバー側
言語はRubyかPerlの予定ですが、Perlが有力候補。
・チャット
定期的にクライアントから着信があり、それに対して更新されたチャットのメッセージを返信する程度の能力。じゃなくて機能。
通信するときのフォーマットは未定。
・ログイン・アカウント管理
ログイン認証、各アカウントの点数などの管理。データベースは未定。
・お絵描き
未定。とりあえず鯖に負担がかからない程度にたまに画像を送信してあげるって感じで
*クライアント側
はっきり言って俺もわからね。Ajaxだとかflashだとかjavaだとか。
■機能提案(正しくは人材ではなく、意見?)
「こんな機能があったら良い!」「こうするともっと楽しくなる!」などの意見募集中。
挨拶とか気にせずスレにどんどん書き込んでくれればおk
■デザイン
サイトのデザインを考えてくれる人、作ってくれる人募集中。
できればphotoshop illustrator使える人(プロジェクト共有しやすいので)
99 :
login:Penguin :2008/08/30(土) 15:16:31 ID:5rhgiBA9
mod_dav_svn 経由だと どれくらいのファイルサイズまでコミットできるんだろうか. いつも失敗して結局 svn+ssh でコミットしている. 最初の import 以降の差分だけならもんだいないんだけど
>>99 Apacheの設定の問題じゃないの?
最大リクエストサイズに上限が設定されてるとか。
101 :
login:Penguin :2008/09/03(水) 06:16:07 ID:belhigq/
俺はでっかいファイルのチェックアウトでも問題出るよ。 300MBくらいの(笑 apache の error.log を見るとこんな感じ 同時刻に必ずこの二つがペアになって発生する [error]Provider encountered an error while streaming a REPORT response. [500, #0] [error]A failure occurred whiledriving the update report editor [500, #190004] なんなんだろうね。
102 :
login:Penguin :2008/09/03(水) 13:05:28 ID:belhigq/
mod_dav_svn を使ってます。 いま、各リポジトリの conf/authz にアクセス制御を書いています。 リポジトリは複数 repo1 repo2 あるので、 repo1/conf/authz、 repo2/conf/authz のようにアクセス制御の ファイルが分散しています。 このとき SVNParentPath を使ってこれらのリポジトリを ひとまとめ(?)にしたいのですが、アクセス制御のファイルは それぞれ別別にしたままにできるのでしょうか? AuthzSVNAcccessFile ディレクティブは一つしか書けなくて、 そこで指定したファイルに [repo1:/hogehoge] のような セクションでリポジトリを指定するしかないのでしょうか?
103 :
99 :2008/09/05(金) 09:40:27 ID:H3lMy7zk
リポジトリにコミットされたファイル名を検索したいのですが、 いい方法はありますでしょうか。
>>104 チェックアウトして展開された中を検索する?
>>105 超ムダ。
どうせならせめて
svn info -R --xml
次スレのスレタイは【差分バージョン】にしておけよ
108 :
104 :2008/10/10(金) 00:32:58 ID:bXfWfD79
チェックアウトしてない状態です。 tracなど使うとできるんでしょうか。
>>104 だけみるとsvn logでいいとしか思えない。
>tracなど使うとできるんでしょうか。
tracは魔法じゃないからね。
110 :
106 :2008/10/10(金) 09:11:27 ID:eVlShOPt
>>108 だから↓じゃダメなのかよ。
svn info -R --xml
引数にレポジトリURLを指定できるんだが。
111 :
106 :2008/10/10(金) 09:13:18 ID:eVlShOPt
>>108 だから↓じゃダメなのかよ。
>svn info -R --xml
引数にレポジトリURLを指定できるんだが。
112 :
106 :2008/10/10(金) 09:17:47 ID:eVlShOPt
>>110-111 大事なことなので2回言いました!
うそ。
なんかエラーが出たんで書き直したら
こんなことに。orz
114 :
login:Penguin :2008/10/25(土) 11:14:10 ID:O4WybLob
ちょいと教えてください。 過去にcommitしたファイルをdb上から削除する方法ありませんか? 作業していたファイルのコミット数が多くてdbファイルが肥大化しました。 そこで、直近にcommitされたファイルだけ残して、それより古くcommitされたものを db上から削除したいのです。
svnadmin dump -r REVs
>>114 ほんとに直近のものしか必要ないなら、exportして新しいリポジトリにimportしたら?
新しいリビジョンのみdumpした場合branchやtagのデータも含まれるからかサイズは膨張するのがちょっと不満
svndumpfilterでいらない子は捨てられるんじゃないの?
120 :
login:Penguin :2008/11/05(水) 10:16:25 ID:lxwRaWIS
差分のエクスポートをしようと思い、ログを表示し、リビジョンを比較をクリックしたら、 server does not support retrieving information about the repository root というエラーが出て、差分のエクスポートができません これはどういったエラーでどのように治せばよいかご教授ください 使用ソフトは、TortoiseSVN Subversion クライアント for Windows Version 1.4.8です
>>101 ローカルへのコピー時ってXPにDAVからのダウンロードファイルサイズ制限なんてものがあるらしいね
レジストリで変更可能
関係ないか
122 :
120 :2008/11/05(水) 14:49:33 ID:lxwRaWIS
エラーが出るパターンがわかりました 他の人がインポートしたプロジェクトはリビジョンを比較できますが、 自分がインポートしたプロジェクトはエラーが出て見れません
Apache + DAV のAutoversioning環境で、pre-commit でエラーを返しても PUTに201を返してしまって、ユーザに成功したかのように見えてしまうんですが INTERNALSERVERERRORなどを返すのが正しいと思うけど そんな設定が見あたらなくてこまってます 誰か知りませんか?
コマンドを全角で書いているとか?w
DAVアクセスで、Windows Explorer にエラーメッセージを渡す方法しりませんか?
129 :
login:Penguin :2009/02/06(金) 15:37:11 ID:bcsA7XkK
check in するとき、ステータスがAまたはMのものをすべてまとめてコミット〜みたいなことがしたいんですが、そういうことができるコマンドオプションってありませんでしょうか?? ご教示をばいただきたく><
>>129 フォルダをコミットすればいいんじゃないか
引数付けなきゃ全部コミット対象じゃないのか?
>>139 ,140
それじゃAやMじゃないものも混じってしまうな。
さらにコンフリクトがあるとコミット自体出来ない。
ふつーにgrepで絞ってしまうなぁ。 svn add `svn status | grep '^?' | grep -v '~$'` ぐらい普通に打っちゃう。
>132 A や M だけ commit したい理由って何? どーせ設定するときに >133 みたいにする必要があるけど changelist を使うと多少見通しが良くなるかもね。
135 :
132 :2009/02/08(日) 05:01:22 ID:Kl2sibex
(´・ω・`) しらんがな 129のお題に完全な回答になっていない可能性を示唆しただけやし 129がそんな変則的な事をしたいのかも分からんし
psvn.el 系なら *A とか *M でできるけどなぁ
137 :
129 :2009/02/11(水) 17:28:33 ID:j+WRM2eE
レスありがとうございます。お礼遅れてすいません。
こういうことやりたい理由は3、4個のファイルを編集してコミットしたいとき、全部打ち込むのが面倒だからです。
>>133 `svn status | grep '^?' | grep -v '~$'`
これだと、出力結果が
? a.txt
? b.txt
みたいになって、svnに渡すとエラーが出ませんか??
>137 cut か awk か sed あたりが必要だね。
139 :
133 :2009/02/12(木) 00:45:51 ID:Nhgz6WJM
あーごめんごめん。awk '{print $2;}' をつけてる。 試さずに書くもんじゃないね‥‥‥。
リポジトリの名前を変更する事はどうやったらできるんでしょうか
リポジトリに名前ってあった? リポジトリurlをエイリアスできる機能があったらほしいけど
名前はあるけど、FSFS なら普通にサーバー側でリポジトリの フォルダをリネームするだけじゃないの?
リポジトリディレクトリにシンボリックリンクを張ればいいと思う
>>142 多分BDBでもそれでうまくいく
リポジトリからチェックアウトしてコピーファイル置くローカルの作業フォルダだけを 削除したい場合はどうすればよいのでしょうか? リポジトリにある大元のデータも消したい場合は右クリックのsvnのコマンドから削除 すればよい、というのは分かったのですが、ローカルの作業フォルダだけを消す方法は 分かりませんでした。
subversionに右クリックとかないから
>>144 普通にOSコマンドで削除すればいいだけだと思うが。
rm -rf $HOME/.*
148 :
144 :2009/02/26(木) 00:10:40 ID:yKci/HL2
Subversion 1.5.6 って,どんなバージョンアップですか。 教えて英語得意な人。
ちょっとしたバージョンアップだ
Visualsvnに関する質問はスレチでしょうか?
> TortoiseSVN 1.6.2, built against Subversion 1.6.2. Released 9. May 2009. なのに > The latest release of Subversion is 1.6.1. 珍しいこった
EclipseのプラグインはSubversiveでいいの?
>>156 Subclipseもあるよ。好みの方を使えばよい。
158 :
login:Penguin :2009/07/01(水) 08:58:34 ID:LpPrGwNO
MacOSX上ではGUIでまともに使えないのか。 CUIにがて。
159 :
login:Penguin :2009/07/06(月) 19:28:31 ID:vfHIXM1C
160 :
login:Penguin :2009/09/06(日) 18:20:00 ID:p9qlQ2nj
>>158 開発環境ならXcode、Eclipse
単体ソフトならVersions、Cornerstone
Finder拡張ならSCPlugin
Path Finderも対応してる。
Cent OS 5に、Subversion 1.6.5をインストールしたのですが、
Apacheのmod_dav_svn.soの読み込みが、下のエラーで成功しません。
どなたか解決方法ご存知の方よろしくお願いします。
apachectl: Configuration syntax error, will not run "restart":
httpd: Syntax error on line 206 of /etc/httpd/conf/httpd.conf: Cannot load /usr/lib/httpd/modules/mod_dav_svn.so into server: /usr/lib/httpd/modules/mod_dav_svn.so: undefined symbol: svn_log__update
Syntax Errorってんだから該当箇所(206行め)を提示するのが筋。
>>160 「mod_dav_svn.soのモジュールのロード時に、svn_log_updateってシンボル (=エントリポイント) が無い」ってエラーが出てるね。
どうやってインストールしたの? CentOS 5.xにはSubversion 1.6.xは用意されていないだろうから、
DAG Repository使ったの? それとも自前でビルドした? 他のOSのRPMを無理矢理入れた?
>>161 206: LoadModule dav_svn_module /usr/lib/httpd/modules/mod_dav_svn.so
207: LoadModule authz_svn_module /usr/lib/httpd/modules/mod_authz_svn.so
です。
>>162 自前ビルドです。
./configure --with-apr-util=/usr/local/apr-util/ --with-apr=/usr/local/apr/
make
make install
でインストールしました。
>>163 Apache httpdを自前で入れた
→httpdとSubversionの全てを知るくらいがんがれ。
Apache httpdはCentOSのを使ってる
→(1)開発パッケージ(*-dev)やconfigureのオプションが足りないのでは。がんがれ。
→(2)あきらめてDAG (rpmforge) のmod_dav_svn-1.6.5-0.1いれたら?
>>163 ldd /usr/lib/httpd/modules/mod_dav_svn.so
Subversionスレの話題から離れてきたな
>>164-165 rpmforgeからインストール後、httpd.confに
LoadFile /usr/local/apr-util/lib/libaprutil-1.so
LoadFile /usr/local/apr/lib/libapr-1.so
を追加することで成功しました。ありがとうございます。
誤ってリポジトリを消してしまったんだがどうすればいい?
すべてわすれてしまえばいい
権限そのままでupdateする方法ないですか? test.txtのグループがtest ユーザーがuserで、 rootでupdateかけたらユーザーもグループもrootになってしまうのですが、 ユーザーとグループはそのままにしておきたいのです
リポジトリに入れた時点でそういうメタ属性はなくなるので無理。 OSに付いてるアーカイブツールやバックアップツール(tarやdump等)を検討ください。
>169 使った事無いけど、contrib にある asvn が使えるかも。
172 :
login:Penguin :2009/10/16(金) 22:21:41 ID:rtVctrRo
subversionでコミット/チェックアウトする際にあるフォルダやそのサブフォルダを更新の対象から外すことは可能でしょうか。 TortoiseSVNというのをインストールせずに、コマンドで出来ることがあれば教えて頂けないでしょうか。宜しくお願いします。
-N [--non-recursive] : 廃止予定です。--depth=files または --depth=immediates を使用してください --depth <ARG> : 操作の対象を深さ <ARG> ('empty'、'files'、 'immediates'、'infinity' のいずれか) に限定しま す svn commit helpですぐ出てきたよ
訂正 ×svn commit help ○svn help commit
>>172 subversionのコマンドはWindowsにはついてこないので、別途入れる必要がある。
次のWebサイトからWindows 向けバイナリを取得できる。
WindowsならCollabNet Subversion Command-Line Client v1.6.5 (for Windows) を
インストールし、あとは
>>173 のとおり。
ttp://subversion.tigris.org/
TortoiseSVN の板ってある?
プログラム板の方ならいいんじゃね?
板とスレの区別がつかないなんて
チェックアウト中に画像の多く含まれるフォルダで止まってしまうんですが、 単体ファイルのサイズが大きいとそういう事あるのでしょうか。
亀はバージョンによっては結構タイムアウトするかも
ttp://terai.xrea.jp/Subversion/WinMerge.html このページを参考にWinMergeをSubversionのdiffとして使用する設定を行ったのですが
svn diff test.txt
はうまくいきますが
svn diff -r 100 test.txt
はWinMergeのファイル指定のダイアログが表示されうまくいきません。
どうもリビジョン100のファイルが取得できないようです。
どなたか原因がわかる方いらっしゃいませんか?
182です。 すみません、ここはLinux板でした。 移動します。
184 :
login:Penguin :2010/01/28(木) 19:09:05 ID:pMN7rp65
post-commitでupdateかかったパスを取得できないでしょうか。 そのパス以下のみsvn ?upしたいのですが。 全体やるとえらい時間かかるので・・。
185 :
login:Penguin :2010/01/28(木) 22:08:55 ID:78GFY+QQ
svnで、現在のリビジョン番号を取得する方法はないでしょうか。 svn info -r base で表示されるリビジョン番号を取得して、それを引数にプログラムを起動したいのです。
>184 svnlook changed 使えば? >185 その svn info -r base の出力結果を解釈するんじゃ駄目なのか?
subversionが作成する管理フォルダ .svn 以下全てのパーミッションを drwxrwxrwxにしたいのですが、どうすれば可能でしょうか。
188 :
login:Penguin :2010/02/10(水) 08:55:54 ID:ckhwuPgW
プロジェクトのルートで $ find . -name .svn -type d -exec chmod -v 777 '{}' + Linuxなら使えると思うけど、もし最後の + が使えなかったら $ find . -name .svn -type d -print | xargs chmod -v 777
189 :
login:Penguin :2010/02/10(水) 08:56:46 ID:ckhwuPgW
あ、「以下すべて」か。chmod に -R オプションも付けて。
phpでフォルダ作成のプログラムを使用しているのですが、 所有者とグループがapacheになってしまいます。 svn add ./****** したときに作成される.svnのパーミッションが 777にはならないでしょうか。
191 :
login:Penguin :2010/02/10(水) 10:17:57 ID:KJX+qOU+
umask 000
svn addしたときにumask 000 すればいいのでしょうか。 それともmkdirしたとき?
193 :
login:Penguin :2010/02/10(水) 15:49:17 ID:KJX+qOU+
ひょっとして chmod ug+s とかかも?
すいません。 ここの住人でリポジトリが巨大になってチェックアウトや更新が 途中で失敗する症状になった方はおられませんか? 今、リポジトリが20Gバイトくらいでチェックアウトした ワーキングコピーは40G、ファイル数が3万程度です。 checkout中topで眺めていると、apacheがメモリとスワップ領域を食いつぶしたところで 停止しているようです。 更新を繰り返せばいいのですが、なんだかスッキリしません。 サーバーはubuntu server9.10,memory2GByte,apache2、subversion1.6です。 apacheがメモリにキャッシュ?してるかな?
64bitと32bitで試しましたが変化なし。 おっきいバイナリをsubversionで扱うのは良くないのか。
鯖側はわからないけれど、 クライアントが Windows の亀の場合、 checkout したり update したりすると、 タイムアウトで切れることはあるかな。 ワーキングコピーは 20G くらい。
197 :
login:Penguin :2010/02/28(日) 01:08:07 ID:74fup2Wj
198 :
197 :2010/03/01(月) 14:48:29 ID:pUNPJEo9
失礼、解決しました。 問題はAuthzSVNAccessFileの内容だったようです。 /etc/httpd/conf.d/subversion.confではSVNPathとせずSVNParentPathでリポジトリの親ディレクトリを指定していたのですが、 その場合はAuthzSVNAccessFileで指定するファイルでは、配下にあるリポジトリの名前を明示的に指定してアクセス権限を指定してやらないといけないのですね。 リポジトリ直下においたファイルをAuthzSVNAccessFileで指定した場合、特にリポジトリを指定しなくても権限が制御できていたので勘違いしていました。申し訳ありません。 以上、ご報告まで。お騒がせして申し訳ありませんでした。
よきにはからえ。
巨大なリポジトリ(repo)があります。 その配下にAAA,BBB,CCC,DDD・・・などフォルダが4,000ぐらいあります。 今まではrepoを全てcheckoutして作業していたのですが、 checkoutにかなり時間を要するので、BBBとDDDセットでcheckoutなど を考えています。 しかし、個別のフォルダをcheckoutすると、コミット時にフォルダごと 個別にしなければいけません。 かなり手間なのでいい方法はありませんでしょうか。 /repo L AAA L BBB L CCC L DDD ・ ・ ・
svn commit /repo/{BBB,DDD} のどこが不服なのか。
>202
そのようなやり方があったのですね。
知りませんでした。参考になります。
repoが大きくなりすぎたので、別のリポジトリを作成し分割も考えています。
その場合は
>>201 さんが言っている、外部参照をしたいと思うのですが、
分割した場合はパスがずれてしまいます。(webシステムと連動しているので
ややこしい)
4000フォルダをオーバーしても運用上問題なければ分割しなくてもいいのかと
なかなか判断が出来ません。
リポジトリのサーバはlinuxで、クライアントはwindowsです。
ウィンドウズはフォルダが多すぎると開くのに時間がかかってしまいます。
運用のアドバイスをいただければ幸甚です。
>>200 sparse checkout subversion とか、sparse directories subversion とかでググれば
幸せになれると思うよ。
>>202 試さずに聞くけど、Windowsのコマンドプロンプトでも使える?
cmd.exeの場合は svn commit "C:\Documents and Settings\repos\BBB" "C:\Documents and Settings\repos\DDD" みたいに、人間が自分で展開して並べてやる必要がある。 ...けど、できる。
Cygwin 入れちゃえ。
208 :
login:Penguin :2010/03/04(木) 20:03:17 ID:CbypfiKi
引数展開を誰がやってるかっていう話だな。
ubuntu サーバ(ubuと呼ぶ)上で subversion のリポジトリを作成し、Windows のファイルサーバ(winと呼ぶ)にバックアップを取ろうとしています。 バックアップの手段としては svnsync を使おうとしています(post-commitで、win 上のリポジトリと同期させたい)。 そのため、win の共有フォルダにバックアップ用のリポジトリを作成しようと、ubu から win の共有フォルダをマウントしましたが、 マウントしたディレクトリ内で svnadmin create をすると「svnadmin: database is locked」というエラーが 出てしまい、リポジトリが作成できません。 ubu 上では apache から DAV でリポジトリにアクセスさせるために、ubu 上のリポジトリには www-data:www-data に 所有権を与え、さらに、win をマウントする時にも uid,gid を www-data の id を指定しています。 windows の共有フォルダをマウントして、その上にリポジトリを作成することはできないのでしょうか? それとも、何かしらの設定によるものなのでしょうか? 板違い、スレ違い等ありましたら誘導していただければ助かります。 よろしくお願いします。
210 :
209 :2010/03/07(日) 16:33:23 ID:i2q43V0t
>>209 自己解決しました
--pre-1.5-compatible オプションを付けてリポジトリを作成したら
うまくいきました。
fsfs-reshard.py でリポジトリDBバージョンを2->3にしたらチェックアウト、更新はできるけど コミットできなくなった。バージョンは1.6.9です。 横着しないほうがいいってことらしい。
212 :
login:Penguin :2010/04/02(金) 20:44:39 ID:IyKbf9bJ
はあ、どこで道を踏み誤ったんだろうなあ。。。
>>209 私もsentOSからwindowsの共有フォルダをマウントして、
sentOS上のリポジトリのバックアップをwindows側に取ろうとしているんですが、
上手くいかず困っています。
【状況】
1.sentOSからwindow共有フォルダをマウント
2.SentOSから"svnadmin create hogehoge"を実行し、windows上にミラー用リポジトリ作成
3.ミラーリポジトリのhooks/pre-revprop-change の内容を以下に変更
#!/bin/sh
exit 0
4. 3のファイルに実行権限を付与
5. SentOSから "svnsync init file///ミラー先 file:///ミラー元" を実行してリポジトリの
初期化を試みるが失敗。以下のようなエラーが出た。
"svnsync: 'pre-revprop-change' フックが次のようなエラーを出力して失敗しました:"
(↑※「次のようなエラー」と出力されているにもかかわらず、エラー内容が出力されていない)
以上です。解決法をご存知の方がいらっしゃれば、アドバイスお願い致します。
CentOS
215 :
login:Penguin :2010/10/25(月) 08:03:24 ID:gZnkNs2+
217 :
login:Penguin :2010/10/25(月) 21:34:14 ID:drc4urq+
218 :
login:Penguin :2010/12/30(木) 12:04:21 ID:JxXO22vt
プログラム板から誘導されてきました
apacheプロジェクトやGoogle CodeのSubversionサーバみたいに
http://server/repo/trunk だとanonymous チェックアウト化、コミット不可
https://server/repo/trunk だと認証要かつコミット可
ってどうやって構成するんでしょう?
Webサーバーはapacheだと思うんですが、パスが同じなので<Location>ディレクティブ
では役に立たなさそうだし、URL rewriteのようなへんてこなことをしているようにも見えないし・・・
httpとhttpsで独立して設定できるんだからそれぞれを希望するように設定すればいいだけ
>>219 VirtualHostを使うということでしょうか?
221 :
login:Penguin :2010/12/30(木) 14:58:57 ID:zIYq0qFA
<VirtualHost なんたら:80> GET PROPFIND OPTIONSあたりのメソッドだけ許可 DAV設定 </VirtualHost> <VirtualHost なんたら:443> 証明書の設定 DAV設定 </VirtualHost> みたいなイメージ
222 :
218 :2010/12/30(木) 16:59:29 ID:JxXO22vt
223 :
sage :2011/02/01(火) 18:59:25 ID:0L2n73UN
初歩的な質問ですが FSFSが何の略であるかご存知の方教えて下さい
filesystemfilesystem
公式のドキュメント見ても何の略か書かれてないっぽい?
226 :
223 :2011/02/02(水) 08:55:16 ID:hKv2HLz0
>>225 そうなんですよ
大した話ではないのですが気になって
FSfs is not fsFS
229 :
223 :2011/02/07(月) 10:25:09 ID:qzDo/F+u
>> 227 情報ありがとうございます やはりはっきりしないんですね
subversionで既存のプロジェクトを管理できるように検討しているのですが以下のような場合どうすればいいのでしょうか? ・ログファイルとプログラムファイルが管理したいディレクトリ以下にある public_html/ log/ library/ ・public_html/内の画像用ディレクトリ(img/)はsubversionで管理する必要はないがaddする都度、除外するのが面倒 プロジェクトのディレクトリ構造についてご教示お願いいたいます。
>>230 無視したいディレクトリをリポジトリから削除した後に
そのディレクトリに対してsvn:ignoreプロパティを設定してコミット
>>231 ありがとうございます
プロパティで設定すればいいのですね
233 :
login:Penguin :2011/08/06(土) 13:44:53.79 ID:uWyitnRi
GITをインストしようと、wiki見てたんだけど、CVSとかSubversionは酷い言われようだね。 >CVSを「悪い見本」とする。設計上のことで確信が持てない場合は、CVSと逆の決断をする。リーナスは冗談めかして以下のように語っている。 > >“カーネルメンテナンスの最初の10年間、僕らは文字通りtarボールとパッチを使っていた。 >CVSよりもずっと優れたソース管理システムさ。僕は営利企業 ( トランスメタ[24]) でCVSを7年間使わされたことで、 >CVSを強烈に憎むようになった。 > >CVSを強烈に憎んでいると言う時には、このことも言っておかなくちゃいけないね。 >観衆の中にSVN(Subversion)のユーザがいるなら、この場から去ったほうがいいかもしれない。 > >僕がCVSを強烈に嫌悪しているということは、僕がSubversionが史上最大の無意味なプロジェクトであると思っていることも意味しているんだ。 >Subversionのしばらくのスローガンは‘ちゃんとCVSをやる’とかそんなものだったよね。 >そんなスローガンから始めたら、どこにも辿りつけないよ。CVSをちゃんとやるなんて不可能なのさ。
一口に「wiki」と言ってもたくさんありますが。
カードの認証に待たされるとかそういうごく個人的な視点で ひとつの側面だけを見て銀行口座のシステムを憎む人もいる。 多くの人にとってそれが広く普及して使われているにも関わらず、だ。
>>233 自分を優位に見せるために競合をこき下ろす文化だからな
情報をそのまま鵜呑みにするわけにはいかんだろw
そりゃ自分の用途に合わなかったってだけの理由で「史上最大の無意味なプロジェクト」とか 平気で言えるくらいだからな
マージした後ヒストリーみるとMってなってるけどマージ元がどこかはわからない?
いまどきsubversionを使っているおとこの人って。。。
--reintegrateが有るのと無いのとで何がどう変わるの?
241 :
login:Penguin :2012/03/09(金) 16:16:58.95 ID:W/bV6aQ9
いまどきsubversionを使っているおとこの人って。。。
なにが言いたいのかわからんけど
いまどきsubversionを使っているおとこの人って。。。
244 :
login:Penguin :2012/10/17(水) 01:43:29.44 ID:4VOoz/IX
SVK使ってる奴、居るか?
前に SVK を使ってたけど、 最近また必要になって使おうと思ったけどなんかダメだったので (Subversionのバージョンに追いついてないっぽい?SVKはもう更新されないのかしらん) 代わりに git-svn を使って、gitインタフェース経由でアクセスすることにした。 それ以来、git派に転向。
246 :
login:Penguin :2012/10/17(水) 21:10:46.97 ID:ulMUx+cU
Bazaarも終了したよね
gitって多言語対応?svn はその一点でつかっている。
249 :
login:Penguin :2012/11/28(水) 23:58:14.51 ID:mpduPz2r
いまどきsubversionを使っているおとこの人って。。。
>>248 Mercurial(hg)じゃあかんの?
基本的なことで申し訳ないんですが リポジトリが破損しているかチェックするコマンド等はありませんか?
>>252 早い返信、ありがとうございます。
verifyした結果、破損はなくて大丈夫そうです