トップページ⇒tech
1001コメント351KB

Subversion r13

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2010/10/10(日) 05:02:22
Subversionはフリーなオープンソースのバージョン管理システムです。

公式HP
Apache Subversion
http://subversion.apache.org/

Subversion によるバージョン管理
http://subversion.bluegate.org/

Version Control Systems Comparison
http://better-scm.berlios.de/comparison/comparison.html

前スレ
r12 http://hibari.2ch.net/test/read.cgi/tech/1254838551/
r11 http://pc12.2ch.net/test/read.cgi/tech/1230488758/
r10 http://pc11.2ch.net/test/read.cgi/tech/1215565366/
r9 http://pc11.2ch.net/test/read.cgi/tech/1202086238/
r8 http://pc11.2ch.net/test/read.cgi/tech/1192864879/
r7 http://pc11.2ch.net/test/read.cgi/tech/1180858500/
06 http://pc11.2ch.net/test/read.cgi/tech/1165892754/
05 http://pc8.2ch.net/test/read.cgi/tech/1145841405/
04 http://pc8.2ch.net/test/read.cgi/tech/1129642894/
03 http://pc8.2ch.net/test/read.cgi/linux/1100622362/
02 http://pc5.2ch.net/test/read.cgi/linux/1078609142/
01 http://pc.2ch.net/test/read.cgi/linux/1002355536/
0002デフォルトの名無しさん2010/10/10(日) 05:03:45
■文書
Subversionによるバージョン管理(日本語訳)
http://subversion.bluegate.org/
svnbook PDF版
http://psyto.s26.xrea.com/misc/svnbook/

Subversion批判に対する反論
http://subversion.bluegate.org/svn-anti-fud-ja.html
svn診断への反論
http://subversion.bluegate.org/undiagnosing-ja.txt
CVSユーザのためのSubversionガイド(wakatonoさん)
http://slashdot.jp/journal.pl?op=display&uid=12&id=200792
FSFS propaganda
http://arch.bluegate.org/pipermail/subversion-jp/2004-May/000087.html
TortoiseSVNユーザガイド
http://tortoisesvn.bluegate.org/Help/dailyuseguide.html

