subversion バージョン管理【サブバージョン】
■ このスレッドは過去ログ倉庫に格納されています
バージョン管理システム subversionについて語ろう。
バージョン管理システムの一つにCVSがあるが、ディレクトリの移動の管理や
ネットワーク対応などでやや難がある。
これらCVSの問題点を解決すべく開発されているのがSubversionである。
オープンソースソフトウェアの開発においてはCVSが多く使われているが、
Subversionを利用するオープンソースプロジェクトも急速に増えている。 今日みかけたsubversionの本で、
バックアップソフトsubversionと謳っている本があって萎えた。 重複ではないけど、Linux 板でやる必要なくね? ちょっと話題を変えて再利用・・・って思いっきりソフト名入ってるんですね。
現在使用(しようとしている)のは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))
ということで、何か情報をお持ちの方がいらっしゃればアドバイスをいただければ幸いです。よろしくお願いします。
また、必要な情報などありましたらご指摘ください。
>>10
コマンドラインからバッチを起動しています(現在はタスクで起動時に実行)
>>9にも書いたとおり、「file:///〜」は通っているので、多分大丈夫だとは思うのですが……
確認する方法、ご存知でしょうか? Apacheをインストールしなさい。
Apacheをインストールするのが正しい方法なので躊躇ってはいけない。 >>11
>>>9にも書いたとおり、「file:///〜」は通っているので、多分大丈夫だとは思うのですが……
subversionがローカルのファイルを直接読んでいるので何の参考にもなりません。
file:///a.htmlがWebサーバを通っていないのと一緒。 >>14
……ごめんなさい、当たりでした(T_T) subversionって、ローカルでアクセスするだけならsvnserve立ち上がってる必要は無いんですね。
で、どうもタスクによる指定では上手く動いてくれないので、vectorからサービス化のフリーウェア拾ってきてサービスにしてみたところ、無事に動きました。
ありがとうございました。 subversion - バックアップツール
とかいう本が出てたけど。。。どうなの? まぁ、そういう使い方しても法律に触れるわけではないが...。
タイトルを見る限り、決してオススメできないな。 amazonで "Subversion公式ガイド" の訳者上平氏の本の紹介文を見てみたが
こっちもバックアップツールって書いてあるな。
http://www.amazon.co.jp/o/ASIN/4798013730 ファイルごとのバージョン管理が出来ないのは仕様ですか? >>22
ファイルごと別々にcommitするか、CVS/RCS使え。 >>22
一遍、窓の無い壁が軟らかい部屋のある病院で見てもらえ。 >>23
そちらも検討してみるですよ。ありがとう。
>>24
日本語でおk >>24じゃないけど
ヤバイ患者を扱う精神病院ってのは
飛び降り防止の為に窓がなかったり、
ぶつかってケガ/死ぬのを防ぐ為に壁がやわらかくなってたりするらしいよ。
前テレビで見た。
ねー、subversionって前のリビジョンがいらなくなっても消すこととかできないよね?
例えばリビジョン1のときに1Gのファイルをcommitして、次のリビジョンでそれをdeleteしたとするじゃん。それでもリポジトリのサーバの方にはその1Gのファイルは残ってしまうわけだよね…。
もしくはもう昔のバージョン情報はいらなくて、HDD削減のために昔のバージョン情報を消したいとかそういう使い方はできないのかな? >>30
dumpしてダンプファイルを編集。
その後loadすればいい。
それ以外の方法は無い。 >>31,32
なるほど。確かにそれなら消える罠
でも例えばそれでリビジョン1を消したとして、ローカルコピーの方からリビジョン1を参照しようとした場合とかってsubversionの予期せぬエラーみたいにならないかな? そういうのは、昔のバージョン情報がいる、って言うんじゃないかな? svnのクライアントコマンドってブックマーク機能ある? 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
うぉ!なんて親切ちゃんなんだ!今度からそっちで聞きます。 英会話の独学してたら急に気になったんだけど、Subversionて英語発音だとサッバージョンになる? ここはsvn上のソフトのエラー報告とかも出きるの?
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"
それは管理方針の問題だから駄目ではない。
まともな管理者が利点と欠点を理解して
それを選択したのならきっとそれがベストな方法だ。 全部自分が個人としてやってたことなのですが、
自分のプロジェクトで、今まで1つのSVNディレクトリで管理してたのですが、
管理するプロジェクトが1つ増えたので、同じディレクトリに追加したところ、
チェックアウトしてみると、2つのプロジェクトが混ざって(一緒になって)
チェックアウトされてしまうようになりました。そこで現在は、SVNディレクトリを
2つにわけ直してやってます。ですが、CVSだとCVSROOTは1つで済むところ、
SVNだとディレクトリを分ければならない、というのはちょっと不便な感じです。
CVSROOTっていうのは環境変数のこと?
上の方法で import しているなら、
$ svn co file:///home/hoge/svn/prj001
とやれば prj001 がチェックアウトできるのでは?
チェックアウトしたときにroot情報はワーキングコピーに
記録されるから環境変数を弄る必要は無い。
勘違いしてたらすまん。 svnserveで配信してるんだけど
一回パスワードとか入力して認証した場合、
かなり長い間ノーパスでアクセスできるよね?
この認証ってどこで管理してんの?
認証してる期間が長くてコワス Emacs で,ワーキングベースとワーキングコピーの内容を
ならべながら diff とって,「あ,ここはやっぱり
変更するべきじゃなかったから元に戻そう」という作業を
簡単にできるモードってありませんでしょうか?
svn-status-* コマンドは使っているのですが.
それ以外に何かあれば教えていただきたく. あ,ちなみに今は svn diff の結果を見ながらやってるんですが,
ウギャー!と発狂して発作的に svn revert してしまい
放心状態になることがあります.screen で分割してあれこれ
工夫はしてみるんですが,視認性が悪く・・・
Emacsタン!助けて! svkというのを使ってみたが、
これ使いにくいな。copyとかdiffとかで
オプションがsvnと違うので面倒。
でも履歴も含めてもって来る方法がこれしかないので、仕方ない・・・
>>60
ありがとう。
git-svn/hgsvn/bzr-svnとか色々あるのね。
結局、オプションに互換性があるわけでも無いから
苦労して、svk入れる必要はなかったかも・・・
お気に入りのbzrが対応してたのは知らなかったよ。 最近リポジトリへのアクセスがめちゃくちゃ遅いと思ったら、
クライアント側のIPアドレスが逆引きできてないだけだった・・・
プロバイダに連絡してすぐに直してもらったけど、
そういや sshd は UseDNS yes がデフォだったんだな。 ワーキングコピーの形式はバージョンによって
変わる可能性があるようだけど、リポジトリのほうは
そのままでも問題ないのかな?
たとえば 1.3 時代に作ったリポジトリ、
そのままずっと運用し続けているけど、
これからもクライアントのバージョンが
1.5, 1.6, ...., 3.1415 と上がっていても大丈夫なんだろうか。
とちょっと不安。 さっき大きめの更新を svn+ssh でコミットし始めて、
つけたログメッセージが気に入らなかったから
Ctrl+C で中断したんだけど、Broken pipe の表示と
ともにコミットされた旨の表示も。
本当にきちんとコミットされているんだろうか。なんか不安だ。
一応 svn update してみても何事も起こらないんだけど。
>>64
ログメッセージだけだったら後から幾らでも直せるのに え?そうなの?
ダンプして強引に修正とかじゃなくて? >>67 ちょ,おまww
質問してるのは俺だってば ワーキングコピーにはワーキングベースが入っていますよね.
つまりざっくりと容量が2倍になっているわけで,
とりあえず変更するつもりのものがないディレクトリに関しては
ワーキングベースにファイルそのものじゃなくてハッシュ値だけ
持っておくとかで容量を節約できればなぁと思うんですが,無理?
CoW 機能を持ったファイルシステムとかならもっと
うまくやれるのかもしれない. 一応その辺の話も出てはいるのか・・・
ワーキングベースのファイルを空ファイルにしておく
という work around は面白いな。
でも不用意にこれやると、リポジトリにめちゃくちゃな
差分がコミットされてしまう予感。 CentOS 5 で使える svk の rpm パッケージって無いでしょうか? >>48
厳密にはヴィジュアルヴェーシックになるよ 今日初めてsvn使ってみたのですが
svn addとかsvn moveとかいちいちやるのが面倒だと思いました
あるディレクトリ以下変更が加えられたファイルすべてを自動的に
commitする方法はないのでしょうか? Windows環境でtortoiseを1.5にしたら日本語フォルダにしていたリポトロジ
がリポトロジブラウザで参照できなくなりました。
コミットや差分は正常にできます。
日本語フォルダ(パス)で運用されているかたはご注意ください。 >>76
その変更ツリーのトップにいってコミットすれば
更新されたファイルを自動的にコミットしてくれますよ
>>80
あんたはまず「情報リテラシー」から勉強し直した方がいい。
リポトロジ?w >>82
それを言うなら情報が付かない只のリテラシーをなんとかすべきだろう
どっちかというと情報リテラシーに問題があるのは>>81だな >>82
すいません。
情報デリカシーから勉強してまいります。 Windowsで、作業コピーのファイルを移動する時には、
1.コピー先のフォルダが作業コピー内でaddなりcommitされている事を確認
2.コピー元のフォルダを開く
3.コピー先のフォルダを開く
4.コピーしたいファイルなりフォルダをマウス右ボタンでドラッグ&ドロップする
5.移動に関する小さいメニューダイアログが出るので一番上を選択する
6.コピー先のフォルダをコミットする このスレ、01-03はLinux板にあったのね。
古巣に舞い戻ってきたんだ。 UNIX板に置いてあると、どのスレもまともに機能しなくなるから 次スレ立ってないのに埋め始める馬鹿がいたから
避難先として誘導しただけ じゃあ仕事中のオレがリスクを背負いながら
元の巣に建てるよ ■■みんなでサイトつくろうぜ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使える人(プロジェクト共有しやすいので)
mod_dav_svn 経由だと
どれくらいのファイルサイズまでコミットできるんだろうか.
いつも失敗して結局 svn+ssh でコミットしている.
最初の import 以降の差分だけならもんだいないんだけど >>99
Apacheの設定の問題じゃないの?
最大リクエストサイズに上限が設定されてるとか。 俺はでっかいファイルのチェックアウトでも問題出るよ。
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]
なんなんだろうね。 ■ このスレッドは過去ログ倉庫に格納されています