1 名前:デフォルトの名無しさん mailto:sage [2008/12/29(月) 03:25:58 ] Subversionはフリーなオープンソースのバージョン管理システムです。 公式HP subversion.tigris.org subversion.tigris.org/ Subversion によるバージョン管理 subversion.bluegate.org/ subversion: Project Status subversion.tigris.org/project_status.html subversion: Subversion Links subversion.tigris.org/links.html Version Control Systems Comparison better-scm.berlios.de/comparison/comparison.html 前スレ r10 pc11.2ch.net/test/read.cgi/tech/1215565366/ r9 pc11.2ch.net/test/read.cgi/tech/1202086238/ r8 pc11.2ch.net/test/read.cgi/tech/1192864879/ r7 pc11.2ch.net/test/read.cgi/tech/1180858500/ 06 pc11.2ch.net/test/read.cgi/tech/1165892754/ 05 pc8.2ch.net/test/read.cgi/tech/1145841405/ 04 pc8.2ch.net/test/read.cgi/tech/1129642894/ 03 pc8.2ch.net/test/read.cgi/linux/1100622362/ 02 pc5.2ch.net/test/read.cgi/linux/1078609142/ 01 pc.2ch.net/test/read.cgi/linux/1002355536/
449 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 20:25:23 ] >>448 速度面はどうよ。 ブランチとか使ってないの?
450 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 20:31:31 ] たしかに普通に社内で仕事する分には別に svn で困ることってそんなに無いんだよな。 履歴管理しなきゃいけない程の修正だったらブランチ切るし、 そもそも大きい修正なら一人で作業しない場合も多いし。 単に流行ってるからって理由で git 採用、とかは当然ながら止めといたほうがいいわな。 ただ OSS 関係は軒並分散リポジトリに移行しつつあるから追随しとかないと 参加出来なくなりつつあるけど。
451 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 21:11:47 ] > 単に流行ってるからって理由で git 採用、とか いや全然流行ってねーしw
452 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 21:13:38 ] うちは、Linuxの設定ファイルの管理とか、ネットワーク的に断絶してる 外向きWebコンテンツの管理とかはMercurialで、プログラムのコードは 全部Subversionという使い分け。 自分の机以外で仕事のコードを書く事はほぼ皆無。 Mercurialは、難しくて使いにくいと他の社員から大不評をかっているので、 TortoiseHGの熟成をあと2年ぐらいは待ちたい感じ。
453 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 23:14:33 ] >>451 いや、流行ってるよ。 フリーでリポジトリ提供してるところで採用してるところ増えてるし github とか使ってる人多いしな。 仕事で使ってるって話は 2ch の専用スレぐらいでしか聞かんけど。
454 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 06:36:28 ] gitオワタ・・・ www.atmarkit.co.jp/news/200904/28/googlecode.html
455 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 09:32:36 ] google code自体があんまり流行ってないってのもあるがな。
456 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 10:07:28 ] >>454-455 んー確かに。 ソースコードホスティングでいえば、githubばかりが目立つね 規模はgoogle code projectがでかいんだろうし、流行という感じでもないから、 sourceforgeみたいに、長く枯れるまで続けていくんだろうけどさ。
457 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 13:03:52 ] >>454 gitは使えねえので絶対に採用しませんとはどこにも書いてないわけだが
458 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 23:06:34 ] >>457 前向きだな。w
459 名前:デフォルトの名無しさん mailto:sage [2009/05/03(日) 23:13:17 ] 何にしてもどこもかしこも分散型!って感じではあるな。 仕事関係は未だに CVS のところもあるというのに。
460 名前:デフォルトの名無しさん mailto:sage [2009/05/06(水) 17:21:13 ] >>449 通常ブランチはよほどのことが無い限りすぐ本家に戻る
461 名前:デフォルトの名無しさん mailto:sage [2009/05/07(木) 10:19:06 ] >>447 うちは持ち出し厳禁だし、ノートの持ち込みも入り口で名前書かされるし 出入りでカバンを簡単にチェックされるんで、svk使って持ち出しとかは出来ないんだよね
462 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 00:29:33 ] ネットワーク上に、新しいTortoiseSVNと古いTortoiseSVNを使うPCが 混在しても大丈夫でしょうか?リポジトリの作成を古いバージョンで 行えばよいように思いますがどうでしょうか?
463 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 00:34:17 ] >>462 メジャーバージョンが全部同じなら(全部 1.minor.patch なら)、効率は悪いけど 動作はすることになってる。 subversion.tigris.org/hacking.html#release-numbering
464 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 02:26:17 ] 2年ほど前に切ったブランチで開発し続けてたものをいきなりトランクにマージしろと言われました そのブランチとトランクはもはや別のプログラムと言っていいほど違うものになってるんですが大丈夫なんですかね… なんかコマンド打つのも怖いのですが
465 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 02:31:22 ] >>464 ↓こっちのがいいんじゃね? svn mv trunk branches/dead-trunk svn mv branches/active trunk
466 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 02:42:54 ] >>465 その方が良いですね 交渉してみます ありがとうございました
467 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 07:09:44 ] おまいら全部コマンドうちなの? 亀使わないの?
468 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 08:10:46 ] 亀以外にもフロントエンドは色々あるわけだし、 ここで話するときは共通言語のコマンドで書くってだけの話じゃね?
469 名前:デフォルトの名無しさん [2009/05/08(金) 16:49:02 ] 特定のファイルをリポジトリから完全に削除ってdumpを使って出来るじゃないですか? で、ある特定の日付以前に削除されたファイルを完全削除して掃除ってできますか? cronとかで毎日掃除して、無駄な容量の増加を防止するとか
470 名前:デフォルトの名無しさん mailto:sage [2009/05/08(金) 21:44:34 ] >>469 削除したブランチを消去するフィルターが欲しいなあ
471 名前:デフォルトの名無しさん [2009/05/10(日) 13:45:06 ] TortoiseSVN 1.6.2 age https://sourceforge.net/project/shownotes.php?release_id=681520
472 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 14:19:20 ] >>471 - BUG: Error message about non-LF commit messages when using messages with non-ASCII text. (Stefan) わーい、直った。
473 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 15:09:03 ] 結局TortoiseSVN側での対応か。 本家のtrunk(r37666)では未だエラーになる。
474 名前:デフォルトの名無しさん mailto:sage [2009/05/10(日) 16:01:36 ] >>473 TortoiseSVNの開発者に感謝するよ。 でもこの問題ってdump/loadは影響しないのかな?
475 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 13:54:56 ] 1.6.2って何かおかしくねえ・・・・? 同僚含めてちゃんとインストール出来ないんだけど・・・ 修復セットアップしたら何とか入ったけど言語パックはどうやっても入らない
476 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 13:55:56 ] 何の問題もなく入ったけど、、、ってx64版だし参考にはならんか
477 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 14:06:46 ] うちでは、1.6.1をアンインストールして1.5.9を入れたところ、 言語パックを入れてもLanguageのリストにEnglishしか存在しない。 これも >>475 と関係あるのかな?
478 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 14:13:16 ] うちは1.6.2にしたらエクスプローラが死ぬようになったから NightlyBuild版に戻したよ。
479 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 14:20:33 ] こっちも何かインストールが上手く行かなかったけど、 アンインストールして綺麗にしてからやったら上手く行った。
480 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 16:38:20 ] >>477 Languageフォルダーを削除してから、もう一度インストールしてみて。
481 名前:21 mailto:sage [2009/05/11(月) 17:36:09 ] 本家の 1.6.2 はリリースされないの?
482 名前:デフォルトの名無しさん mailto:sage [2009/05/11(月) 21:35:09 ] リリースされました。 User-visible changes: * vastly improve memory usage with 'svn merge' (issue #3393) * make default depth for merge 'infinity' (r37156) * make 'status --quiet' show tree conflicts (issue #3396) * allow '--set-depth infinity' to expand shallow subtrees (r37169) * return an error if attempting to reintegrate from/to the repo root (r37385) * don't store bogus mergeinfo for '--ignore-ancestry', foreign merges (r37333) * don't allow merge of difference between two repos (r37519) * avoid potential segfault with subtree mergeinfo (r36613, -15, -31, -41) * recommend sqlite 3.6.13 (r37245) * avoid unnecessary server query for implicit mergeinfo (r36509) * avoid unnecessary server query during reverse merges (r36527) * set depth=infinity on 'svn add' items with restricted depth (r37607) * fixed: commit log message template missing paths (issue #3399) * fixed: segfault on merge with servers < 1.6 (r37363, -67, -68, -79) * fixed: repeat merge failures with non-inheritable mergeinfo (issue #3392) * fixed: another memory leak when performing mergeinfo-aware merges (r37398) * fixed: incorrect mergeinfo on children of shallow merges (issue #3407) * fixed: pool lifetime issues in the BDB backend (r37137) Developer-visible changes: * don't fail if an embedding app has already initialized SQLite (issue #3387) * resolve naming collisions with static stat() function in svnserve (r37527) * fix an expectation for a failing dirent windows test (r37121)
483 名前:477 mailto:sage [2009/05/12(火) 10:12:35 ] >>480 いちどLanguageフォルダーを削除してから言語パックを入れたところ English以外もリストに表示され、選択することができました! ありがとうございました。
484 名前:デフォルトの名無しさん [2009/05/16(土) 13:11:05 ] ドライブの中にいろんなところからチェックアウトしたワーキングコピーが ちらばっているのだけど,どこから何をチェックアウトしたのか ドライブ全体をくまなく探索して列挙してくれるようなツールってない? 「お前,随分前にチェックアウトして変更点あるのにコミットしてない ワーキングコピーがあるよ?」とか警告してほしい. WindowsでTortoiseSVNを動かしていればそのキャッシュには すべてのワーキングコピーの所在に関する情報が含まれて いるんだろうけど,そこにアクセスする手段がない. TortoiseCacheにAPIが実装されていればなぁ・・・
485 名前:デフォルトの名無しさん [2009/05/16(土) 13:42:01 ] TortoiseSVN でローカルのファイルシステムにリポジトリを作るとき 作成するリポジトリのフォーマットのバージョンを指定することって できないでしょうか. 互換性のためひとつ前のバージョンのフォーマットで リポジトリを作りたいのですが,昔のTortoiseSVNを インストールするしかないでしょうか.
486 名前:デフォルトの名無しさん mailto:sage [2009/05/16(土) 17:03:14 ] >>484 .svnで検索 アイコンオーバーレイの範囲も狭められるからチェックアウトするフォルダぐらい決めておけよ。
487 名前:デフォルトの名無しさん [2009/05/16(土) 19:46:46 ] >>486 まぁ基本的にはチェックアウトするフォルダは限定するよな. それはそうなんだけど, svn:externals でチェックアウトしたワーキングコピーに 修正をかけても,その上位のワーキングコピーの オーバーレイアイコンには反映されないので,忘れてしまう.
488 名前:デフォルトの名無しさん mailto:sage [2009/05/16(土) 20:37:47 ] >>487 externalsのフォルダーもオーバーレイアイコンは反映されるけど? コミット時もグレイ化された状態で一覧にも出るけど。 1.6.2です。
489 名前:デフォルトの名無しさん [2009/05/16(土) 20:43:32 ] >>488 上の階層にまではそれが伝播しないんじゃない? とりあえず最新のTortoiseSVNにしてみるか.
490 名前:デフォルトの名無しさん mailto:sage [2009/05/16(土) 21:03:12 ] >>489 ルートの方へのexternalsはコミット時に出るかはやったこと無いけど、サブディリクトリ方向には伝播して表示する。 オーバーレイするディリクトリのマスクから外れたワーキングコピーは伝播しなかったと思う。 c:\working* のように*は入ってる?
491 名前:デフォルトの名無しさん [2009/05/26(火) 04:32:34 ] TortoiseSVN 1.6.2 sambaの共有フォルダ上で使用しています。 変更ファイルに対して"元に戻す"を実行しても「ファイルリストは空です」になってしまい元に戻せません。 ググって blog.longkey1.net/archives/0000000656 等も試したのですがダメです。 ローカルドライブであれば問題ありませんので原因はsambaでの設定かなと考えています。 ("SVN更新"、"SVNコミット"は問題なく利用できています。) 何か情報をお持ちの方ヒントを下さい。 よろしくお願いします。
492 名前:491 mailto:sage [2009/05/26(火) 04:46:40 ] あ、あああ・・ 「変更ファイルに対して」ではなくて「変更ファイルのフォルダに対して」、"元に戻す"で対象ファイルが 表示され無事元に戻すことができました。 お騒がせしてすいませんでしたm(_ _)m #1.6.2で仕様変更されたんですかね・・・Orz
493 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 05:50:47 ] svn moveのオプションなんですが、hgやらbzrにある --afterみたいなオプションは無いですか? WC内でmvコマンドを使って実際に移動させてから svn moveする、という使い方がしたいわけです。 というのも、svn moveはcopy+deleteなので、 WC内ファイルのハードリンク情報が消えてしまうからなんです。 なんかいい方法ないでしょうか?
494 名前:デフォルトの名無しさん [2009/05/26(火) 11:55:29 ] cp svn mv cp
495 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 13:31:04 ] Subversionのマルチユーザー(というか複数人で使う)運用についてお聞きします。 ssh+svnで運用したいのですが、リポジトリにコミットするときのユーザーが問題です。 ユーザーsvn_userさんを作って svn+ssh://example/test-repo/trunk などでアクセスすると思うのですが、 svn_userさんに.ssh/authorized_keys などを適切に設定し、他の人もsshでログインできるようにした状態で、 svn_userさんでアクセスすると、他の人がコミットしたユーザーも全てsvn_userさんだけになってしまいます。 複数人で使う場合に、コミットするユーザーを分けようとすると、 これはコミットする人ごとにユーザーを作ってsshでログインできるようにして(.ssh/authorized_keysなどを適切に設定)、 コミットしなければならないということでしょうか? Mercurialなどではローカルでユーザー名を設定して、 ユーザーhgを作って、 ssh://hg@example.com/hg-test-repo などのようにアクセスしてコミットとpushするだけで、マルチユーザーで使えるのですが…。 どのようにしたものなのでしょうか?
496 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 13:48:26 ] >>495 svn_userのauthorized_keysで command="/usr/bin/svnserve -t -r /repository/dir" --tunnel-user userA ......公開鍵A command="/usr/bin/svnserve -t -r /repository/dir" --tunnel-user userB ......公開鍵B って感じで認証鍵で振り分けるのはどうよ。これなら一つのユーザで済むと思う。
497 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 13:49:53 ] >>496 でダブルクォーテーションの括り方がおかしかった、スマソ。
498 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 15:19:53 ] >>496 ありがとう! それらのキーワードでぐぐったら、けっこうドキュメントがでてきました。 svnserve, 専用サーバ subversion.bluegate.org/doc/ch06s03.html やりたかったことができそうです。試してみたいと思います。
499 名前:493 mailto:sage [2009/05/26(火) 16:10:26 ] >>494 すいません。ちょっと意味が分からないので詳細教えてください。 最初にコピーするというのは、mvする前にどっかに避難させるということでしょうか? cpしたらリンクが消えてしまうので一緒の気がするのですが、違いますでしょうか?
500 名前:495 mailto:sage [2009/05/26(火) 16:49:59 ] authorized_keys で以下のように書くことで、svn_userのみで鍵に応じてfoobarさんで 無事にコミットできるようになりました。 command="svnserve -t --tunnel-user=foobar" (以降公開鍵) そこで、つまづいてしまったのですが、 上記方法だと、svn_userでsshでシェルログインして svnadmin create などもできなくなってしまいます。 もし、sshシェルアクセスもさせたい場合は別の鍵を追加するしかないのでしょうか?
501 名前:デフォルトの名無しさん mailto:sage [2009/05/26(火) 19:32:52 ] >>500 そう、別鍵を用意する。
502 名前:デフォルトの名無しさん mailto:sage [2009/06/01(月) 10:18:20 ] TortoiseSVNとEclipseのsubversiveを併用してるんだけど、 subversiveでチェックアウトしてる作業コピーをTortoiseSVNでいじった後に、subversiveでコミットしようとしたらバージョン違いがどうたらってエラーが出た。 今までバージョンがあるのはリポジトリだけだと思ってたんだが、作業コピーにもバージョンってあるのな。 でもsubversiveのためにTortoiseSVNのバージョン下げるとかめんどい・・・。
503 名前:デフォルトの名無しさん mailto:sage [2009/06/01(月) 12:27:14 ] >>502 Subversiveは捨てて、Subclipseに移ればいいよ。 SubclipseはSubversion1.6に対応している。 ttp://subclipse.tigris.org/
504 名前:デフォルトの名無しさん mailto:sage [2009/06/01(月) 13:13:17 ] Subversiveはまだ開発途上です。 いずれSubclipseが主流になる日が来るかもしれません。 でも今は未だそのときではありません。 Subversiveが成長するまで温かく見守ってあげましょう。
505 名前:デフォルトの名無しさん mailto:sage [2009/06/01(月) 13:14:07 ] Subversiveはまだ開発途上です。 いずれSubclipseの座を奪って主流になる日が来るかもしれません。 でも今は未だそのときではありません。 Subversiveが成長するまで温かく見守ってあげましょう。
506 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 03:03:32 ] 最近 subversive は標準になるなる詐欺なんじゃないかと思うときがあるよw
507 名前:デフォルトの名無しさん mailto:sage [2009/06/03(水) 11:04:16 ] SVK の代わりに何を使えばいいの? lists.bestpractical.com/pipermail/svk-devel/2009-May/001224.html
508 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 03:12:57 ] >>507 今年中にはbzr-svnが実用レベルになる。
509 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 06:04:56 ] bzrはやるやる詐欺
510 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 10:05:05 ] >>509 色々手を出しすぎて完成度が低かったけど、bzr2.0に向けて着々と 完成度上がってきてるよ。 本当にbzr-svnがsvk以上になるかどうかはさておき。
511 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 10:13:18 ] 1.1の頃に作ったリポジトリ(途中で一回bdb->fsfsに移行した)をダンプして 1.5で作り直したら800MB->500MBになったのだが、ここまでになるとは 思っていなかったので驚いた。 おまいらはメジャーバージョンが上がったらdump/create/loadしてる? それともsvnadmin upgradeで誤魔化してる?
512 名前:デフォルトの名無しさん mailto:sage [2009/06/05(金) 23:56:47 ] ひとつのリポジトリでリビジョン番号が約 25000、 総容量(fsfs)が 60GB くらいあるので、 dump/load なんてやる根性ないっス。
513 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 00:19:06 ] >>512 何のリポジトリっすかww
514 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 00:28:57 ] >>512 画像や音声データが入ってるな。ゲームの開発か?
515 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 02:23:06 ] ドキュメントの版管理やったらギガは結構すぐ行くな ExcelとかPowerPointで10Mくらいあるのガンガン更新したりするし
516 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 16:14:58 ] 512でつ。 商用ソフトの開発でつ。 画像なんかは入っていません。 純粋にVC++のソースと、そのときのコンパイル済みバイナリ(*.exe/*.dll)、 それからインポートライブラリです。 インポートライブラリが大きいといえば確かに大きいですが、 これをコミットするのはモジュールI/Fが変わったときだけなので、 総コミット数からみると何十回かに一回くらいじゃないかと思います。 6年前にCVSでSCM化したときから始まっています。 ちなみにリビジョン1のコミット日時は 2003-03-31 10:55:20 +0900 とあります。 最も古いソースは10年ほどになりますか。 商品自体はもっと前からありますが、これ以前は私は他の事業部にいたので、 「このソースは私のローカルが最新」なんて世界だったそうです。
517 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 16:21:21 ] >「このソースは私のローカルが最新」なんて世界だったそうです。 SCM化してるにもかかわらずこんなことのたまう人がたまに居たりして 頭痛くなるんだよねw
518 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 16:46:58 ] >>516 金曜日に帰宅する前にdump/loadを自動で仕掛けておけば、翌週には リポジトリがスリムになっているだろうな。是非やってみてくれ。
519 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 19:21:22 ] 6年分とか怖くて出来ないな…。
520 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 19:30:14 ] > はてながgitに移行できた、たった1つの方法。 > 2008/04にSVNリポジトリが壊れた! > リビジョン35000くらいのリポジトリ破壊! > おわたおわたー! デブサミ2009「株式会社はてなの開発戦略」講演メモ - RX-7乗りの適当な日々 d.hatena.ne.jp/rx7/20090212/p1 はてなみたく次に乗り換えるのはぶっこわれた時、なんてならんようにな…
521 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 20:50:56 ] うちもリビジョン3000くらいのリポジトリが先月破損したけど 水銀と天秤に掛けた上で結局svnで再構築した
522 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 20:56:51 ] 使い始めてまもないんだけど 時々壊れるものなん?
523 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 21:30:45 ] どんなツールでも壊れることはあるよ 俺はCVSとVSSでも壊れたの見たことある
524 名前:デフォルトの名無しさん mailto:sage [2009/06/06(土) 21:35:39 ] >>520 みたいにHDDが壊れたとかはsvnのせいじゃないしなあ。 ところでこの記事に、「gitはブランチの作成が一瞬」ってあるけど、svnもそうだよな。 作業コピーの切り替えのことかな?
525 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 02:11:53 ] おまいらdumpもろくにしないのか?一度フルで取っておけば、 後はそのリビジョンから部分的にdumpするだけでいいのに。 そして怖いっていうのが良く分からん。 既存のリポジトリはそのまま温存しておいて、新規にリポジトリを作成して そこにloadすれば良いんだぞ。
526 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 02:42:48 ] 壊れるのが怖いならディスクにデータ書き込めない罠 何年も付けっぱなしのサーバでファイルが破損ってのはリポジトリに限らずあり得る話だし 特にバイナリファイルは
527 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 05:57:17 ] >>525-526 リポジトリが壊れるのが怖くてリポジトリのダンプを今度はバージョン管理下におくわけですね。わかります。
528 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 06:23:41 ] わかってねぇな
529 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 11:49:39 ] >>518 512でつ。 thx. 土日も害中三がコミットしてくるので、あらかじめアナウンスしとく必要があります。 来月には新しいバージョンをリリースするので、そのときにスケジュールとってやってみます。
530 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 12:08:34 ] dump/loadは使っていませんが、リポジトリのバックアップ自体はとっています。 fsfsなのをいいことに、毎晩、地理的に離れた場所にあるサーバにssh+rsyncしています。 まぁこれも、dumpで差分だけコピるようにすればはるかに効率的なんですが、 スクリプト書く手間が面倒だからズボラしているというのが正直なところです。 でも、その言い訳をするわけではありませんが、 dump/loadだとリビジョンが2万も3万もあるリポジトリを復旧するまで業務が止まってしまうので、 毎晩のrsyncに多少時間がかかっても、会社組織での運用という面ではこれもアリなのかなぁ...と。 rsync自体も今のところ1〜2時間で終わっているので、当分の間は十分に許容範囲です。
531 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 12:30:36 ] >>529 >>518 だが、やったら是非結果をレポートしてくれ。 一つ言っておくと、リポジトリを置いてあるマシン周辺のディスク容量に問題が 無ければ、毎晩リビジョンを2000ずつとか、一晩で終わりそうな分だけdump/load するというのもあり。これだとダウンタイムほぼ無しで行ける。 >>530 それでも良いかもね。ただし、特定のリビジョンが壊れているといけないので、 バックアップを取った後にsvnadmin verifyはかけておいた方がいいな。
532 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 13:07:11 ] >>531 色々thx. 来月、スケジュールを立ててやってみて、結果をご報告します。 その前にディスク容量を空けとかないと。(藁 svnadmin verifyまでは考えが及びませんでした。 リモートのサバ缶(うちの害中三)に伝えておきます。
533 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 16:33:00 ] >>527 ネタにもなってないし、言い回しは腐ってるしw
534 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 17:40:10 ] >>530 rsync使う場合、マスタのfsが壊れてそれに気づかずにバックアップ側にrsyncかけて バックアップまでこわしちゃう可能性があるから、やっぱり万が一に備えて時々 差分dumpを取って物理的に離れたストレージに保存する方がいいよ。
535 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 17:50:49 ] たまにLinuxのディス鶏なんか ぶっ壊れたisoがミラーにばらまかれて全米が泣いたりすることあるしな
536 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 17:53:44 ] でもはてながリポジトリのバックアップ取ってなかったってお笑いだよな。
537 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 18:07:23 ] 取ってないってか取れないだろうなリビ3万越えとか バージョン管理が目的じゃなくてバックアップすることが目的くらいの勢いになっちゃうわ
538 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 18:10:33 ] >>537 お前は今までのスレの流れを読んだ上でそんなことを言ってるのか? インクリメンタルバックアップを取れば良いだけの話だ。
539 名前:デフォルトの名無しさん [2009/06/07(日) 18:13:31 ] 実際バックアップ取ったことないだろ。 そんな簡単な話じゃないぞ。
540 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 18:14:31 ] 実際にやっているから言っているんだが。何がどう難しいか言ってみろ。
541 名前:デフォルトの名無しさん [2009/06/07(日) 18:28:45 ] インクリメントする元の過去の部分が壊れててもだれも気がつかない
542 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 18:31:36 ] >>541 ??? リポジトリの特定リビジョンが壊れていたらそもそもdumpに失敗するわけだが。
543 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 18:32:35 ] やったことない奴が会話に紛れこんでるってことか どっちかしらんが
544 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 18:35:29 ] 流れからしてsageてないやつが犯人
545 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 18:39:22 ] dumpする側じゃなくてマージする側だろ 最新版は取り出せても過去のものは取り出せなくなる
546 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 18:41:34 ] >>545 そんなものは運用の問題だろうが。 dumpしたファイルのmd5sumでも取っておけば済む話。
547 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 18:44:52 ] ダンプする側じゃないと何度言えば ダンプしたときは壊れて無くても ファイルを置いておけば壊れる可能性がある その壊れたものにマージしていったら過去の部分は壊れたまま そこが必要になって取り出してみるまで気がつかない
548 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 18:45:44 ] そして本体が破損してバックアップから戻そうとすると そっちも壊れていることが発覚して全米が泣くと
549 名前:デフォルトの名無しさん [2009/06/07(日) 18:46:55 ] ぶっちゃけ実務で必要なのって近1週間分くらいだからバックアップ取らないんだろはてなも ソースコード保存マニアなら、最古のコードまで保存したいんだろうけど
550 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 18:48:06 ] リポジトリじゃないけど、DBの差分バックアップで泣いたことは確かにあるわ。 バックアップの度にベリファイしてたらきりないし、結局トレードオフだよね。
551 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 18:48:54 ] >>547 だからdumpファイルのmd5sumを取ればいいと言ってるだろうが。 こんな簡単なことも考えつかないのか?
552 名前:デフォルトの名無しさん [2009/06/07(日) 18:49:50 ] まぁだからOracleもわざわざコールドバックアップなんてものをやるわけだから 結局フルバックアップしない限り、バックアップが完璧になることはないよ
553 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 18:51:18 ] >>551 意味ないでしょそれ比較しても 本当にdumpしてる?
554 名前:デフォルトの名無しさん [2009/06/07(日) 18:53:59 ] 壊れたファイルのmd5sum取っておいて あとで比較して一致したのでめでたしめでたしと壊れたファイルを保存するオチだな バックアップ後に試しにリストアしてみて本当に正しいかどうかチェックしてsum取らないと
555 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 18:54:00 ] >>553 だからどう意味が無いんだ? 定期的にmd5sumをチェックすれば > ダンプしたときは壊れて無くても > ファイルを置いておけば壊れる可能性がある という問題は完全に防げるだろうが。
556 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 19:02:39 ] >>554 dumpした直後にファイルが壊れるような信頼性の低いシステムを使うことが間違い。 > バックアップ後に試しにリストアしてみて本当に正しいかどうかチェックしてsum取らないと お前の言うような信頼性の低いシステムでは、そんなことをしても正当性を チェック出来ないぞ。
557 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 19:05:30 ] >>553 お前の使うシステムではdump直後にファイルが壊れてる確率がそんなに高いのか?
558 名前:名無し募集中。。。 [2009/06/07(日) 19:12:03 ] なんかもう人格否定じゃん
559 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 19:16:39 ] どこが人格否定なんだよ
560 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 19:20:00 ] システムの信頼性に疑問がないならそもそもバックアップいらないんじゃねみたいな
561 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 19:25:54 ] おまいら、頭を冷やせ 非現実的な極論ばかり言っても仕方ないだろ
562 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 19:37:41 ] 人のやり方を否定するより、 私はこうやってますよ。あなたの方法よりこんな点が優れてますよ。 って書いて欲しい
563 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 20:14:18 ] うちは hotcopy で毎日バックアップ取ってる(前7日分まで保持)。 dump/load は、Subversion のバージョンアップの際、 リポジトリフォーマットの互換がない場合にしか使わないなー。
564 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 20:17:34 ] >>563 リポジトリが大きすぎなければ、hotcopyが一番楽だよな。
565 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 20:22:39 ] dumpは運用としては現実的じゃないよね
566 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 20:25:32 ] うちはリポジトリ(9個ある)ごとに、svnadmin hotcopyして、svnadmin verifyして、tar.gz で圧縮して別ディスクに格納。これを最新10日分保存。 以上の作業を行うシェルスクリプトを、Hudsonで1日1回, 5:45から実行している。 スクリプトの実行時にエラーが発生したらメールで通知されるし、スクリプトが標準出力・標準エラー出力に表示した文字はすべてHudsonがログを保存してくれるので便利だ。
567 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 20:26:46 ] >>565 それはケースによるね。上で議論になっていた60GBもあるような 巨大なリポジトリだとhotcopyが非現実的になり得るわけだから。
568 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 20:44:01 ] 巨大リポジトリだとそれこそ過去の分は不必要だろうから はてなみたいに捨ててしまえばいいのさ
569 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 20:55:38 ] 論理が飛躍しすぎていて何を言っているのか分からん >>512 が関わっているようなリポジトリで過去の分が不必要だなんてことは無いだろ
570 名前:デフォルトの名無しさん mailto:sage [2009/06/07(日) 21:56:51 ] dump は、 rev0-rev1000 みたいに部分的に取ることもできるし、 --increment を使わないで古いリビジョンを捨てたdumpを取る 事もできる。 マスタが壊れたときには、 --increment を使わない「浅い」dumpを 復元して一時的に運用を続け、深いdumpを時間を掛けて復元すれば良い。 ・・・で、合ってる?
571 名前:デフォルトの名無しさん mailto:sage [2009/06/08(月) 05:26:56 ] subversionを捨てればいいんじゃないか、
572 名前:デフォルトの名無しさん mailto:sage [2009/06/09(火) 09:56:48 ] 必要な時だけ読めれば良いとか、そんな程度でしかないと思うけど
573 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 17:12:33 ] SVNのリポジトリは過去リビジョンのファイルは変化しないので、HOTCOPYを差分バックアップすれば済むと思うんだけど、どうかな
574 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 19:29:40 ] >>573 昔の部分が壊れた場合、差分バックアップのときに壊れた部分も差分として バックアップされない? その後、差分の中から壊れてない部分を抽出するのが面倒。 逆に、 dump と dump --incremental でまずいのは何?
575 名前:デフォルトの名無しさん mailto:sage [2009/06/14(日) 19:37:23 ] >>573 運用で避けられるし使わないことが多いと思うが、過去のリビジョンの プロパティを変更出来るので結局差分バックアップは完全ではないんだよな。 やっぱりhotcopyが一番楽かつ安全性が高いということになる。
576 名前:デフォルトの名無しさん mailto:sage [2009/06/15(月) 11:34:08 ] 結局、「大容量のファイルをいかにバックアップするか」という普通のバックアップの話になると思う。 毎月フル、毎週差分、毎日修正ファイルのみ、みたいな。
577 名前:デフォルトの名無しさん mailto:sage [2009/06/15(月) 17:55:53 ] svn のバージョンアップに強いのは dump? or hotcopy?
578 名前:デフォルトの名無しさん mailto:sage [2009/06/15(月) 18:05:02 ] >>577 当然dump。dump/loadは基本的にコミットログのリプレイだから。 リポジトリを完全にアップグレードするにはdumpするしかない。
579 名前:デフォルトの名無しさん mailto:sage [2009/06/16(火) 21:04:02 ] svn commit のときに changelist に含まれないものだけコミットする方法はありますか?
580 名前:デフォルトの名無しさん [2009/06/17(水) 17:11:30 ] subversionの運用について教えてください。 svn + apacheでmod_svnを使った運用を考えています。 リポジトリとプロジェクトの関係で2つの方法があると聞きました。 1.1リポジトリに対して複数のプロジェクトを管理 /home/svnにsvnadmin createして、配下にsvn importしていく。 りビジョンが通しで付くので1プロジェクトに対し一貫性がない。 svnadmin createが1回だけですむ。hookscriptを一度定義すればよい。 2.1リポジトリに1プロジェクト /home/svnの下にプロジェクトごとにsvnadmin create する。 リビジョンはプロジェクト単位で一貫性がある ただしプロジェクトが発生するたびにsvnadmin createする必要がある。 hookscriptなどをその都度用意する必要がある。 皆さんはどんな風に運用していますか? 設定は2で、1のように1リポジトリに複数という形式もありかなあと思っていますが、 実運用っぷりをきいてみたいです。
581 名前:デフォルトの名無しさん mailto:sage [2009/06/17(水) 17:26:00 ] 運用、運用って言うけど、 結局、どのくらいの頻度で新しいプロジェクトが立つかだけじゃないの? リビジョン番号の一貫性云々言うけど、 どうせ branch + trunk でごちゃごちゃになるし、 別にたいした問題だとは思わないけどね。
582 名前:デフォルトの名無しさん mailto:sage [2009/06/17(水) 18:15:17 ] >>580 1リポジトリで複数プロジェクトにしておけば、 あとは特定のディレクトリ以下を別リポジトリに独立させることができるよ。 ただし、ディレクトリ作成を独立したコミットにしておく必要がある。
583 名前:デフォルトの名無しさん mailto:sage [2009/06/17(水) 18:37:18 ] レポジトリのログを一覧して見たときに、 自然なまとまりになるであろうようにする。 それが俺ルール。
584 名前:デフォルトの名無しさん mailto:sage [2009/06/18(木) 11:16:40 ] リポジトリ vs レポジトリ 論争がまた始まりそうな予感
585 名前:デフォルトの名無しさん mailto:sage [2009/06/18(木) 11:26:13 ] あろうようにする
586 名前:デフォルトの名無しさん [2009/06/21(日) 23:50:40 ] TortoiseSVN 1.6.3 age https://sourceforge.net/project/shownotes.php?release_id=691197
587 名前:デフォルトの名無しさん mailto:sage [2009/06/22(月) 10:19:04 ] 前回も確かそうだったが、最近Subversion本体よりTSVNの方が (少なくともWebでは)先にリリースされとるな。 チーム内で何か確執でもあるのだろうかw
588 名前:デフォルトの名無しさん mailto:sage [2009/06/22(月) 10:22:58 ] サーバーを1.5.4で運用しているのだが、クライアントを1.6.xにすると どの程度遅くなる?無視できる程度? ちなみに使っているプロトコルはsvn+sshです
589 名前:デフォルトの名無しさん mailto:sage [2009/06/23(火) 03:59:50 ] ちと質問。 勉強でTortoiseSVN1.5.6を使用し始めて、その後コマンドライン版svn1.5.6を使用中。 リポジトリはTortoiseSVNでローカルに作成したものを使ってます。 OSはWindowsXP。 1.6.3が出るようなのでサービスを稼働させる前にバージョンアップしようかと思ってますが、 どの程度互換性があるのか今一つわかってません。 ・ワーキングコピーは非互換部分あり、バージョンアップ後に再度チェックアウトし直しがベスト ・リポジトリは互換性あり、気になるならバックアップしておく程度でよし というのがこのスレ読んで考えた対処法ですが、合ってますでしょうか。
590 名前:デフォルトの名無しさん mailto:sage [2009/06/23(火) 04:42:10 ] >>587 TortoiseSVN の開発チームは Subversion 開発チームとはまったく別。 TortoiseSVN のビルド〜リリース手順は Subversion 側のタグ作成が済んだら始まる。 その手順が Subversion 側のタグ作成〜リリースの手順よりも速いってだけ。
591 名前:デフォルトの名無しさん mailto:sage [2009/06/23(火) 04:44:06 ] >>588 実測しないとなんとも。
592 名前:デフォルトの名無しさん mailto:sage [2009/06/23(火) 04:50:16 ] >>589 > ・ワーキングコピーは非互換部分あり、バージョンアップ後に再度チェックアウトし直しがベスト 非互換部分があるのは合ってるけど、チェックアウトしなおす必要は無い。 1.6 のクライアントでアクセスすれば勝手にバージョンアップされる。 > ・リポジトリは互換性あり、気になるならバックアップしておく程度でよし 互換性があるんでそれでもいいけど、 1.6 でしかアクセスしないなら 1.6 で 作り直したほうが1〜2割ほど容量が抑えられてうれしいかもしれない。 詳しくはこちら。っていうかこっち先に読めよ。 subversion.tigris.org/svn_1.6_releasenotes.html#compatibility
593 名前:デフォルトの名無しさん mailto:sage [2009/06/23(火) 21:58:17 ] >>338 >>472 の件、ようやく本家で対応されますた Version 1.6.3 (19 Jun 2009, from /branches/1.6.x) svn.collab.net/repos/svn/tags/1.6.3 User-visible changes: * fix segfault in WC->URL copy (r37646, -56) * let 'svnadmin load' tolerate mergeinfo with "\r\n" (r37768) * make svnsync normalize svn:* props to LF line endings (issue #3404) (略)
594 名前:デフォルトの名無しさん mailto:sage [2009/06/25(木) 10:57:48 ] Version 1.6.3 ttp://sourceforge.net/project/shownotes.php?release_id=691197 大量にバグが修正されてますな
595 名前:デフォルトの名無しさん mailto:sage [2009/06/25(木) 19:47:35 ] TortoiseSVN1.6..3にバージョン上げたんだけど コミットする時の対象一覧が常に空と表示されるようになって 選択されてない状態になるんだけど
596 名前:デフォルトの名無しさん mailto:sage [2009/06/26(金) 11:17:34 ] 俺も変更リストが空になってる。 ignore-on-commit使ってるのが悪いのかしら。
597 名前:デフォルトの名無しさん mailto:sage [2009/06/26(金) 17:32:46 ] >>596 そのようだね。ignore-on-commitがあるとチェックが外れるみたいだ。
598 名前:デフォルトの名無しさん mailto:sage [2009/06/26(金) 20:49:25 ] svn help XXX のメッセージが日本語と英語がかなり混在しているけど 日本語への翻訳はもうしていないの?
599 名前:デフォルトの名無しさん mailto:sage [2009/06/26(金) 23:41:52 ] svnbookの1.6対応日本語版マダー?
600 名前:デフォルトの名無しさん mailto:sage [2009/06/27(土) 01:43:00 ] >>589 ,>>592 1.3 の頃に作った300MB、リビジョン1400のリポジトリを 1.6 で dump/load したら 100MBぐらいになりました。 そこから更に dump したのを 1.3 で load したら元のサイズになったので、 中身が飛んだりはしてないらしいです。 作り直しが効果的だった例ということで。
601 名前:デフォルトの名無しさん [2009/06/28(日) 12:18:41 ] レンタルファイルサーバのWebフォルダ(WebDAV)上にリポジトリを作成してそれをWindowsから使いたいんですが、 TortoiseSVNで右クリックしても「リポジトリを作成」が出てこなくて、一旦ローカルでリポジトリを こさえてからエクスプローラでコピー、またはTortoiseSVNの再配置を使ってWebフォルダを指定しても 「リポジトリは恒久的に'http://〜'へ移動しました。relocate(参照URLの変更)を実行してください。」 とエラーメッセージが出てきて先に進めないのですが、どうすればうまくいくのでしょうか? 普通にSambaファイルサーバ上のリポジトリにアクセスするのと同じようにはいかないのでしょうか?
602 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 00:29:24 ] >>598 subversion/po/ja.po のコミットログを見てもらえればわかるとおり、 訳してた人が1年以上動けてないみたい。 リアルな生活が忙しくてそれどころではないという噂を聞いたです。 >>599 svnbookの1.6対応版ってtrunkかなぁ tag切られたら1.5には見切りを付けて、1.6にしようかと思ってるんだけど、 TortoiseSVNのマニュアルが滞っててそれどころでもなかったり。
603 名前:589 mailto:sage [2009/06/29(月) 00:31:21 ] >>592 >>600 ありがとうございます、全くの反対方向に理解してたことがよく分かりました。 とりあえず1.6.3を落としてきました。 先に教えてもらったページを読み込んでからバージョンアップに挑戦してみます。
604 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 01:46:11 ] >>601 普通はサーバ上で本家のSubversionを動かし、さらにそいつでレポジトリを作っておく。 そうしておいて、クライアント側からTortoiseSVNなどでチェックアウトするというのが素直なやり方だと思う。
605 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 11:52:27 ] 知らないならレスしないでください
606 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 13:36:35 ] >>605 お前、もう誰からもまともなレスは付かないぞ。 さっさと知恵袋にでも逝けw
607 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 13:50:05 ] 自分がどれだけアホな質問をしてるのか、それは数年後にわかるだろう
608 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 13:51:19 ] IDなしだから、605は私じゃありませんと言い出すんだよね
609 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 14:32:01 ] ていうか、>>605 みたいなレスをあちこちに投下してる愉快犯がいやがる。
610 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 14:41:58 ] OpenGLスレでも同じようなキチガイがいたな
611 名前:デフォルトの名無しさん mailto:sage [2009/06/29(月) 14:50:45 ] IDなしの板で質問するのがアホ
612 名前:601 mailto:sage [2009/06/29(月) 19:58:15 ] >>605 は本当に私じゃありません
613 名前:デフォルトの名無しさん mailto:sage [2009/06/30(火) 05:07:41 ] > 知らないならレスしないでください これはIDなし板での恒例のレスだろww
614 名前:デフォルトの名無しさん mailto:sage [2009/06/30(火) 10:25:23 ] そういうレスを面白半分に投下する奴は人間の屑だと俺は思うが。
615 名前:デフォルトの名無しさん mailto:sage [2009/06/30(火) 11:48:45 ] 面白半分じゃなくてID推進活動の一環だろ。 質問はトリ付けることを推奨でいいんじゃね。 IDは変わりやすい人もいるからIDあってもトリ付いてた方がいいし。
616 名前:デフォルトの名無しさん mailto:sage [2009/06/30(火) 11:53:12 ] 2ちゃんねる的にはIDを付けなければならんほど、住人の民度が落ちた、 ということで、IDが付くのは、ある意味、終わったということなんだが。 そんなにム板を終わらせたい奴がいるわけ?
617 名前:デフォルトの名無しさん mailto:sage [2009/06/30(火) 11:55:56 ] 住民がどう以前に関係ないやつがおもしろ半分にあちらこちらで暴れてるんだからどうしようもないだろ
618 名前:デフォルトの名無しさん mailto:sage [2009/06/30(火) 12:01:27 ] こんなの恒例なんだから、スルすればいいだけのことだよ
619 名前:デフォルトの名無しさん mailto:sage [2009/07/06(月) 20:32:16 ] >>602 > tag切られたら1.5には見切りを付けて、1.6にしようかと思ってるんだけど、 svnbook.red-bean.com/index.ja.html ここにある日本語版は1.5どころか、 > この本は Subversion バージョン管理システムのバージョン1.2系のために書かれたものです。 という記述 (ttp://subversion.bluegate.org/doc/pr02.html) があるとおり相当古いものです。 どこかに1.5相当のsvnbook日本語版が存在するのでしょうか?
620 名前:デフォルトの名無しさん mailto:sage [2009/07/06(月) 20:36:38 ] 「鍋太郎」氏のサイトのが1.5相当だったかと。
621 名前:デフォルトの名無しさん [2009/07/06(月) 20:40:19 ] すっごい初歩的な質問なのですがMac OS X 10.5+Xcode 3.1+subversionな環境で エラー:155007(Path is not a working copy directory)説明:'/path/to/hogehoge' is not a working copy と出る場合はどうすればいいですか?
622 名前:デフォルトの名無しさん mailto:sage [2009/07/06(月) 23:51:08 ] >>619-620 半分ぐらいしか訳せてなくて申し訳ないのだけれど。 一応リファレンスだけは訳したつもり。
623 名前:デフォルトの名無しさん mailto:sage [2009/07/07(火) 13:31:07 ] >>621 「チェックアウトしたディレクトリではありません」ということです。 何をしたいのかによりますが、 チェックインしたいなら、先にチェックアウトしてみてください。
624 名前:デフォルトの名無しさん mailto:sage [2009/07/07(火) 13:35:52 ] >>621 1. ローカルコピーを削除する。 (cd myxcodeproject; rm -rf . ) 2. サーバーから”ビルド”フォルダを削除する 3. チェックアウトする (svn co https://svnserver/path/trunk/project . ) 参考:note19.com/2009/03/17/xcode-subversion-error-155007-path-is-not-a-working-copy-directory/
625 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 15:29:46 ] Subversionって管理者権限を持ってると変更履歴の改竄は可能ですか?
626 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 15:30:48 ] 履歴とは何 ログなら可能
627 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 15:32:39 ] >>626 ログメッセージじゃなくログそのものですね xxというソースを追加したとか変更したとか
628 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 15:36:41 ] ↑ いちいち余計なひとことで他人をムッとさせるタイプのひと。 ログ ヒストリー 履歴 たしかに統一してほしいけど、読めばわかるだろ。
629 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 15:38:08 ] どう見てもお前さんのレスこそ他人をむっとさせるだろw
630 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 15:40:12 ] むっ
631 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 15:57:21 ] 改竄だと rev.NNNを無かったことにする -rNNN:NNN+1 の差分を変更する とかじゃないの?
632 名前:デフォルトの名無しさん mailto:sage [2009/07/14(火) 20:34:57 ] むっ
633 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 03:55:22 ] >>631 そうです あるリビジョンで追加したファイルがなぜか変更扱いになってたりとあとで 改竄できるのかなあと思いまして 当然追加を変更扱いするわけなのでもっと前のリビジョンで追加されてたことにするわけですが
634 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 07:51:16 ] なんで自分のやりたいことを具体的に説明できないのかねぇ。 まぁ、きちんと説明できるくらいなら自力で調べることもできそうではあるが。
635 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 08:13:19 ] >>633 聞いた限りでは、ただの勘違いにしか思えないな。
636 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 10:21:06 ] >>633 履歴の削除はできます。 削除した場所に別の履歴を入れたりは難しいです。 普通は履歴を改竄する必要はないはずです。 よっぽどのこと(顧客の個人情報をコミットしてしまった等)があった場合には、 その部分の履歴を削除することはありますが、 それ以外では、単に追加・更新していくだけで大丈夫なはずです。
637 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 17:17:38 ] ソフトウェアの情報を見ると バージョン番号の次にリビジョン番号(1.2.3-r45678)がくるものがあるけど C/C++のソースコードにsubversionのリビジョン番号をソースコードの中に組み込む事ってできるんですか?
638 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 17:19:37 ] 何でドキュメントを読まないの?
639 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 17:29:08 ] オレのドキュメントは2ちゃん
640 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 17:44:57 ] >>637 svn:keywordsを設定してキーワード置換をすればできます。 たとえば属性svn:keywordsにRevisionを設定してから ソース中で rev = "$Revision$"; などと書いておくと チェックアウト時に実際のリビジョン番号に置換されます。 参照:subversion.bluegate.org/doc/ch07s02.html#svn.advanced.props.special.keywords
641 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 20:17:25 ] >>637 その質問、すでに何度も出てるよ
642 名前:デフォルトの名無しさん mailto:sage [2009/07/15(水) 20:25:01 ] >>637 過去ログで何回も出てるけど、 svn:keywords, svn info --xml, svnversion, subwcrev (TortoiseSVN)とか。 あと、継続的実行 (Continuous Integration。わからなければググレ)してるなら、そっちの機能でも出来たりすることがある。
643 名前:デフォルトの名無しさん [2009/07/17(金) 19:20:27 ] TrutoriseSVNでsvn+sshで接続できなかったので初心者質問です。 前任の人が入れていったSubversionを利用したくて、Subversion初心者なりに頑張ったのですが ダメでしたので質問です。 ・前任者がパスフレーズと、「ssh_rsa.ppk」なるファイルを残していった ・Puttyではこのppkファイルとパスワードで接続できた ・TrutoriseSVNのネットワーク設定でこのppkファイルを食わせて、ユーザー名とパスフレーズを入れてもログインしてくれない 自分の環境はWindowsXP、TrutoriseSVN1.6.2 接続先はSubversion1.4.6 LinuxはRed Hat Enterprise Linux ES release 4 (Nahant Update 5) と記述してありました。 Unix文化やセキュリティというものに親しんでこなかったので、何が悪いのか調べる方法に困っている状況です お知恵を頂ければありがたいです
644 名前:643 [2009/07/17(金) 19:34:24 ] 一応前任の方のメモ書きを参考にしたのですが、どうしてもパスフレーズを求められて メモに書かれたものを入れてもログインできません。(Puttyだと通った) ・リポジトリブラウザに入れたパスの問題なのか ・パスフレーズの問題なのか ・それ以外なのか ちょっとどれが有力なのかも自分の中で絞れない感じです 前任者のメモの要約です。 (miyaが前任者の名前) 【TortoiseSVNの設定】 ・エクスプローラー上で右クリック→TortoiseSVNの設定→ネットワークを表示 ・SSHクライアントのボックスに以下を入力 C:\Program Files\TortoiseSVN\bin\TortoisePlink.exe -l miya -i 秘密キーファイルのパス ・リポジトリブラウザで以下のURLにアクセス svn+ssh//hostname/home/miya/svn/project/hogeprj/reps/trunk (hogeprjがプロジェクト名) よろしくお願いいたします
645 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 19:55:13 ] >>643 えっと、参考になるか分からないけど、自分の設定を晒しときます。 SSHクライアントはPutty付属のplinkw.exeを使って -batch オプションを付けてます。 で、接続する前にこれまたPutty付属のpageant.exeを起動して秘密キーを登録しておきます。 これでレポジトリにアクセスできてます。
646 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 19:56:23 ] >>643 puttyのパッケージに入っているplinkを使ってみてください。 puttyごった煮版に入っているplinkwがお勧めです。 TortoiseSVNのネットワーク設定のSSHクライアントに次のように入力します。 C:\Program Files\PuTTY\plinkw.exe 秘密キーはpageantに登録して使うと便利です。 詳しくは次のページを見てください。 ttp://www.sodan.ecc.u-tokyo.ac.jp/2002/article/tips/ssh/putty.shtml
647 名前:645 mailto:sage [2009/07/17(金) 19:57:58 ] 追記。 レポジトリにアクセスするときにユーザ名を付けてます。 svn+ssh://user@host/svn/repo/trunk
648 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 20:05:10 ] subversionの環境を使いたいの? それとも、リポジトリを使いたいの?
649 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 20:06:15 ] リポジトリを使いたいだけなら、がんばってサーバでリポジトリをダンプして、 windowsでインポートすればOK
650 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 22:58:44 ] 複数案件を、検証用サーバ、本番サーバに順不同でリリースしたい場合の例ってどこかにありますか? 具体的には、検証用サーバには案件A Bの順でリリースしたが、 本番サーバには案件B Aの順でリリースしたい場合です。 現在のリポジトリ構成 trunk 検証、本番 branches 案件A 案件B のような感じです。
651 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 23:07:45 ] 「リリース」でSubversionで何をしたいのかがわからん
652 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 23:15:40 ] 各サーバで普通にチェックアウトするだけじゃないのか
653 名前:デフォルトの名無しさん mailto:sage [2009/07/17(金) 23:49:17 ] >>650 もう少し解りやすく質問してお願い。
654 名前:650 mailto:sage [2009/07/18(土) 01:58:14 ] 言葉が足りずすみません。 既存システムの修正を行おうとしています。 修正の内容が2種類あり、それらのリリースタイミングが異なるため、別のブランチを作成します。 リリースはtrunkにマージしたものを本番サーバに配布することを指しています。 また、それぞれの案件が同じファイルを修正する可能性もあります。 検証用サーバを挟まない場合、 1 trunkをコピーして、A Bブランチを作成 2 (Aをリリース) Aをtrunkにマージ 3 (Bをリリース) trunkの変更をBにマージ後、Bをtrunkにマージ という流れでいけると思っています。 しかし、検証用サーバを挟み、本番サーバへBを先にリリースしたい場合、 1 trunkをコピーして、A Bブランチを作成 2 (Aを検証用サーバにリリース) Aをtrunkにマージ 3 (Bを検証用サーバにリリース) trunkの変更をBにマージ後、Bをtrunkにマージ 4 (Bを本番サーバにリリース) とやってしまうと、Bを先に本番サーバへリリースを行おうとした時に、BのブランチにはAの内容が 含まれた状態になっているため、Bのみの内容を抽出することが難しいのではないかと懸念しています。 伝わるでしょうか。。。
655 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 09:14:30 ] リリース直前に専用のブランチを作って、そこで切ったタグからリリースしてはどうでしょう。 リリース直前の修正はブランチで行い、trunkへのマージはタグ切ってリリースした後で。 そもそも、本番サーバへのリリース計画と異なる手順で検証用サーバにリリースするのが間違いのような。 いったい何を検証するつもりなんでしょうか?
656 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 10:06:40 ] >>654 なんでtrunkにマージすんだよ。 branchの先端をリリースしろ、馬鹿。
657 名前:653 mailto:sage [2009/07/18(土) 14:32:00 ] >>654 流れは大体合ってる。 >3 (Bを検証用サーバにリリース) trunkの変更をBにマージ後、Bをtrunkにマージ ここの後半で競合が起きるかもってことかな?確かに起きる。 TortoiseSVNであれば、このときはBをtrunkにマージではなくって、ブランチを再統合するを選べばOKだよ。詳しくはtortoiseSVNのヘルプの4.20ブランチの再統合を参照してね。 尚、Bの変更内容だけを抽出したいなら、trunkの変更をBにマージした時点でのBとtrunkとの差分をとればBの変更が抽出できる。
658 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 14:59:27 ] ありがとうございます。 >>655 確かに、同じファイルを変更する可能性があるため、後から検証サーバに配置したものについて、 厳密に検証が行えなくなることは認識しています。 専用のブランチというのは検証用サーバと同じ状態にあると見なすブランチということでしょうか? >>656 Aブランチの先端をリリース、Bブランチの先端をリリースという順で行うと、同じファイルを変更した場合に Aブランチの修正が消えてしまうのではないでしょうか。 >>657 競合が起きるのは仕方ないと思っています。TortoiseSVNの統合をもう少し見てみます。 Bの変更内容は確かにおっしゃる方法で抽出できると思うのですが、検証サーバでの修正を どこにコミットすればいいのかが分かりません。 trunk(検証サーバの最新状態)に入れた場合、Bブランチに入れた場合ともに、Bのみの修正を抽出 しにくくなると思っています。 1 検証サーバの状態を保つためのブランチ(test)をtrunkから作成 2 (Aを検証サーバにリリース) Aをtestにマージ 3 (Bを検証サーバにリリース) Bから作業ブランチBsubを作成 Bsubにtestの変更をマージ Bsubをtestにマージ なども考えてみたのですが。。 もう少し考えてみます。
659 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 17:31:46 ] >>658 本番サーバと違うことを検証サーバでしようとするからおかしくなる。何のための検証サーバか。 開発スケジュールとリリーススケジュールがずれるのはいいとしても、 リリース時の手順はしっかり合わせた方がいい。
660 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 18:20:26 ] >>658 もっと単純に考えたほうがいいんじゃないかな。 trunk 本番 ベータ版ブランチを作成。ベータ版フィードバックをベータ版ブランチへ、その後trunkへマージを繰り返す。 最終的にtrunkからリリースブランチを作成。
661 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 21:28:25 ] そろそろうざいな。 必要なAの変更とBの変更をブランチだかtrunkだかにマージすればいいだけの話だろ。 ブランチ作成後にtrunkに変更を入れるのかどうか知らんけど、 リリースに必要な変更を全てマージすればいいだけの話。 ブランチが足りないなら、さらにブランチ作って、不要になったら消せ。
662 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 22:07:38 ] >>650 基本的には、本番環境にリリースする単位で検証しなければいけない。 branch作成後にtrunkにA,Bと関係ない変更を行わないという前提で考えれば、 1. trunkでAの修正を行う 2. branchBを作成し、Bの修正を行う 3. Aの修正が終わったら、trunkを検証にリリース(なぜこれを先にリリースする必要があるのかわからない) 4. Bの修正が終わったら、branchBを検証にリリース 5. branchBを本番にリリース 6. それと同時に、branchBをtrunkにマージ 7. マージしたtrunkを検証にリリース 8. trunkを本番にリリース つまり、検証には三回リリースしなければならないということ。
663 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 22:19:23 ] >>658 それぞれのbranchでの変更は、そのbranchにcommitしろ。 マージはそのbranchがfixしてからだ。
664 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 22:20:27 ] >>659 > 本番サーバと違うことを検証サーバでしようとするからおかしくなる。 客からの要望が ・A Bをやりたいがどちらを先に本番リリースするかは決まっていない ・どちらも本番リリースすることは確実なので、対応できたものから検証サーバに配置して欲しい というものなので、そうなってしまいました。 >>661 はい、必要なブランチを作成して不要になったら消そうとしています。 >>660 >>662 ありがとうございます。もう少し考えてみます。
665 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 22:27:15 ] 1.branchAを作って、Aの修正を行い、検証サーバにリリースする。 2.branchBを作って、Bの修正を行い、検証サーバにリリースする。 3.branchA、branchBをtrunkにマージし、検証サーバにリリースする。 クライアントの要求に従って、(1、3)あるいは(2、3)の順でリリースする。 リリースの順番が早く決まるんなら、もう少し手順は省略できるが、わからないならこれしかないのでは。
666 名前:665 mailto:sage [2009/07/18(土) 22:34:05 ] どう実現するかを考えるのももちろん必要だけど、リリース順序をクライアントに決めさせる努力も重要。 文脈から、クライアントが行う受け入れテストの基盤を「検証サーバ」と呼んでるような気がするが、 リリース順序の決定が遅れる場合は、受け入れテストの工数が増大することをクライアント側に説明 しておく必要がある。二回の受け入れテストで済むものが、三回必要になるかもしれないということ。 まぁ、開発側も受け入れ側も、Aの検証を行い、Bの検証を行えば、AとB両方入れてもOKっしょ的な、 運を天に任せるというやり方でもいいけど。
667 名前:デフォルトの名無しさん mailto:sage [2009/07/18(土) 23:42:47 ] そんなトロい客とSEは回帰バグで死んでしまえ。
668 名前:デフォルトの名無しさん mailto:sage [2009/07/19(日) 00:00:04 ] どちらも最終的に必要なのに、どちらが先かわからないということは、同時に用意することになるんだね。 ならば、AB同時にやって条件ifで片方の機能を殺して提出する方が楽かもね。
669 名前:デフォルトの名無しさん [2009/08/02(日) 09:23:05 ] 先生質問です ノ svn:keywords=Revと属性を付けておくと$Rev$を置換してくれますが、 あくまで、このファイル自体が変更されたタイミングですよね。 で、このファイルに変更が無くても、他のファイルをコミットするときに 置換して欲しいんですが、そういう方法ってありますか? 希望する動作: a.txtは属性svn:keywords=Rev b.txtは属性なし b.txtを変更してコミット a.txtは変更していないが$Rev:$が置換されている リポジトリは共有フォルダ(必要があればsvnserveも変更可能)、 クライアントはTortoiseSVNです。
670 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 11:23:32 ] それくらい、バチファイルで組め
671 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 12:20:51 ] どっちかというと、変更して無いファイルをコミットするコマンドがあるのかに興味があるな。
672 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 16:30:59 ] 変更すればいいじゃん
673 名前:デフォルトの名無しさん [2009/08/02(日) 20:02:00 ] >変更して無いファイルをコミットする 単にタイムスタンプを変更したいってこと?
674 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 22:06:03 ] >>673 コミットログ書き忘れたときに簡単にログだけを追加したいと思うことがある。
675 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 22:33:56 ] >>674 svnadmin setlog でOK
676 名前:デフォルトの名無しさん mailto:sage [2009/08/02(日) 23:16:06 ] >>674 最初っからそれを言えよ
677 名前:669 mailto:sage [2009/08/03(月) 12:08:06 ] >>670 >>672 ・コミットはTortoiseSVNから ・チームで開発してる ・漏れを無くしたい(自動的に、確実に) という状況/考えだったので、 クライアント側はTortoiseSVNの操作だけにしたいな、と思いまして。 私だけならバッチで良いんですけどね。 ちなみに目的は、各環境のDB構造のバージョンアップ(alter文とか) の際に↓のようなsqlを最後に流して、 その環境に、どのrevまでの変更を適用したか より確実に残しておきたかったんです(今は手動でrevを書き換えてupdate)。 --rev.sql-- insert into upd_rev(dt,rev) values(now(), '$Rev: 0 $'); とりあえず、フックスクリプトで出来るかやってみようと思います。 >>674 たまにそれやって空行追加して再コミットしてるw 過去の内容変えるとsvnの差分バックアップとか svkのミラーリングに入らないしね。
678 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 13:28:39 ] >>677 rev.sqlのヘッダ部分に日付を手作業で入れておく。 他のファイルを修正したとき、rev.sqlのヘッダ部分の日付をその日に変更してコミット。 これでrev.sqlには常に最新のリビジョンが入るよ。
679 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 13:30:34 ] そゆのって、チェックアウト側でやるもんじゃないの? チェックアウトして svnversion でリビジョンを取得して、 rev.sql を自動的に書き換えて DBに流し込む
680 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 13:31:54 ] おっと、679 は >>677 へのレス
681 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 14:18:28 ] >>677 ログが空ならコミットさせないようにすればいいじゃん
682 名前:677 mailto:sage [2009/08/03(月) 19:29:22 ] >他のファイルを修正したとき、rev.sqlのヘッダ部分の日付をその日に変更して ここが自動でないなら、今まで通り手動でRev入れるのと大差無いので。 >>681 空でコミット流石にしないかな。書き忘れたことがある場合ね。 フックスクリプト試したけど、 pre-commitだとトランザクション名指定して内容書き換えるの無理っぽいし、 post-commitなら変更出来るだろうけど毎回2コミットになって論外・・・。 クライアントフックスクリプトじゃメンバーやPC変わったときに設定忘れてオワル危険があるので除外。
683 名前:677 mailto:sage [2009/08/03(月) 19:32:54 ] APIのリファレンス見つけたので、関数直接呼んでトランザクションの内容を 書き換えるプログラムを作ってみようと思います。 それをpre-commitから呼べばおそらく何とか。 svnbook.red-bean.com/en/1.5/svn.developer.usingapi.html
684 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 19:35:27 ] 頭が悪すぎる
685 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 19:42:47 ] 頭悪くて申し訳ないけど、良い方法が有れば教えて頂けると助かります
686 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 19:52:47 ] >>354 と同じことをやりたいのか?
687 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 20:25:43 ] いえ、クライアント側の設定不要で自動的に書き換わっている(=漏れが無い)のを求めていて、 置換自体は別に手間でないので。
688 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 20:34:07 ] ごはん食べずにお腹いっぱいになる方法、ありますか?
689 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 20:57:05 ] 変えてないファイルのリビジョンをいじる必要があるのか考え直したほうがいいのでは?
690 名前:デフォルトの名無しさん [2009/08/03(月) 21:08:35 ] >>677 よくわからないんだけど、 Excelで台帳作って、管理するとかじゃ支障があるものなの?
691 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 21:22:19 ] ねずみさんはひらめきました。 そうだ、猫の首に鈴をつければいい! ・・・で、いったい誰が?
692 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 21:23:42 ] 管理はしたくない。 だって、管理し忘れたら意味無いだろ? ってことか。
693 名前:デフォルトの名無しさん [2009/08/03(月) 21:26:16 ] 個人的にはチーム開発ほどコミュニケーションが重要だと思う。 機械で自動化したからOKみたいな乗りだとちょっと怖いな。
694 名前:デフォルトの名無しさん mailto:sage [2009/08/03(月) 22:52:36 ] 打ってるんじゃない、打たされているんだ
695 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 00:05:28 ] >>682 あれ? だから、書き忘れないように空コミットを防ぐスクリプト使えばよくね?って話で。 もしかして書き忘れって部分的な書き忘れ?
696 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 00:13:51 ] そんで、本題の方だけど、DBに新しいレイアウトを適用した人が責任を持って設定するのではダメ? もしくはalterなりなんなりのスクリプトをコミットするときにバージョン情報も更新するスクリプトを変更するようにするとか。 *.sqlがコミットされた場合に、version.sqlも一緒にコミットされていなければはじくスクリプトとかできるよね?
697 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 00:21:51 ] それを忘れた場合が困るんじゃね?
698 名前:デフォルトの名無しさん [2009/08/04(火) 00:31:25 ] 実際のDB環境環境と作業頻度みたいなのイメージがわかないから解らないが、ぶっちゃけどんぐらい大きさのなんだよ。 DB更新先が、10,000箇所とかあって、作業員も100人以上とかで並行作業で困ってるとかなら同情するが・・・
699 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 10:35:33 ] >>687 逆の発想で、アップデート時にリビジョン入りファイルを出力するのはどう? TortoiseSVNを使っているなら post-update フックが使えるよ。
700 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 19:21:23 ] >>699 >>682 >クライアントフックスクリプトじゃメンバーやPC変わったときに設定忘れてオワル危険があるので除外。 だって。 もうすべてきれいに忘れそうな勢い。w
701 名前:デフォルトの名無しさん mailto:sage [2009/08/04(火) 21:01:18 ] しかも相手にしているのは小児病のメンバーってか?w
702 名前:デフォルトの名無しさん mailto:sage [2009/08/05(水) 00:48:28 ] TortoiseSVN のマージで PEG リビジョンを指定するにはどうしたらいいのでしょうか?
703 名前:デフォルトの名無しさん [2009/08/07(金) 13:26:04 ] Subversion 1.6.4, 1.5.7 security release age svn.collab.net/repos/svn/tags/1.6.4/CHANGES > User-visible changes: > * fixed: heap overflow vulnerability on server and client > See CVE-2009-2411, and descriptive advisory at > subversion.tigris.org/security/CVE-2009-2411-advisory.txt
704 名前:デフォルトの名無しさん [2009/08/07(金) 13:29:18 ] TortoiseSVN 1.6.4 age tortoisesvn.net/node/377
705 名前:デフォルトの名無しさん mailto:sage [2009/08/07(金) 17:05:52 ] >>702 マージダイアログでURLの後に“@番号”とつければいいのではないかと思います。
706 名前:デフォルトの名無しさん mailto:sage [2009/08/08(土) 21:45:42 ] >>705 TortoiseSVN 1.6.4 で試しましたが、 「エラー: パス '/sandbox/!svn/bc/22/test/trunk@19' が見つかりません」 というエラーが出てきました。
707 名前:デフォルトの名無しさん mailto:sage [2009/08/10(月) 14:27:27 ] >>706 “@番号”は使えなかったですか。失礼しました。 いろいろ調べたり実験してみたのですが、よくわかりませんでした。 [BUG] Merge dialog peg revisions svn.haxx.se/tsvn/archive-2007-03/0247.shtml というスレがあるので、外人さんはPEGでマージしている予感があります。 もう少し調べてみます。
708 名前:デフォルトの名無しさん mailto:sage [2009/08/10(月) 16:48:49 ] 1.6.4 アイコンの色合いとか微妙に変わったね
709 名前:デフォルトの名無しさん mailto:sage [2009/08/10(月) 17:34:56 ] Subversionに脆弱性 ttp://journal.mycom.co.jp/news/2009/08/10/029/index.html 1.5.6およびそれよりも前のバージョンと、1.6.0から1.6.3までのバージョンが影響を受ける。 対策が施されたバージョンは1.5.7および1.6.4。
710 名前:デフォルトの名無しさん mailto:sage [2009/08/10(月) 22:54:49 ] Windows Server 2003 VisualSVN Server2.0.5 Windowsのバッチファイルでsvnadmin等のエラーが発生したかどうか ERRORLEVELで判断することは可能ですか? svnadmin hotcopy if errorlevel 0 goto end if errorlevel 1 goto error svnadmin dump if errorlevel 0 goto end if errorlevel 1 goto error いろいろググってみましたがそもそも値が返るのかもよくわかりませんでした。
711 名前:デフォルトの名無しさん mailto:sage [2009/08/10(月) 23:29:17 ] svnadmin が終了コードを返すのかどうかは知らないけど >>710 は errorlevel の使い方が間違ってる。 まちがい if errorlevel 0 goto end if errorlevel 1 goto error 正しい if errorlevel 1 goto error if errorlevel 0 goto end 他のやり方その1 if %errorlevel;%==1 goto error 他のやり方その2 svnadmin hotcopy || goto error くわしいことはバッチファイルのスレで質問して
712 名前:デフォルトの名無しさん [2009/08/11(火) 13:45:53 ] フックでハマタ\(^o^)/ subversion.tigris.org/faq.ja.html > どうしてリポジトリのフックが動作しないの? > フックは、外部プログラムを呼び出すことを期待されているんだけど、 > その呼び出しが、全然生じていないよう感じだ。 > > Subversion はフックスクリプトを起動する前に、全ての環境変数を取り除く。 > その中には、Unixでは $PATHが、Windows では %PATH% が含まれる。 > 結果、スクリプトでは、絶対パス名の記述された他のプログラムだけを実行可能だ。 アドレスだけでいいから、テンプレに入れといて。 どおりで、PYTHONPATH設定しているのに、フックから見えないはずだな!
713 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 23:11:32 ] そんなことcrontab書いたことがあれば当たり前の話な訳だが。
714 名前:デフォルトの名無しさん mailto:sage [2009/08/11(火) 23:52:08 ] svnのフックはcrontabじゃないわけだが
715 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 00:17:24 ] >>714 類似性に気付かないあたりが経験不足だな。 自分で痛い目に遭ったし人が痛い目に遭ってるのも見てるから、 crontabを挙げたくなる気持ちはよくわかる。
716 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 04:12:26 ] crontabもまあ似てるけれど、cgiの方で引っかかる人も多くない? apacheはどのユーザとして動いてんの?っていうの。 広げてもしょうがない話ではあるけれど…
717 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 16:07:35 ] Windowsなら、 ユーザーの環境変数は使用できないけれど、システムの環境変数は使える ってのが普通に予想される動作だろう 全ての環境変数を取り除くなんてのは、当たり前の動作じゃない
718 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 18:18:31 ] 間違って変なものが動いてしまわないようにするのは良いことじゃん。
719 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 19:17:38 ] 当たり前かどうかは人それぞれだと思います。 当たり前でない人のために、次のテンプレに >>712 を入れるのがいいと思います。
720 名前:デフォルトの名無しさん mailto:sage [2009/08/12(水) 22:58:28 ] 環境変数に依存するのもどうかと思うよ。
721 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 00:21:28 ] システムの環境変数ってのも改めて考えてみると気持ち悪いな
722 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 03:02:02 ] そう?/etc/profile も嫌?
723 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 12:20:44 ] 環境変数って結局グローバル変数だよ。 どこで誰が書き換えたかわかったもんじゃないし
724 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 12:57:02 ] プログラム側でPATH=/binとかいちいち指定するつもりか
725 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 13:11:45 ] 環境変数は親から子へしか伝播しないのだからグローバル変数ほど悪くないよ
726 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 13:13:21 ] 気持ち悪いなと思ったのは /etc/profile とかって確かにシステムワイドではあるけど sh がそれを読み込むというだけだし だったらログインシェルがないユーザだと どーなんかと 「システム」の環境というのとはちょっと違う気が。 あとまぁ >>723 みたいなグローバル変数的なとこが気持ち悪いな。
727 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 16:48:11 ] >だったらログインシェルがないユーザだとどーなんかと これ解らないで口出すとかネタだよな? UNIX系じゃnologinのユーザ作ることあるけど その場合の動きが解らんと言う事か?
728 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 17:05:27 ] svnで直前のコミットを取り消すにはどうしたらいんでしょ。 ファイル自体は元にもどしたくありません。 コミットした後で、いくつかのファイルが保存されていないことに気づいたのです。 git commit --amend みたいなものです。
729 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 17:07:02 ] 取り消したいファイルだけコミットし直せ
730 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 18:05:27 ] >>728 よく有る話だけど、あきらめて残りをコミットしてログに「前のリビジョンとセットです。スマソ」と書いておけばいいんじゃないかな。
731 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 18:29:52 ] リポジトリのcurrentってファイルに書かれてるリビジョン番号を戻せば可能ではあるけど 非常にオススメできない。
732 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 18:40:53 ] 極端な話、取り消すことができたとしても間違えて取り消したら取り返しの付かないことになるからね。あまりそういう機能は欲しくないな。 どうしても消したいなら、落ち着いてdump&loadするしか
733 名前:デフォルトの名無しさん mailto:sage [2009/08/13(木) 19:09:02 ] ログインシェルが指定されてないユーザならshとか標準のシェルが呼ばれるだけだろ (中身はcshやbashだったりするけど)
734 名前:デフォルトの名無しさん mailto:sage [2009/08/14(金) 00:29:54 ] >>727 まさに nologin とか false だとどうなるんだろうと思ったのです その場合 /etc/profile とか読まれないのだと思ってたけど もしかして恥ずかしい勘違いだった?
735 名前:デフォルトの名無しさん mailto:sage [2009/08/14(金) 11:38:51 ] >>729-732 サンクス gitやhgだとできたけど、svnではできないのか…。なるほど。 とりあえず、>>730 みたいに「すまそ」って書く方法でいきます。 BTSと連動はさせているから、チケットはコミットと複数関連付けできるし、問題ないのかもしれない。
736 名前:デフォルトの名無しさん mailto:sage [2009/08/16(日) 17:14:35 ] ちっちゃいプロジェクトがいっぱいある会社には不向きだな
737 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 14:15:27 ] 大変、困ったことがありまして、相談いたします。 以前、プログラムミスで (省略)\trunk\hoge\ というディレクトリを作るつもりで、 単体のファイル (省略)\trunk\hoge を生成して追加コミットしてしまいました。 その後、間違いに気づきそのファイルを消してコミットしました。 そして、'(省略)\trunk\hoge' というフォルダを再度作り追加しようとすると、 TortoiseSVNにて、 > '(省略)\trunk\hoge' > は、異なる種別のノードに置換できません。'(省略)\trunk\hoge' > を追加する前に、削除をコミットして親ディレクトリを更新しなければいけません と言われて、hogeディレクトリとそれ以下のファイルを追加することができなくなってしまいました。 すでに、削除してコミットはしてあります。 リポジトリブラウザで見ましても、'(省略)\trunk\hoge' というファイルは見当たりません。 もしかして、svnではかつてあった同名のディレクトリを追加することはできないものなのんでしょうか?
738 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 14:21:51 ] >>737 ファイルの削除を、ファイル単体でコミットしたんじゃないかなー? trunk を一回最新に更新したらいけるかもね。
739 名前:738 mailto:sage [2009/08/17(月) 14:22:35 ] >>737 あー、エラーメッセージの「親ディレクトリを更新しなければいけません」で言われてることだねぇ。
740 名前:デフォルトの名無しさん mailto:sage [2009/08/17(月) 14:43:38 ] >>737 ワーキングディレクトリを更新するか リポジトリからチェックアウトし直してみてください
741 名前:737 mailto:sage [2009/08/17(月) 15:01:00 ] >>738-740 親ディレクトリ更新したら、すんなり無事にいけました。 って、ちゃんとエラーメッセージに書いてあるじゃん!!… orz ともあれ、皆さんありがとうございました。 >>738 そのとおりのようでした
742 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 21:37:38 ] SVN リポジトリからチェックアウトできるオープンソースプロジェクトの ソースコードを自分のリポジトリのベンダーブランチにコピーしたいのですが ファイル属性を含めて簡単にコピーする方法はあるでしょうか?
743 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 21:44:42 ] >>742 ベンダーブランチに相手のリポジトリからマージ
744 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 22:45:58 ] リポジトリの位置が変わったらコマンドが使えなくなっちゃったんだけど スマートに変わったよって.svnに教えてあげるコマンドって何かありますか?
745 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 22:50:32 ] >>744 多分、svn switch --relocate
746 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 22:51:13 ] たしか svn switch --relocate ほげほげ して svn switch はげはげ じゃなかったかな
747 名前:デフォルトの名無しさん mailto:sage [2009/08/18(火) 23:22:12 ] Tortoiseの再配置/Relocateで行けそうです。 ありがとうございます。
748 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 13:00:06 ] TortoiseSVN 1.6.4の「競合の解消」変じゃね? 実行しようとするとウィンドウ出るけど、固まるよ。
749 名前:デフォルトの名無しさん [2009/08/19(水) 16:24:23 ] Xcodeでsubversion(SCM)をつかうとき ブランチをどのようにすれば切ることができるのでしょうか
750 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 18:14:13 ] >>743 ありがとうございます。 svn merge にそういう機能があることに気づきませんでした。 これならベンダーブランチも必要なさそうですね。
751 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 18:58:59 ] >>749 Xcodeでは出来ません
752 名前:デフォルトの名無しさん mailto:sage [2009/08/19(水) 19:56:59 ] >>749 出来ますよ。 「SCM」「リポジトリ」でリポジトリパネを出して、 対象を選択後ツールバーの「コピー」ボタンをクリック。