■Wiki
Subversionメモ
http://terai.s55.xrea.com/Subversion.html
Subversion(Saisse's Wiki):
http://www.saisse.jp/pukiwiki/pukiwiki.php?Subversion

■記事(ちょいと旧め)
http://www.atmarkit.co.jp/flinux/special/webdav/webdav03c.html
http://www.atmarkit.co.jp/flinux/special/webdav03/webdav02a.html
http://ukai.jp/debuan/2002w/subversion.txt
http://ukai.jp/Slides/2003/0521-lw2003/html/
http://ukai.jp/Articles/2003/uu-svn/
000332010/10/10(日) 05:15:58
このスレッドは2を超えました。
もう2getできないので、新しいスレッドを立ててくださいです。。。
0004デフォルトの名無しさん2010/10/10(日) 07:54:35
◆関連スレ
バージョン管理システムについて語るスレ7 [プログラム板]
http://hibari.2ch.net/test/read.cgi/tech/1283780922/

CVS 1.3 [UNIX板]
http://hibari.2ch.net/test/read.cgi/unix/1093611448/
CVS導入スレ〜 Rev.3 [プログラム板]
http://hibari.2ch.net/test/read.cgi/tech/1113141518/
subversion バージョン管理【サブバージョン】 [Linux板]
http://hibari.2ch.net/test/read.cgi/linux/1154701996/
Git 2 [プログラム板]
http://hibari.2ch.net/test/read.cgi/tech/1284467898/
【分散型バージョン管理】 Mercurial 【hg】 [プログラム板]
http://hibari.2ch.net/test/read.cgi/tech/1251208950/
【bzr】Bazaarでバージョン管理 Rev 2 [プログラム板]
http://hibari.2ch.net/test/read.cgi/tech/1265951333/
0005デフォルトの名無しさん2010/10/10(日) 22:38:17
いまどきsvnはねえな
0006デフォルトの名無しさん2010/10/10(日) 23:55:41
やっぱ、Git / Mercu / Baz のどれかかいな
0007デフォルトの名無しさん2010/10/10(日) 23:58:51
漢ならDarcs
0008デフォルトの名無しさん2010/10/11(月) 00:01:02
そういうことはバージョン管理スレでやれ。
000992010/10/11(月) 00:41:12
このスレッドは8を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
0010デフォルトの名無しさん2010/10/11(月) 01:37:26
断る
0011デフォルトの名無しさん2010/10/11(月) 10:46:09
Monotone
0012デフォルトの名無しさん2010/10/11(月) 21:29:19
Subversionを使ってプロジェクトを破綻させるためのTIPS
http://www.geekpage.jp/blog/?id=2007/10/24

利用するバージョン管理システムについてひたすら言い争う
既存のスクリプトなどの存在を全て忘れて何が何でもSubversionへ移行する
バックアップなんて気にしない、もしくは毎晩「svnadmin dump」
色々な言語のファイル名を混在させる
開発者は信用できない。Lockしまくる。無断で編集させない。コンフリクトを防ぐ。Lockしたまま旅行へ行く。ついでにsysadminも連れて行く
バージョン管理システムを直接使わせずに、それを使うスクリプトを作って使わせる
全開発者に自前プランチを与える。毎日ブランチをマージする担当者を雇う。
何でもレポジトリに放り込む。生成されるオブジェクトコード、preference file、自動生成ドキュメント、ISOイメージ、リリースtarball
ネットワークドライブを使う。サーバを使うのは難しすぎる。
スクリプトをHookしまくる。コミットする前にbuildしてテストして、成功して始めてcommitを許す。Post Commit:もう一回commitして、レポジトリ全体をdumpする。
レポジトリデータベースを直に編集してしまう。困ったらエディタでレポジトリを直接編集してしまえ!
0013デフォルトの名無しさん2010/10/12(火) 00:56:58
>コミットする前にbuildしてテストして、成功して始めてcommitを許す。
アタリマエの事をさも悪いことの様に言う馬鹿って始末に負えない
0014デフォルトの名無しさん2010/10/12(火) 01:20:58
それは「スクリプトをHookしまくる。」にかかってるんじゃね?
0015デフォルトの名無しさん2010/10/12(火) 01:25:26
>>13
落ち着け。そんなんだから凡ミスでハマるんだよ
0016デフォルトの名無しさん2010/10/12(火) 01:27:16
毎晩フルバックアップを取るとプロジェクトが破綻する理由がわからん
pdf見るとhotcopy使えってことらしいけど
dumpじゃダメな理由は一切書いてないみたいだし
0017デフォルトの名無しさん2010/10/12(火) 01:49:37
わざわざそんな重い処理しなくても、とはおもうね
0018デフォルトの名無しさん2010/10/12(火) 11:27:40
翻訳ヘタだね。原文のまま転載すりゃいいのに。
0019デフォルトの名無しさん2010/10/13(水) 21:25:34
post-commitが動かないんだけど、これってどうやって起動しているの?
0020デフォルトの名無しさん2010/10/13(水) 21:34:17
unixならexecv, WindowsならCreateProcess
0021デフォルトの名無しさん2010/10/13(水) 21:43:06
>>19
環境変数が空でpathが通ってないとか
0022デフォルトの名無しさん2010/10/13(水) 21:58:10
ありがとうです CentOS 上で試しています
どこにPATHが通っていればいいのですか?
0023デフォルトの名無しさん2010/10/14(木) 01:21:59
>>22
俺に聞かれても困る。使っているコマンドに必要なPATH通す必要ある、とか

そもそも「post-commitが動かない」とはどういう状況なのか
エラーメッセージやログ吐いてみるとか、単体で動かしたときは動くのか、とか
もう少し詳しく行ってくれたら、助言しやすいと思う
0024デフォルトの名無しさん2010/10/14(木) 01:39:01
いや
だれもお前には聞いてないぞ
0025デフォルトの名無しさん2010/10/14(木) 01:46:36
ユーザーの環境変数で動いてるわけじゃないから
>>19は混乱してるんじゃないかと思う。
svnserveかapacheなのかはっきりさせた方がいいのでは。
0026デフォルトの名無しさん2010/10/14(木) 22:09:02
もし、コマンドにパスが通っていないのが原因でフックが失敗するのであれば、
svnbook (の古い奴のミラーだが) に以下の注意書きに従うと良いよ。

ttp://discypus.jp/svnbook/svnbook_ja_html/ch05s02.html#svn.reposadmin.create.hooks
> セキュリティー上の理由で、Subversion リポジトリはフックスクリプトを
> 空の環境で実行します― つまり$PATH や %PATH%を含め、環境変数は全く
> 設定されない状態で実行します。このため多くの管理者は手でフック
> スクリプトを実行するとうまくいくのに、Subversion によって実行された
> ときにはうまくいかないことに困惑します。
> 環境変数を明示的に設定するか、実行するプログラムを
> 絶対パスで参照していることを確認してください。
0027デフォルトの名無しさん2010/10/14(木) 22:37:17
てか、その手のは大抵フルパスで記述するでしょ。
cronとかもフルパスで書くよね普通
0028デフォルトの名無しさん2010/10/15(金) 00:58:08
うるせーお前にとっての普通など知るか
0029デフォルトの名無しさん2010/10/21(木) 18:14:07
気がつくといつの間にか新しいWindowsバイナリの配布サイトが。
http://subversion.apache.org/packages.html
の一番下の
http://sourceforge.net/projects/win32svn/
というか
http://alagazam.net/

以前のバイナリに近くていい感じ。
ビルド能力を持た無いしょぼユーザーなのでとってもありがたい。
0030デフォルトの名無しさん2010/10/28(木) 23:43:38
>>29
おぉ、これ、イイな!当方もtigris.orgから無くなって困ってたところだ。
もうsvn終わりかな、と思ってたが、まだイケそうだな。感謝!
0031デフォルトの名無しさん2010/11/02(火) 20:16:09
てか
Subversionって、正直進化の余地があるの?
0032デフォルトの名無しさん2010/11/02(火) 21:11:09
>>31
無い
CVSの現状を見れば分かる
0033デフォルトの名無しさん2010/11/02(火) 21:13:39
>>31
あるだろうが!

俺があるって言ってんだからあるんだ!
0034デフォルトの名無しさん2010/11/02(火) 21:30:39
なんか友達がナウい環境を使ってたんだ
Tortoiseハードゲイ
ってツールを動かしていた
0035デフォルトの名無しさん2010/11/02(火) 22:46:05
FORTH
0036デフォルトの名無しさん2010/11/02(火) 23:42:52
で、何が進化するの?
0037デフォルトの名無しさん2010/11/03(水) 01:03:45
>>36
こんなんでいいかい?
http://subversion.jp/index.php?option=com_content&id=44:subversion-roadmap-2010-5
0038デフォルトの名無しさん2010/11/03(水) 04:06:35
短期的には、高速に、よりよく、より強く。

だとさ・・・
そんなの進化のうちに入らん
ハードゲイ的な要素は無いワケ?
0039デフォルトの名無しさん2010/11/03(水) 07:34:25
Tortoiseハードゲイからサブバージョン扱えるからサブバージョンに進化を求める必要ないよ
0040デフォルトの名無しさん2010/11/03(水) 13:29:47
プログラマ以外がどうしてもSVN使ってくれない…
何故必要なのかも含めて、丁寧に説明したんだが
気が付いたら共有フォルダに日付毎のフォルダ増やしてそこに置いててコミットしてない
なんでコミットしないの?と聞いたら「まだ作り途中だから」と返ってきた
完成品しかコミットしないならバージョン管理要らないだろ!
結論:そいつらがアホなだけなので全員クビにした
プロジェクトは停滞中
0041デフォルトの名無しさん2010/11/03(水) 13:35:47
完成してないものをコミットするなよ
0042デフォルトの名無しさん2010/11/03(水) 14:03:44
おまえらはコンパイル通らない状態でコミットされたらどうしてますか?
0043デフォルトの名無しさん2010/11/03(水) 14:35:25
git使えって言います
0044デフォルトの名無しさん2010/11/03(水) 14:50:34
>>42
コミットのフックでダンプしたバックアップからリカバリします
0045デフォルトの名無しさん2010/11/03(水) 14:58:10
>>41
ビルドが通らないことと完成してないことは、
言ってることが全然違うだろ。
0046デフォルトの名無しさん2010/11/03(水) 15:19:02
日付毎にフォルダ作る奴って何なの?知障なの?
0047デフォルトの名無しさん2010/11/03(水) 15:32:32
池沼に合わせてって場合もある。
0048デフォルトの名無しさん2010/11/03(水) 22:34:20
>>46
フォルダ作って・・・バックアップ取る気があるだけマシかもよ

ソース管理なんて必要ない
バックアップも必要ない
納品時に一式揃えればいいんデショ!
って人も稀にいるよ
0049デフォルトの名無しさん2010/11/04(木) 00:20:38
夏休みの宿題をぎりぎりになってやるタイプ?
0050デフォルトの名無しさん2010/11/04(木) 19:22:37
Subversionを多段に構成する方法に関して良いドキュメントなどは
ないでしょうか。

Subversion+Hudsonで管理されたとあるMavenプロジェクトの中の
子プロジェクト(学術分野です)の一つを担当することになりました。
我々のグループ内でも複数メンバーが共同作業で開発を行います。
そのためメンバー個々人が親プロジェクトのSubversionレポジトリを
直接読み書きするのではなく、内部でSubversionとHudsonを新たに
立て、普段の更新作業は内部レポジトリに対して行い、統合テストが
終わった適当な時点で内部レポジトリでの更新内容を親レポジトリに
Pushする運用を考えています。

このような運用方法に関してSubversionの設定方法や体験談などに
関して良いポインタがあれば教えていただけないでしょうか?
0051デフォルトの名無しさん2010/11/04(木) 19:36:55
>>50
> Pushする運用を考えています。

SubversionにPushなんてできないので、素直に分散型を使いましょう
分散型の運用については、こちらに行きましょう
http://hibari.2ch.net/test/read.cgi/tech/1283780922/
0052デフォルトの名無しさん2010/11/04(木) 19:51:18
>>51
ありがとうございました。そちらで聞いてみます。
元締めがSubversionなのは下請けとしてはどうしようもないので
何か上手い方法が見つかると良いのですが・・・
0053デフォルトの名無しさん2010/11/04(木) 22:40:00
>>52
最近の分散型はsubversionと連携できるものも多いみたいなので調べてみれ。
0054デフォルトの名無しさん2010/11/05(金) 00:53:05
git-svn
0055デフォルトの名無しさん2010/11/05(金) 01:00:56
どうせ月一とか週一の作業なんだろうし、親のワーキングディレクトリに子のエクスポートを上書きすりゃいいじゃん
0056デフォルトの名無しさん2010/11/06(土) 00:18:13
git-svnやbzr-svnとか方法いくつかあるとおもうぜ
0057デフォルトの名無しさん2010/11/11(木) 20:03:00
Win32のコマンドラインクライアント/TortoiseSVNで
$Id$や$Date$のタイムゾーンや日付フォーマットを変更する方法はありますか?
OS自体の設定はいじらない方向で。
TZやLANG環境変数は受け付けてくれないっぽい。
0058デフォルトの名無しさん2010/11/12(金) 02:46:23
あれってクライアントが付加してたんだ?
0059デフォルトの名無しさん2010/11/13(土) 22:15:34
>>57 LANGを気にするって事は、日付がUTF-8で付加されて困ってるの?、
$Data $でスペースの量を調整して曜日が付加されないようにすればいいんじゃね?
0060デフォルトの名無しさん2010/11/14(日) 00:13:31
日付フォーマットだと書いてるわけだからロカール周りだと思うけどね。
0061デフォルトの名無しさん2010/11/14(日) 03:06:36
もしかしてロケールのことか
0062デフォルトの名無しさん2010/11/14(日) 03:13:28
localeをロケールと言う人って何なの?
http://hibari.2ch.net/test/read.cgi/tech/1221941630/
0063デフォルトの名無しさん2010/11/14(日) 08:09:35
local lo'ukl
locale loukæ'l
0064デフォルトの名無しさん2010/11/14(日) 22:44:45
local $Id;
0065デフォルトの名無しさん2010/11/15(月) 23:19:27
TortoiseSVNで
日本語含むテキストファイルからパッチ作ると化けるのってどう対策すれば
0066デフォルトの名無しさん2010/11/15(月) 23:29:09
>>65
nkfかiconvを入れる。以上
0067デフォルトの名無しさん2010/11/19(金) 23:57:43
作ったパッチ自体は文字化けしてなかったと思う。
TortoiseUDiff/TortoiseMerge (だっけ?)が文字化けするようだから、
文字コードを自動判別するようなのに入れ替えれば回避できるかも。
0068デフォルトの名無しさん2010/11/20(土) 02:26:02
リビジョンって文字列とか強制的にUTF-8で埋め込むせいだろ
0069デフォルトの名無しさん2010/11/24(水) 15:28:23
TortoiseSVNであるファイルを修正する場合、
先にこういう修正をしたいんだというコメントを記述しておいて
コミットしようとしたときにそのコメントがエディットボックスに表示されるようにしたいんですが
そういうのって無理ですか?
0070デフォルトの名無しさん2010/11/24(水) 16:17:42
こういう修正をしたいんだというコメントをそのファイルに書いて、コミットする前に差分見て確認してってのはどう。
その作業順にしたい気持ちがあまり分からないけれど。
0071デフォルトの名無しさん2010/11/24(水) 16:32:55
作業前にこれからやる手順をまとめて一旦記述しておきたいことはあるだろう
0072デフォルトの名無しさん2010/11/24(水) 16:36:48
ざらにあるけど、コミットするときまでコメントは決まらないかな。
0073デフォルトの名無しさん2010/11/24(水) 16:44:38
言葉が足りなかった。
たとえばAという作業をしようと思ったけど、先にBという作業をコミットすることが結構あるから、
修正をはじめた時点で何をコミットするかは決定しないんだ。

あ、でもchangelistが有効な場面なのかな。使ったこと無いから使用感はわからないけど。
0074デフォルトの名無しさん2010/11/24(水) 18:26:15
素直にtracやredmineにタスク積めば
0075デフォルトの名無しさん2010/11/24(水) 18:27:38
>>69
とりあえず、commitダイアログを出して、
ログを書き込んどけば。
で、キャンセルすれば、入力履歴に
記憶されるので、あとで履歴から
選んだら。

commitを実行しなくても、履歴には
入力が保存される。便利。
0076デフォルトの名無しさん2010/11/24(水) 18:51:03
やることはタスクチケットに書いておくようにして、
テンプレートに refs ???? とか入れとけば、
コミットのタイミングで「あ、番号いくつだっけ?」と確認の
必要が生じて、そのときチケットに書いてある記録を見る。


0077デフォルトの名無しさん2010/11/24(水) 20:03:59
>>75
あまり量が多くなりすぎると破綻しそうだけど、よさそうです。

・個人用途でスクリプト修正
・テスト(という名の実運用)している間は放置
・後日別の修正を加える直前に前回分の修正をコミット

といった雑な使い方をしてる時に使いたかったんです。
ありがとうございます。
0078デフォルトの名無しさん2010/11/24(水) 22:19:27
>>77
しばらくリポジトリに接続できない状態なのに
修正やら追加やらが何度も発生して
コミット単位で枝番つけてコピーをとったりとかたまにある
0079デフォルトの名無しさん2010/11/24(水) 23:15:05
>>78
そういうときにはgitのようは分散系がいいんだろうけど、
しばらくリポジトリに接続できないときってどんなときなんでしょうか。
0080デフォルトの名無しさん2010/11/24(水) 23:28:06
現場で修正したときとか?
0081デフォルトの名無しさん2010/11/25(木) 01:26:22
Subversion 1.6.15 age
http://svn.haxx.se/dev/archive-2010-11/0475.shtml
0082デフォルトの名無しさん2010/11/25(木) 02:12:30
git いいよね
0083デフォルトの名無しさん2010/11/25(木) 09:17:49
手元でガシガシコミットマージできるのはいいね
0084デフォルトの名無しさん2010/11/25(木) 09:23:30
gitの何が良いの?TortoiseSVNを使っている人がgitを使いこなせるわけないでしょ
0085デフォルトの名無しさん2010/11/25(木) 10:02:05
じゃあ、hgかbzrにすれば?
0086デフォルトの名無しさん2010/11/25(木) 10:06:21
hg, bzrの何が良いの?TortoiseSVNを使っている人がhg, bzrを(ry
0087デフォルトの名無しさん2010/11/25(木) 10:08:30
じゃあ、TortoiseHgかTortoiseBzrに(ry
0088デフォルトの名無しさん2010/11/25(木) 21:11:03
>>84
そんなこと全然ないよ

TortoiseSVNばかり使っていて、TortoiseGitは当時使い物にならなかったので
思い切ってコマンドラインのgit使っているけど、
不便だと思っていたことがgitでかなり解決したし、
実は一部はSubversionでもできたのに知らなかったこともあった。

0089デフォルトの名無しさん2010/11/25(木) 21:11:45
gitを使いこなせてるわけじゃないな
スマンw
0090デフォルトの名無しさん2010/11/25(木) 22:29:57
時代はTortoiseハードゲイ
0091デフォルトの名無しさん2010/11/25(木) 22:40:29
思いついても言わないのも勇気
0092デフォルトの名無しさん2010/11/26(金) 00:15:54
フォ〜〜〜
0093デフォルトの名無しさん2010/11/26(金) 23:36:05
TortoiseハードゲイでSubversion
最強
フォ〜〜〜〜〜〜
0094デフォルトの名無しさん2010/11/27(土) 08:02:23
>>93
それじゃ馬鹿みたいだから、hgsubversionというのも言ってあげないと
0095デフォルトの名無しさん2010/11/27(土) 23:46:59
TortoiseSVN 1.6.12 age
http://tortoisesvn.net/node/410
0096デフォルトの名無しさん2010/11/28(日) 00:17:24
自分、今巻き添えを喰らって投稿禁止中なのですが、ちょうど外泊した場所でネット使えるので質問させてください。

自分のパソコンが手元にないので簡略化して質問させて頂きたいのですが、
fooユーザが/usr/local/apache2/conf/httpd.confをバージョン管理下に置いて、httpd.confを変更後、再起動、実験などを繰り返し
どの設定だとエラーが出たりダメなのかを管理したいと考えております。
この場合、httpd.confをimportして/home/foo/svnにcheckoutした場合、その中のhttpd.confを変更しcommitしても
/apache2/内の本体のhttpd.confは勿論何も変化はありませんが、自分が上で書いたようにhttpd.confをバージョン管理したい場合はどのようにすればいいのでしょうか?

作業コピー/svn/内のhttpd.confを/apache2/内に上書きするようなやり方になるのでしょうか?
また、/apache2/内のhttpd.conf本体をバージョン管理出来るのであればそのやり方を教えていただきたいのですが。
/apache2/内にcheckoutしようとしたらエラーが出て怒られました。

0097デフォルトの名無しさん2010/11/28(日) 00:40:54
>>96 権限がどうなってるのか知らんが、シンボリックリンク使えばいいんじゃね?
0098デフォルトの名無しさん2010/11/28(日) 00:54:24
チェックアウトするファイルがすでに存在するとエラーになるよ。
0099デフォルトの名無しさん2010/11/28(日) 01:11:06
>>97
今手元にないので分かりませんが、おそらく権限はroot権限でのデフォルトのままだと思います

同様になのですが、/home/foo/eclipse/eclipse.iniでもどのように管理すればいいのか分かりません。
httpd.confの場合はroot権限という壁がありますが、eclipse.iniの場合は所有ユーザー名は同じなのでまずはこういう場合の解決法が知りたいです。
上記のように/home/foo/eclipse/自体にcheckoutしようとするとエラーで怒られました。

こういう場合もシンボリックリンクで解決すればいいのでしょうか?
作業コピー内のeclipse.iniを/home/foo/eclipse/内のeclipse.iniに結びつけるということですよね?
何かでhttpd.confやphp.iniなどは全てバージョン管理するべきだと書かれていて自分もそうだと思い、やろうと思ったのですが思ったようにいかなくて
0100デフォルトの名無しさん2010/11/28(日) 01:13:18
>>99 エラーメッセージから原因を考えたりしないの?
0101デフォルトの名無しさん2010/11/28(日) 01:44:40
MakefileとかCapfileとか使って(一緒に版管理して)、たとえば
sudo make install
でしかるべき場所にしかるべき権限で置かれるようにする。
■ このスレッドは過去ログ倉庫に格納されています