[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 2chのread.cgiへ]
Update time : 07/26 10:29 / Filesize : 191 KB / Number-of Response : 753
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Subversion r11



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/

75 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 16:41:48 ]
最近バージョン管理をVSSからTortoiseSVNに変えたときに
Ver.1.0用のリポジトリとVer.2.0用のリポジトリをそれぞれ作って、
最初は同じコードをインポートしたんだけど、

それぞれ別の機能が実装されていってったから
今は多くの部分が共通でありながら一部違うみたいになってます。

この状況で、Ver.2.0のリポジトリがいらなくなったから1.8のほうに
統合したいんだけど、リポジトリ違うときのマージの方法がわからん

うまい方法ってない?

76 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 16:49:13 ]
>>75
マージしたいバージョンをチェックアウトしてインポートしてマージ

77 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 16:54:49 ]
>>76
さっきやってみた。
マージメニューの"ブランチを再統合する"ってやつは元が違うからできんかったな。
この場合は"異なる2つのツリーをマージ"ってやつでいいの?

78 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 17:00:36 ]
どこに躓いてるんだw
別レポジトリのファイルでもチェックアウトしたものを
新しいレポジトリにインポートすればsvnの構造上ブランチと違いはない

79 名前:75 mailto:sage [2009/02/16(月) 17:16:18 ]
マージすらままならんsvn初心者なんだよ、すまん。ありがとう
出直してくる

80 名前:デフォルトの名無しさん [2009/02/16(月) 17:32:02 ]
1)もともとのソースコードの公開は開発元からに限られている
2)差分の公開は自由にしてよい

こういうときって,リポジトリ自体をライセンスに合った形で
公開したり,みんなで機能追加をつっつく方法って無いですか?

古いコードで,もともとの作者にもはや連絡が取れない場合とか,
ライブラリ製品だとそういうライセンスのやりかたを
取ってるものなどがあって,どうしたもんかなぁ,と.

完全にオープンソースのものだと楽なんですが・・
いいアイディアはないでしょうか?

リビジョン 1 はリポジトリには入ってないけど
みんな手元に同じ tar ball 持ってるよね?
って状態でその後をオープンにいじりたいというのは無謀?

81 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 22:13:03 ]
>>75
Ver1.8と最初のコードの差分を指定してVer2.0にマージする。これでリポジトリ間のマージはできるよ。
ただし、svn:mergeinfoはリポジトリ名が入らないんで矛盾が生じるので該当部分は消す。


82 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 15:53:21 ]
編集したはいいけどやっぱブランチにしとけばよかったぜ!
みたいなときってどうすんの?

83 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 16:01:47 ]
あきらめる



84 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 16:09:58 ]
>>82
私のリポジトリは、しばしばtagからbranchしているw

85 名前:デフォルトの名無しさん mailto:sage [2009/02/17(火) 16:54:37 ]
え、それ普通でしょ?

86 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 12:19:25 ]
>>82
そのままブランチすれば問題ないよ。


87 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 13:03:34 ]
trunkには、直近の変更は入れたくないけどどうしようって質問だと思ったが。

88 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 13:55:19 ]
それtrunkじゃないじゃん

89 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 14:35:59 ]
何言ってんの

90 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 17:51:45 ]
入れたくなければブランチすればいい話

91 名前:82 mailto:sage [2009/02/18(水) 19:31:20 ]
>>86
そのままブランチしても作業コピーの変更はちゃんとブランチに入るってことでおk?

俺が知ってるのはあるリビジョンから新しく作って(と同時に切り替えて)
作業していくって方法だけだから、それだと編集中のやつ無駄になるやん、と思ってな

92 名前:86 mailto:sage [2009/02/18(水) 21:39:21 ]
いや、作業コピーはそのままで分岐される。
TortoiseSVNの場合はリポジトリ内で最新リビジョン+切り替えるで分岐をすると作業コピーは変更されずに分岐ができる。
その後コミットすれば変更内容をリポジトリに格納できる。
よくやるのは、>>84のとおりtagsの作業コピーを編集した場合、そのままbranches上に分岐させる。変更が終わったらそのまま分岐をtrunkにマージできる。



93 名前:デフォルトの名無しさん [2009/02/19(木) 04:36:14 ]
ドメインとかIPかわっちゃった場合はどうやって変更かえればええんでしょうか?




94 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 05:11:44 ]
>>93
先ず日本語で質問する。

95 名前:デフォルトの名無しさん [2009/02/19(木) 05:53:01 ]
relocate じゃね?

96 名前:82 mailto:sage [2009/02/19(木) 09:14:10 ]
>>92
詳しい説明マジthx!

97 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 10:51:40 ]
再配置

98 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 23:09:32 ]
svn switch で、どこにでも変更できたと思うけど。

99 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 13:00:16 ]
>>98
switchとrelocateは別物。

100 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 18:14:15 ]
>>98
switcgiはリポジトリ内でしか変えられない
relocateはリポジトリのurlしか変えられない。

101 名前:デフォルトの名無しさん [2009/02/20(金) 18:25:21 ]
Windows版のコマンドラインクライアントってどこからダウンロードすればいいんでしょうか?
なんか登録サイトが出てきて、ダウンロードできない・・・。
以前は普通にダウンロードできたんだけども。

102 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 18:31:58 ]
ああ、Windows binaries のリンク先 の tigirs.org の apache 2.0 のリンク先からいけました。
紛らわしいなあ・・・

103 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 19:27:22 ]
>>101
sourceをおいてあるツリーのところにバイナリがおいてあった。
あと、binaryのリンク先のcollabnetでダウンロードする。collabonet subversionをダウンロードすると
collabnet desktopをダウンロードする様に出てくるけどこれってどんな機能があるのか良くわからないな?誰か知ってる?




104 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 20:13:06 ]
スレチ

105 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 10:40:00 ]
補足:>>104がスレチって意味です。

106 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 10:47:38 ]
>>103
ググレカス

107 名前:デフォルトの名無しさん [2009/02/22(日) 02:00:19 ]
OpenOfficeのファイルをsubversionで管理している人はいますか?
ODF(OpenDocument Format)ファイルが大きくなると、小さな変更に対しても差分が上手にとれずに、
レポジトリが肥大化することはありませんか?
ODFファイルをsubversionでどう扱うかはWeb上にいくつか情報がみつかるんだけど、
どうすればよいのかよくわからない。デフォルトでは、subversionがバイナリファイル扱いをして、
差分はxdeltaでとられるみたい。xdeltaは、大きなODFファイルの小さな変更に対して、十分に小さい
差分を生成できるの?
また、ooosvnも試したけど、Windowsで使えないのが難点。ファイル名やパスの書き方の問題だけな
気がするが。
ここら辺の問題意識は何年も前からあるみたいだけど、あまり解決していないのは、binary形式での
管理で十分ということなのだろうか。

108 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 04:32:57 ]
>>107 試せばいいじゃん。

109 名前:デフォルトの名無しさん [2009/02/22(日) 11:31:13 ]
>>107 試したよ。手順は以下の通り。
内容はほぼテキストのおよそ36kbのファイルをOpenOffice Writerで作成、svnにimportする。
レポジトリ以下のファイルサイズを記録しておく。OpenOffice Writerでドキュメントをわずかに変更。
svnにcommitする。レポジトリ以下のファイルサイズを見て、commit前のと比較。/db/revs/0が36kb程度
増加していることを確認。よって、上手に差分がとれていないと結論。

110 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 11:50:01 ]
zipかよ。圧縮のせいで元が大きく変わってるから差分手法のせいじゃない。
zipをバラしてから差分を取るといった具合に専用に最適化させないと無理。

111 名前:デフォルトの名無しさん [2009/02/22(日) 11:51:37 ]
???
Subversionって、テキストファイルとバイナリファイルで差分の取り方って
違うの?

dolphin.c.u-tokyo.ac.jp/~nori1/svn-m17n/index.html.ja
の「バイナリファイルの効率的な取扱い」とかを見て、一緒の扱いを
しているもんだと思っていたんですが。

112 名前:111 mailto:sage [2009/02/22(日) 11:53:52 ]
ああ、そうか、>>110を見て、ODFの中身がZIPだということを認識した
なるほど・・・そりゃムリだw

113 名前:デフォルトの名無しさん [2009/02/22(日) 12:40:06 ]
ODFにしてもマイクロソフトの.docxみたいなのにしても、
なぜ非圧縮での保存というオプションが無いのだ。



114 名前:デフォルトの名無しさん [2009/02/22(日) 14:36:37 ]
gitやmercurialはdiffをODFファイルのdiffをとるプログラムが設定できるらしいが、
これもレポジトリレベルでは、単なるバイナリdiffしかとっていないのでは?
そうすると 113>> のように、アプリケーション側でsubversionに対応するしかないのかな。
確かにUML Editorを使っていたのだけど、subversionと連携するように、非圧縮のXMLにして
保存していたような気がする。
しかし、プロジェクトでODFファイルを共有して皆で編集したいというニーズにはどうすれば
いいのかな?plain textかHTMLで文書を書けという方針にするかな。

115 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 14:48:04 ]
どんな運用かわからないけど、いまどきのストレージ事情でごり押しできない?

116 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 15:01:19 ]
LaTeXで書け

117 名前:デフォルトの名無しさん [2009/02/22(日) 19:52:32 ]
>>115 おっしゃる通り、ゴリ押しすることにしようっと。しかし、ドキュメントが大きくなると
破綻するのは、目に見えているな。そういうときは、過去のバージョンをパージしたりするのかな。
>>116 自分はLaTeXで書いているんだけど、プロジェクトのメンバーにLaTeXを強要するのは酷だなと
思って調べだしたのが、今回のきっかけ。
OpenOfficeの側にバージョン管理システムフレンドリーにしてとリクエスト出すべきかな。
しかし、バージョン管理システム側の設定でバイナリ差分のとり方を設定できるようにするのは、
一見いいアイディアのように見えて、リポジトリの移行時などに問題が発生するので難しい問題ですね。

118 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 21:14:59 ]
よーしらんが、コミットフックでzip展開させるわけにはいかないんかい?

119 名前:デフォルトの名無しさん [2009/02/24(火) 16:55:36 ]
使い始めたばかりで、間違った使い方してるのかもしれませんが教えて下さい。
TortoiseSVN + subversionです。
チェックアウトのリポジトリURLを「file://aaa/b/ccc/ddd」として、編集、コミットをした後
ログで作者の欄を見るとちゃんと入ってますが、
チェックアウトのリポジトリURLを「svn://xxx/yyy」として、編集、コミットをした後
ログで「作者」の欄を見ると空欄になってます。
何か設定などあるのでしょうか?

120 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 17:29:48 ]
login

121 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 19:17:03 ]
file://aaa/b/ccc/ddd でチェックアウトしてコミットしたものは、Windowsならそのユーザ名が入る
svn:// でやってるんなら最初にログインしてないと空白になる

svnserveで認証するようにすれば良い

122 名前:119 mailto:sage [2009/02/24(火) 19:47:42 ]
>>121
ありがとうございます。
無事できました。

123 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 21:45:28 ]
subversion + TortoiseSVNの構成で svn:// にて使用しております。
現在は confフォルダ内の設定ファイルに記述したユーザ及びパスワードにて
認証しておりますが、Windowsのユーザで認証することは可能でしょうか?




124 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 22:34:38 ]
>>123
tortoisesvn.net/docs/release/TortoiseSVN_ja/tsvn-serversetup.html

Svnserveベースじゃ無理っぽい。Apacheベースにする必要がありそう。
もちろん、アクセスもsvn://ではなくなる。


125 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 21:47:25 ]
>>124
ありがとうございます。
やっぱりapacheが必要なんですね。
なんとかなるといいんですが...

126 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 23:33:32 ]
1つのリポジトリを、複数台のサーバからアクセスする構成を組みたいのですが
そういう構成は安全でしょうか?

具体的にはWindows共有サーバ上にリポジトリをFSFSで作成し、多数のサーバ
(WindowsやLinux等)を使って多数のユーザで使用することを考えています。

127 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 02:10:57 ]
ちょっと違うかもだけど、参考になる?

複数リポジトリアクセス方法のサポート
ttp://subversion.bluegate.org/doc/book.html#svn.serverconfig.multimethod

128 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 17:48:26 ]
認証システム的にはCIFS(samba)+fileスキームで可能だけど、fileスキームでの
アクセスが適切なのかはあんたの利用状況に依存。

129 名前:126 mailto:sage [2009/02/28(土) 01:12:33 ]
>>127-128
ありがとうございます。なんとか出来そうな感じですね。
とりあえずやってみることにします。

130 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 09:09:28 ]
いま、仕事場で svn+sshでsvnユーザーさんでアクセスしてコミットしてもらっとるんですが、
これって誰がコミットしたかわからない、ですよね?

全部svnさんになる?TortoiseSVNですが、自動でWindowsログインユーザーとかにはならないですよね?

ユーザーを認識するにはどうしたらいいんでしょ?

svnのサーバーで利用者ごとにユーザー作って、
リポジトリのディレクトリにアクセスできる権限設定して、
そのユーザーにssh公開鍵置いてアクセスしたら、鯖で作ったユーザーで記録残る?
この辺のドキュメントありませんでしょうか?

131 名前:デフォルトの名無しさん [2009/02/28(土) 09:14:04 ]
やっちまった〜
svnsync でミラーしてリードオンリーで公開したつもりが、
そっちからチェックアウトしてコミットした奴らと
もともとのリポジトリにコミットした奴らが。
内輪のプロジェクトなのでおおごとではなかったけど、
こういうときはもうどうしようもないっすか?
ないっすよねぇ・・・・

132 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 09:16:06 ]
>>131
分散系だと別段問題ないけど、中央集権だと大変だな、こういうときは

133 名前:131 [2009/02/28(土) 09:41:55 ]
>>132
この場合、uuidが違うから気づいたのですが、
もしミラーをsvnsyncではなくrsyncやunisonを
使ってファイルシステムごとやっていたら、
uuidは同じわけで、気づくこともなくいつの間にか
違う歴史をたどり始めたuuidが同じ二つのリポジトリが・・

さらに被害甚大になっていたかと思うとガクブル。



134 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 12:56:34 ]
>>130
その通り。利用者ごとにアカウントを作ってそのアカウントでアクセスすればよい。

135 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 13:04:40 ]
>>130
マニュアル読めないの? メクラ?
subversion.bluegate.org/doc/ch06s03.html#svn.serverconfig.svnserve.sshtricks.fixedcmd

136 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 16:27:32 ]
>>135
そういうおまえは池沼だけどな

137 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 17:12:30 ]
>>136
マニュアルに書いてあると、池沼に指摘されたお前は池沼以下だな。ww

138 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 20:52:03 ]
まて、さすがに俺は答えてくれた方々に池沼なんていわない

139 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 02:15:37 ]
ここは>>1が全て悪いということで、丸く治めようぜ

140 名前:デフォルトの名無しさん [2009/03/01(日) 11:21:35 ]
チェックアウトしたディレクトリが
あろうことか他の奴に削除されてしまったとき、
とりあえずそいつを一発殴った後で俺はどうすればいい?
昔のバージョンからブランチをひねり出して、
そこに switch すればいいのか?

まぁとりあえず今日のところは手元の変更点を diff 取って
そいつにメールで送りつけてお前のところでマージしやがれと
言っておいた。

141 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 11:27:26 ]
「チェックアウトしたディレクトリ」ってなんだよ。
ワーキングコピーの事か? それなら他人に削除可能なワーキングコピーを作った自分を殴れ。
リポジトリのディレクトリの事なら、そいつのコミット分を戻せば行けそうな気がする。

142 名前:デフォルトの名無しさん [2009/03/01(日) 11:40:11 ]
>>141
用語の選択がまずかった。
俺がブランチ作った。ワーキングコピーをチェックアウトした。
奴がリポジトリ上でそのブランチ消しやがった。
svn commit できねぇ。

$ svn update
svn: Target path does not exist

$ svn commit -m "shine"
Sending abc.c
svn: Commit failed (details follow):
svn: File not found: transaction '5-9', path '/branches/mybranch/abc.c'

143 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 11:59:51 ]
「ワーキングコピーをチェックアウトした」ってなんだよ。
ともかく、そいつコミット分を戻す(変更を逆方向にマージ)すれば行けると思う。



144 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 12:21:22 ]
存在しないディレクトリとの差分って取れないだろ。
例え取れて差分戻してもディレクトリのUUIDは復活しないだろうから
> 昔のバージョンからブランチをひねり出して、
> そこに switch すればいいのか?
こうするしか無いように思える。

リポジトリのダンプとって削除を無いことにする。という逃げは有るだろうけど。

145 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 12:33:32 ]
削除を逆マージすれば復活するし差分も取れるようになる。
リポジトリ内ならどこへでも切り替えできるし。
バージョン管理使ってるのに、たかが削除したくらいであわてる必要は無い。


146 名前:デフォルトの名無しさん [2009/03/01(日) 12:53:45 ]
>>145
まぁ確かにすべてのこっているわけだからあわてる必要は無いんだけど、
ゆとり世代は例外的事象の発生に弱いんだ。

>>144
UUIDはリポジトリに対して設定されるものなので、
「ディレクトリのUUID」というものは無い。
とはいえ、「こうするしか無いように思える」ってのは
俺もそう思うので、次からはそうする。

まぁオレ用ブランチを作った時点でサーバ側で
アクセス制御かけておけばよかったのかもしれないが、面倒だった。
というか、file: スキームでアクセスしている奴がいたらどうしようもないか。

とにかくだ、ゆとり世代がVCSを使うとこんな感じなのです。


147 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 13:26:08 ]
>>146
まぁ自虐はそれぐらいにして次からはちゃんとしておけよ

148 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 14:06:12 ]
Subversionを久々に使ってみたのですが、
エクスプローラで、ファイルのアイコンに付くマーク(緑丸とか赤丸の)が表示されなくなってしまったのですが
これは表示するようにできるんでしょうか?
※フォルダには付いてます。


149 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 14:11:26 ]
F5


150 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 16:13:42 ]
F5しても出なければアイコンオーバーレイの設定やフィルタを確認

151 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 16:30:58 ]
蒸しリストに *.BAK を入れと *.bak が無視されなくなります。
蒸しリストに *.bak を入れると *.BAK が無視されなくなります。
トートイズsvn で windows 環境です。
たすけてくだしあ

152 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 16:34:24 ]
>>151
両方入れたらどうなる?


153 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 16:50:09 ]
>>151
×トートイズ
○トータス
△トートアス

先生はタートル(turtle)だったけど、トータス(taught us)。
-- from Alice in Wonderland.



154 名前:デフォルトの名無しさん mailto:sage [2009/03/01(日) 17:18:58 ]
ウルトラマンエースだったかな、キングトータスなんて怪獣がいたな。
もちろん巨大亀。

155 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 10:38:52 ]
Tortoiseの発音はここで確認シル
www.thefreedictionary.com/tortoise

156 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 10:40:41 ]
>>151
正規表現

例: *.[Bb][Aa][Kk]

157 名前:デフォルトの名無しさん mailto:sage [2009/03/03(火) 10:59:50 ]
正規表現というと誤解を招きそうな気がしないでもない




158 名前:デフォルトの名無しさん [2009/03/03(火) 11:02:34 ]
皆様すみません。

subversion-deps-1.5.5.tar.gzを
落としたかったのですが、公式が落ちているみたいで…。

どなたか、ミラーサイト等ご存知ですか?


159 名前:デフォルトの名無しさん [2009/03/03(火) 12:02:45 ]
158です。
すみません。復旧してました。


160 名前:デフォルトの名無しさん [2009/03/04(水) 12:07:03 ]
自分がチェックアウトして作業しているディレクトリの
パスの上の方でディレクトリ名が変更されたとき,
普通は switch というか switch --relocate しますよね?
これって自動的に追跡してくれないものでしょうか?

file:///repo/a/b/mycode

をチェックアウトして作業してたのに,管理者がそれを

file:///repo/x/y/mycode

に変更したときとか.これを知らずにワーキング
コピーを commit / update しようとすると
「そんなパスねぇよ」と怒られます.

リポジトリのログを見れば,自分がチェックアウトした
ディレクトリがその後どこに移動されたかわかりますが,
これが自動的に追跡されたらいいのになぁと思っています.

161 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 12:12:09 ]
commit前にまずupdateしろって言われるだけだと思うが
updateすればそこでコンフリクトするんじゃねえのか

162 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 12:17:39 ]
>>160
switchすればいいだけじゃないの?

163 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 13:10:25 ]
>>160
ブランチでの作業が完了してtagsに移動させた時とかに、
自動で追いかけられるとうっかりtagsで作業する人が出てきそう。

ディレクトリ名の変更って頻繁にあるもんじゃないから、
確認の意味でも現状でいいんじゃないかと思う。




164 名前:デフォルトの名無しさん [2009/03/04(水) 18:29:48 ]
たしかにそういう危険はありますね、自動的に追跡されると

165 名前:デフォルトの名無しさん mailto:sage [2009/03/04(水) 19:53:07 ]
自分の知らないところで何かが行われるのは気持ち悪い。
何かが起こってないか、定期的にチェックする必要があるから。

166 名前:86 mailto:sage [2009/03/04(水) 23:12:41 ]
リポジトリやディリクトリの移動をしたときにsvn::externalsを一括修正するスクリプトが欲しくなることはある。


167 名前:デフォルトの名無しさん [2009/03/05(木) 09:18:02 ]
svn log って過去方向にはコピーなども追跡して
取得してくれるけど、未来方向にそのリビジョンの
発展を知ることはできないのかな?

168 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 12:25:26 ]
TortoiseSVN 1.5.8, Build 15348であるフォルダを追加した時、
フォルダしか追加されなくて、そのフォルダ配下にあるソースとかが
追加されなくなっちゃったんだけど、仕様変わったの?

169 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 12:39:46 ]
>>168
どうやって追加した?

170 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 13:24:59 ]
>>169
複数のディレクトリを選択した状態で右クリック→追加

丁度今日になってバージョンを上げたんだけど、
1.5.6(7だったかも)の時はこのやり方でディレクトリ内の
ソースとかも追加されてた

171 名前:167 [2009/03/05(木) 13:43:44 ]
ふと思いついたんだけど,リポジトリ内には copyfrom しか
格納されていないわけだし,複数のディレクトリにコピーされる
可能性もあるわけだから単純にそんな機能作れないよなぁ.

とりあえず自分で pysvn でもつかって
追跡するスクリプト書いてみる.

172 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 13:44:28 ]
と書いていたら1.5.9が出ていたみたいなのでうpしてきますねorz
HPには1.6.0なんてのも見えますね・・

173 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 13:48:07 ]
Version 1.5.9
- BUG: Broken registry settings may prevent Check for Modifications dialog
from showing up. (Stefan Fuhrmann)
- BUG: Missing columns when copying to clipboard in Check for Modifications
dialog. (Stefan Fuhrmann)
- BUG: Showing Log for deleted paths should not trigger "go offline? dialog.
(Stefan Fuhrmann)
- BUG: Line endings lost in TortoiseMerge when using "use whole file".
(Stefan)



174 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 14:12:31 ]
>>171
無理でしょ。よく考えてみなよ。

175 名前:167 [2009/03/05(木) 15:53:38 ]
>>174
確かに簡単には無理っぽい
ダンプから抽出するスクリプトは書いた.
単に copy と add のアクションが同じパスで
ペアで出現しているのを抽出するだけだけど.

svn.haxx.se/users/archive-2007-07/0416.shtml
copyto があったらいいよなっていう話題は
出てるみたいだけど,実装されるのはまだまだ先だろうなぁ.

176 名前:デフォルトの名無しさん mailto:sage [2009/03/05(木) 19:05:07 ]
>>175
tortoiseSVNのりビジョングラフはどう?

177 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 04:51:22 ]
そういう話なのか?

178 名前:デフォルトの名無しさん [2009/03/06(金) 08:18:35 ]
リビジョングラフでやっているのは svn log -v / で表示される履歴を繋ぎ合わせているの?

179 名前:デフォルトの名無しさん mailto:sage [2009/03/06(金) 08:36:47 ]
分岐されてる状況が見たいんじゃないのか?

180 名前:デフォルトの名無しさん [2009/03/06(金) 09:30:08 ]
未来方向にじゃなかったっけ?

181 名前:デフォルトの名無しさん [2009/03/07(土) 08:50:01 ]
TortoiseSVNやsvnコマンドで svn+ssh によるアクセスをした時、
サーバ側では svnserve -t が実行されるのが普通だと思いますが、
これを変えることって出来るのでしょうか?たとえばルートを
変えたいとか。

もちろんサーバ側の authorized_keys に command= を指定する
ことで強制することはできると思うのですが、そうではなくて
クライアント側で設定できないものでしょうか?

182 名前:デフォルトの名無しさん [2009/03/07(土) 08:54:57 ]
C:\Users\Myname\.subversion\config
のようなファイルは、TortoiseSVN も見に行っているのでしょうか?

TortoiseSVN 以外にコマンドライン版のSubversionも
インストールして使っていたために、混在してます。

183 名前:182 [2009/03/07(土) 09:31:30 ]
C:\Users\Myname\.subversion\config
ではなくて
C:\Users\Takashi\AppData\Roaming\Subversion\config
でした。



184 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 10:18:14 ]
やぁたかし君

185 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 11:44:01 ]
いや実際のところは、kenji でも chimporoh でもいいんですけどね。

186 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 14:54:45 ]
NEC-PCuser だろフツー

187 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 15:03:15 ]
ふつーGuest User

188 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 23:07:44 ]
svnadmin hotcopyでのバックアップですが、
バックアップ先に前回のバックアップが残ったままのフォルダを
指定して再度実行した場合、正常なバックアップは取れるでしょうか?
もちろんバックアップ元は同じリポジトリです。(リビジョンは進行します)
それともバックアップ先を毎回消す必要があるでしょうか?


189 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 23:13:11 ]
subversionをバージョンアップする際に、
リポジトリはそのままでバージョンアップ可能ですか?
事前にダンプしておいて、バージョンアップ後に取り込みとか必要?

190 名前:デフォルトの名無しさん mailto:sage [2009/03/07(土) 23:49:59 ]
>189
都度リリースノート読むのがベスト。

BDB の時は、パッケージの BDB 自体のバージョンが上がった場合などに、
dump/load が必要になる場合がある。
FSFS の場合は基本的に大丈夫。
ただし、リポジトリフォーマットのバージョンを上げないと新しい機能が
使えない場合などがある。
1.5 の時は、merge tracking などで必要だった。
dump/load でなくて svnadmin upgrade で(手動だけど)その場で更新は
可能だった。

191 名前:デフォルトの名無しさん [2009/03/08(日) 10:19:11 ]
BDBのほうが枯れてて安定しているって記述を
見かけたんですが、それはすごい古いバージョンの
ものでした。いまでもFSFSよりBDBのほうが安定しているんですか?

192 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 10:40:22 ]
>>191
TortoiseSVNではリポジトリ作成時にBDBの選択肢が出てこなくなってるところから察してください

193 名前:デフォルトの名無しさん mailto:sage [2009/03/08(日) 10:54:34 ]
>>190
svnadmin upgrade は簡単なアップグレードだけで、りビジョンを1000ずつフォルダーに分けてくれる機能の変換はしてくれない
その機能を使いたい人はdump/loadする必要がある。



194 名前:デフォルトの名無しさん mailto:sage [2009/03/12(木) 17:17:19 ]
svn:ignoreを新規追加されたフォルダに対して自動的に適用するような事って出来ますか?

195 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 12:11:39 ]
ttp://svnbook.red-bean.com/en/1.1/ch07.html#svn-ch-7-sect-1.3.2
ここのglobal-ignores参照

196 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 13:12:59 ]
global-ignoresは自分にしか適用されないじゃん

197 名前:デフォルトの名無しさん [2009/03/13(金) 15:32:58 ]
tracと組み合わせて使うことが多いんだけど,
tracのwikiやチケットのデータも管理対象の
subversionリポジトリにぶち込めればいいのに.

とか思うのはあほ?

198 名前:デフォルトの名無しさん mailto:sage [2009/03/13(金) 19:30:29 ]
頻繁に更新されるし、検索向きとは思えないな。

199 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 17:35:58 ]
>>197
自分もそう思うからアホじゃないと思う。

いや、自分もアホなのかもしれないが。



200 名前:デフォルトの名無しさん mailto:sage [2009/03/14(土) 19:44:36 ]
tracをいじって、DBが更新される度に、
DBのダンプをリポジトリに突っ込むとかしたらどうだろうか。

201 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 01:13:09 ]
svnサーバを構築しようとしてます。初期設定ファイルをほぼそのまま使用し、現在、httpでならcoやciができます。
セキュアな通信をしたく、sshでの認証を入れようと思い、SSLRequireSSLを使おうとしました。

<Location /repos>
DAV svn
SVNParentPath /var/www/svn

<LimitExcept GET PROPFIND OPTIONS REPORT>
SSLRequireSSL
</LimitExcept>
</Location>

これでhttpdの再起動は成功するのですが、coなどが出来なくなります。
coしようとした際のエラーは以下です。
svn: Server sent unexpected return value (403 Forbidden) in response to OPTIONS request for (チェックアウトしようとしたuri)
サーバでsshdは起動しています。動かない原因を教えてもらえませんか?

202 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 11:18:41 ]
1.6.0リリース

203 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 11:19:06 ]
↑あ、>>201とは関係ないです



204 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 12:54:20 ]
なんか
2009/03/19 Subversion 1.6.0 Release Candidate 4 Released
が切ない


205 名前:デフォルトの名無しさん mailto:sage [2009/03/21(土) 17:21:39 ]
>>201
まて、sshで通信するならapacheは全く関係ないぞ?

206 名前:デフォルトの名無しさん [2009/03/22(日) 02:45:19 ]
TortoiseSVN 1.6.0 release age
tortoisesvn.net/node/364

207 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 10:32:14 ]
まだRC4か
SVN1.6は1.5と比べて何が変わるのやら

208 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 10:51:01 ]
>>207
ttp://subversion.tigris.org/svn_1.6_releasenotes.html

209 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 10:58:27 ]
英語分かんない><

210 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 11:05:26 ]
同じく。先生翻訳plz

211 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 11:21:16 ]
>>まだRC4か
普通に1.6リリースされてるじゃん

212 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 11:42:43 ]
TortoiseSVNを1.6にしてみたけど、Bug-IDって所のBの文字が文字化けしてる
俺だけかもしれないけど

213 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 11:46:59 ]
ログメッセージの画面にあるやつなら、うちもそうなる。



214 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 13:10:01 ]
>>210
ttp://www.excite-webtl.jp/world/english/web/?wb_url=http%3A%2F%2Fsubversion.tigris.org%2Fsvn_1.6_releasenotes.html&wb_lp=ENJA

215 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 13:29:50 ]
Google翻訳の方がまだ意味が通る翻訳の気がする

216 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 14:25:14 ]
転覆1.6

217 名前:デフォルトの名無しさん mailto:sage [2009/03/23(月) 14:27:38 ]
>>214
先生、暗号のようで分かりません><

218 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 00:27:18 ]
ほらよ、乞食ども。

Subversion 1.6 の新規項目

・認証用データの取り扱いの改善
 平文で保存する前の警告、KWallet や GNOME Keyring へのパスワードの保存
 SSL クライアント証明書のパスフレーズの保存のサポート
・リポジトリルートからの相対URL
 ^/ でリポジトリルートを意味する
・svn:externals の機能向上
 ファイルに対する svn:externals のサポート、クウォートのサポート等
・ツリーコンフリクトの検出
 ファイル内容だけでなく、ファイルの有無も考慮したコンフリクト
 (例:ローカルで修正したファイルに対するリモートでの削除等)
・ファイルシステムの使用量の改善
 Berkeley DB、FSFS の双方とも使用量削減
・ctypes による Python バインディング
・対話的なコンフリクト解決の改善
 dc(コンフリクトの表示), mc(コンフリクトに対してローカルを選択),
 tc(コンフリクトに対してリモートを選択)オプションの追加
・ディレクトリの working copy からの除外指定
 (ref. blogs.open.collab.net/svn/2009/03/sparse-directories-now-with-exclusion.html )
・svnserve のログサポート
・履歴を調べるための新しい公開 HTTP URI 構文
 example.com/repos/file?r=20 で revision 20 を参照可能
・コマンドラインクライアントの改善
 色々。
 特に大きいものとして、log に対して複数リビジョンが指定可能になったことと、
 --trust-server-cert オプションの追加。
・API 変更、改善、および多数の言語バインディングが動作
・65以上のバグフィックス、機能向上。

219 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 00:42:07 ]
1.5 と互換性無いの?
亀が 1.6 で
Eclipse の subclipse が 1.5 だとダメなんじゃないの?
アップデートするのが怖い・・・

220 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 00:48:13 ]
ワーキングコピーの形式がまた変わった。
よって、1.4→1.5の時と同じ注意が必要。
なお、TortoiseSVNとSubclipseは両方とも最新版で1.6対応してる。
SubversiveとAnkhSVNは調べてない。

221 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 01:01:55 ]
>>218
GJ

222 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 01:18:43 ]
えっ?Subclipseの最新版って????

おお〜!
eclipse のソフトウエア更新のURLを
subclipse.tigris.org/update_1.4.x
にしたままだった。
subclipse.tigris.org/update_1.6.x
にしたら最新版キター!

223 名前:デフォルトの名無しさん mailto:sage [2009/03/24(火) 11:18:57 ]
未だにexternalsの使い方が良く分からない
クライアント、サーバ、共通で使うアセンブリファイルとかあるから
重複管理したくないんだけど、こういうのでexternalsは使うのだろうか



224 名前:デフォルトの名無しさん [2009/03/25(水) 18:00:57 ]
worst practicesは、どこかで見たことありますけど、
Best practiceまとめたサイトとかありませんか?

subversionを実際にプロジェクトで使おうと思っているのですが、
1つのリポジトリに何を入れるべきかとか、
どういう単位でtrunkとbranchを分けたらよいとか、ぜんぜんわからないので。

たとえば5,6人くらいで半年のプロジェクト(仕事のプロジェクト)で、
OSなしの組み込みプログラムいくつかと、それと通信するWinのプログラム
DLLと、exeをそれぞれいくつかを、開発する。みたいな場合で、
それぞれをどうやって管理するとよいのか。とか、参考になるような
情報を求めています。


225 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 00:15:09 ]
>>223
そだよ

226 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 00:26:43 ]
>>224
とりえず適当なプロジェクト単位でtrunkを作る。makefileとかソリューションとか。
trunkは共有できる。いきなりtrunkにコミットするのは怖いからbranchを作って徹底的に試験してからtrunkにマージする。
trunkの分け方が使いづらいと思ったらいつでも移動できるし、戻したいと思えばいつでも戻せるし。
あんまり考えすぎる前に使ってみるのがよろしい。


227 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 11:58:58 ]
>>226
trunkに恒常的にコミットしないのは一般的じゃないな。
基本trunkにコミットで、
テストが終わったとかリリースしたとかのイベントの度に
tagsにコピー、が一般的じゃね?

trunkは怖くて当然。
テスト済みの不安のないソースはtagsから取る、がうちの流儀。

228 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 13:09:25 ]
trunkが常に壊れないようにするために、>>226のやり方は一般的だよ

というかbranchesはそういう使い方をするためにある

229 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 13:29:32 ]
うちでは、
trunk・・・ 常に最新、ビルドは通るが不安定
tags・・・ ちゃんとバージョンをつけてリリースした時の各状態
branches・・・ まとまった機能追加などで、他に影響を及ぼさないで
         ごちょごちょやりたい時にブランチ作成
         (しかしなるべく早くtrunkへマージ)
ってやってる。

230 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 13:49:19 ]
うちもtrunkは容赦なくコミットされていくよ
trunkが壊れると困る!みたいな意見は出ない

231 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 14:14:11 ]
業務終わりに出来てようがいまいがとりあえずコミットして帰る人とか、
何か勘違いしてる人がいたら、その人限定で枝をあげて、
「trunkにはコミットしないように」って厳命する。

232 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 14:16:57 ]
そんな窮屈なやり方を強制させるんならおとなしくMercurialなり何なりにさせろよ

233 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 14:38:49 ]
>>228
apache.orgやsourceforge.netのいくつかのプロジェクトを見る限り、
>>226,228の方が少数派だな。
というかそうやってるところってどこにある?



234 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 15:15:46 ]
こういう流れを待っていた
他所がどんな風にまわしてるかってあんましらないしな


235 名前:231 mailto:sage [2009/03/26(木) 17:07:11 ]
>>232
そういう人には業務させてあげているだけです。
決してtrunkにはマージされないですよ?
居なくなるまで仕事させとかないわけにはいかないので。

236 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 17:36:42 ]
そんな指示を出す前に、正しいコミットルールを指導してやれよ。

237 名前:デフォルトの名無しさん mailto:sage [2009/03/26(木) 23:44:38 ]
>>231
本末転倒すぎてありえないわ
あほな運用だなぁ

238 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 00:22:17 ]
すべてtrunkでいいだろ。
何のための履歴管理だw

239 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 01:16:28 ]
実験的な実装したいときはbranch切るけどな。

240 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 08:27:30 ]
すべてtrunkってwww
個人開発に毛が生えた程度でならそれで済むかもしれんけどww

241 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 10:16:00 ]
>>240
Subversion 本体の開発は基本的に trunk にまず全部突っ込む形なわけだけど、
それも「個人開発に毛が生えた程度」だと思ってるの?

242 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 10:43:00 ]
trunkに制限かけるんなら、おとなしくsvk使わせなさいよ

243 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 11:09:20 ]
いやほら、きっと「branchで開発するのが当然で、trunkに突っ込むのは馬鹿」って教育を受けてきたんだよ。
某元死刑囚みたいに外の世界を知るまでそれ以外の発想ができなくなるのも仕方ないよね。



244 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 11:59:42 ]
なんか熱くなった上に自演してるやつまでいるな

245 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 12:14:21 ]
>>241
「基本的」には確かにそうだね。
でも、その「基本的」な使い方だけですべて済んじゃう(すべてtrunkでいい)
と言ってのけたのを指して、個人開発に毛が生えた程度のことしかやってないんだなと
判断されたわけだ。

246 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 12:22:19 ]
この手の運用方法で罵り合う連中こそアホだろ
不毛も良いとこ

247 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 12:26:19 ]
「すべてtrunk」を「trunkだけで十分、tagsもbranchesもイラネ」と捉えるのは
拡大解釈が過ぎる。

248 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 12:26:58 ]
すべてtrunkはないわー
それこそ、何のためのブランチだってのをもっかい入門書読み直してみたらいい
ブランチもタグも、意味なく使われているわけではないでぇー ほんまやで!

249 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 12:28:12 ]
むしろほかにどう捉えろと

250 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 12:40:22 ]
というか、「出来ていまいがtrunkにコミットして帰る」というのが責められるべき点なのでは。

251 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 12:45:29 ]
それと今の話って関係なくね?

252 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 12:55:55 ]
ぶっちゃけこういう使い方が正しいなんてのは無いんじゃないの?
trunk安定板にする運用でもリリース準備のたびにbranchでバグフィックス運用でも
まわってるならそれでいいじゃない。

>>231の使えない奴を隔離するために使うってやり方は
おかしいっていうより気持ち悪いけど。

253 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 12:58:36 ]
pre-commitでそのユーザからコミットが来たらコンパイルさせてエラーになったら弾けば良いんじゃね



254 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 13:01:43 ]
まあ、確かに規模によっても最適な使い方は変わるだろうし、
これが正解ってものもないわな
>>231みたいに、誰が見てもアレだってのはるかもしれんがw
書かれてる人も、>>231自身もね。類は友を呼ぶってやつか?

255 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 13:12:22 ]
まあどうしてそういう運用してるか、その運用だと何が便利なのかを説明した点だけ
評価出来るかな。説明した内容に誰も同意しなかったがw

256 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 13:49:14 ]
>>252
>ぶっちゃけこういう使い方が正しいなんてのは無いんじゃないの?

正しくない運用、というのはある。
ビルド出来ないものをコミットする奴は死刑。

257 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 13:51:49 ]
全てtrunk運用の場合、
trunkにr1000、r1001、r1002、r1003、r1004ってあって、r1001とr1003が糞commitだった場合、
どうやって、r1004からその影響抜くんでしょうか。何かいいやりかたある?
テストだけで糞commitを見切れるもんかな?
branch切ってたら、branchからマージするときだけ検証すればいいけど。
mercurial使うのが正解だとは思う。

258 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 14:05:06 ]
うちは基本trunkにコミットだけど、
>>257を読んだら、信用できないコミットがしばし起こるという前提なら
普段は個別のbranchにコミットして、テストが済んだらtrunkへマージ、
というのもありな気がしてきた。
うちは目の届く範囲の少人数でやってるせいか、
幸いにして>>257のような状況は経験していない。

話は若干変わるが
TracやRedmineなどのBTSでいうチケットごとにbranch作って、
チケットがクローズしたらマージってのもありか?
いや、そうやってるわけじゃないんだけど。

259 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 14:49:12 ]
俺は頻繁に(1日に20〜30回とか)コミットするので、いつもbranchを使ってる。

260 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 14:50:48 ]
>>258
> チケットがクローズしたらマージってのもありか?

branchをそのままリリースするならあり。
マージしたtrunkをリリースするなら、マージした物に対してテストしないと無意味。

261 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 15:14:10 ]
>>257
branchからマージするときに検証したとしても
そのときの検証だけで糞commitを見切れるもんなの?
その主張の本質はbranchの有無はあまり関係なくて
チェックを多くすれば間違いが減る(かもしれない)
という当たり前のことじゃね。

262 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 15:51:40 ]
たしかにそうだな。
っていうかデグレをなくすにはどうしたらいい?っていう
もうちょっと一般的な命題なんじゃね?それって。

ところで>>257の言うところの糞コミットってのは
仕様上ちゃんとしたものだけど、実装の仕方やコードの品質がゴミなコードってことかね。
そういうのだったらコードレビューでもするしかないような。


263 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 16:27:37 ]
レビュー体制にもよるよなあ。
コミット前に必ずレビューするのか本流っぽいところにマージする時だけレビューするのか。
オープンソースのプロジェクトにかかわったことないんだけど
そこらへんどうしてるんだろ。



264 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 17:21:34 ]
デグレの使い方が間違っとる

265 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 18:12:43 ]
ブランチ→修正→検証→コミットのサイクルを繰り返してtrunkの安定度が少しずつ上がるんじゃないか?

266 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 18:14:01 ]
>>265間違えた
trunkからブランチ→修正→検証→trunkにマージのサイクルを繰り返してtrunkの安定度が少しずつ上がるんじゃないか?

267 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 18:27:09 ]
trunk: 最新版
branch: trunkからリリース準備単位で派生
tag: branchからリリース完成単位で派生、基本ここは修正しない(bugfixはbranchで)

ってのがsubversionのドキュメントでサンプルに出されてた使い方だったかと。

自分はこれに加えて実験的なことしたい時もbranchを切るやり方でやってる。
少人数の上仕事で使ってるわけじゃないからこれでべつにいっかなーと。

268 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 18:40:26 ]
>>267
apacheとかeclipseとか、
メジャーなオープンソースプロジェクトはだいたいそんな感じだね。

269 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 18:45:23 ]
Redmine使ってるんだが、ブランチ切って作業すると
プロジェクトの指してるリポジトリと合わなくなって困る
なんとかならんのか

270 名前:デフォルトの名無しさん mailto:sage [2009/03/27(金) 20:51:09 ]
>>267
それで困ることってあるんかな

271 名前:デフォルトの名無しさん mailto:sage [2009/03/29(日) 13:00:46 ]
うちは、trunkにコミットしたものは1分後にHudsonがビルド〜テストを開始するので、
- Hudsonで扱って欲しいもの->trunkへ
-- ビルドエラーが起こるソースコードをコミットすると、Hudsonのログでさらし者。
-- テスト結果もHudsonのログに残す。
- 実験的なもの(Hudson側の設定を行っていない)や大改変中でビルドエラーがあるもの ->branchesへ
- リリースやマイルストーンごと区切り(テスト区が関わる)-> tagsへ(tagsにsvn copy出来るのは中核メンバー数人だけに制限)


272 名前:デフォルトの名無しさん mailto:sage [2009/03/29(日) 16:23:41 ]
Hudsonって何?

273 名前:デフォルトの名無しさん mailto:sage [2009/03/29(日) 16:30:37 ]
ググりゃすぐでてくるがな。




274 名前:デフォルトの名無しさん mailto:sage [2009/03/29(日) 16:31:21 ]
やらなきゃ

275 名前:デフォルトの名無しさん mailto:sage [2009/03/29(日) 17:19:38 ]
>>272
ttp://gihyo.jp/dev/feature/01/hudson/0001

276 名前:デフォルトの名無しさん mailto:sage [2009/03/29(日) 22:45:51 ]
ぐぐった。
img2.timeinc.net/people/i/2006/celebdatabase/katehudson/kate_hudson1_300_400.jpg

277 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 10:53:06 ]
担当が突然消える場合(病気、事故、失踪)に備えて、個人用ブランチに毎日コミットさせてる。

278 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 11:22:21 ]
まさかとは思うけど、個人的にsvkやgit-svnを使用することを禁止してるところってないよね?

279 名前:278 mailto:sage [2009/03/30(月) 20:50:26 ]
「個人的に」はわかりにくいか。
社内のSubversionレポジトリへsvkやgit-svnでのアクセスを禁止してるところは…て意味です

280 名前:デフォルトの名無しさん mailto:sage [2009/03/30(月) 21:11:18 ]
状況によるんでない?
何するツールなのか知った上で禁止してるのか、
知らないからこそ勝手ツールとして禁止してるのか。

個人用のブランチ切れ&守秘義務的に繋った場所での作業Onlyって運用ルールだと
メリットも薄れるだろし。


281 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 10:42:09 ]
svkの使用は禁止されてないが
svkからのpushは禁止されてる

282 名前:デフォルトの名無しさん [2009/03/31(火) 12:47:13 ]
あのさ,遠隔地でどうしてもリポジトリにつなげないとき,
ワーキングコピーに対して行った変更を何らかの方法で
(たとえばメールとかで)リポジトリ管理者に
渡して更新してもらうってのは無理?

patch ファイル作ってっていうのがまずはじめに思いつく
方法だけど,プロパティの変更とかそういったものまで
含めた patch ファイルのようなもの(ダンプの一部みたい
なもの)を生成してリポジトリ管理者側で流し込んでもらう
手のは無理だろうか.

ワーキングコピー全体を渡せよってのは,ちょっと規模が
大きくてやりたくない.

283 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 13:06:17 ]
変更(外出)前のワーキングコピーを両方に保存しておいて
ワーキングコピーの差分だけ送る



284 名前:デフォルトの名無しさん [2009/03/31(火) 18:28:19 ]
svnserve って一応認証あるけどやっぱりインターネットに
さらしておくと危険かな?

今のところ安心感をとって ssh+svn でアクセスしてるんだけど.

285 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 19:25:03 ]
そりゃまあ普通のプログラムである以上、exploitが見つかったら攻撃されるだろし
必要なIP範囲が決ってるならそれ以外をフィルタリングするぐらいのことはしていいんじゃね?

svnserve内のアクセス権設定がちゃんとしてるのは大前提だよね。
盗聴されるかどうかはsshで繋いでりゃとりあえずは安心だとは思うけど。

286 名前:デフォルトの名無しさん mailto:sage [2009/03/31(火) 22:25:56 ]
FreeBSDはリードオンリーだけどsvn晒してるな。

287 名前:デフォルトの名無しさん [2009/04/01(水) 16:36:54 ]
ActiveDirectoryを使ってユーザーの認証はできたのですが、
ユーザーごとのアクセス制御ができないです。
(ログインすると全てのレポジトリへRead,Writeができてしまう)
AuthzSVNAccessFileを指定するとユーザー名、パスワードの入力後にサーバから切断されてしまいます。
LDAPを使用する場合、個別のアクセス制御などはできないのでしょうか?
参考となるサイト等がありましたら教えてください。

httpd.confの内容::
<Location "/svn/">
DAV svn
SVNParentPath "D:\TracLight\projects\svn"
SVNListParentPath on
AuthType Basic
AuthName "Enter your LDAP ID"
AuthBasicProvider ldap
AuthLDAPBindDN admin@example.com
AuthLDAPBindPassword pass
AuthLDAPURL "ldap://ldap-server:389/dc=sample,dc=com?sAMAccountName?sub?(objectClass=*)"
Require valid-user
AuthzSVNAccessFile "D:\TracLight\projects\svnauthz"
↑この行を追加するとページの読み込みエラーになる
</Location>




288 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 10:20:04 ]
すいません、ブランチについて質問なのですが、

1. ブランチを切る
2. ブランチのみへコミットして、トランクは全くいじらない
3. ブランチの変更をトランクへマージ

このような変更を行ったところ、予想では全くコンフリクトが起こらずスムーズにマージされると思ったのですが、
実際には一部のファイルでコンフリクトが起こりました。(ほとんど自分しか使わないためこういうことがよくあります)

今までブランチをほとんど使ったことがなく、仕組みもよくわかっていないのですが
(いろいろ解説を読んだのですが、いまだによくわからないorz)
これはこういうものなんでしょうか?

そして、ブランチの変更を全面的にコミットするには、
1. .rXXXファイルの内容を元のファイルへ上書き
2. コンフリクトを解消
であっているんでしょうか?それとももっと効率的な方法はありますか?

289 名前:デフォルトの名無しさん [2009/04/03(金) 12:29:37 ]
トランクは全くいじらなければ
(そして他のブランチからのマージもしなければ)
コンフリクトが起きるってことは無いと思うんだけどなぁ.

もしかして古い Subversion クライアントでマージ
トラッキングの機能がない奴を使ってるとか.

290 名前:288 mailto:sage [2009/04/03(金) 13:00:54 ]
>>289
TortoiseSVN, subversive(Eclipseのプラグイン)両方の最新版で試してみましたが、両方ともそうなりました。
subversiveの方では、branchの変更を戻すとき用のメニューである"再統合"を使いましたが、結果は上の通りでした。

291 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 14:44:16 ]
そもそもなぜ衝突が起きるのかを理解してんのかね

292 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 14:47:57 ]
>>288の言ってることが正しいなら、「衝突が起きて当たり前」とは到底思えないが…

293 名前:288 mailto:sage [2009/04/03(金) 14:48:48 ]
>>291
同時に同じファイルの(だいたい)同じ個所を編集して、コミットするからですよね?
その通りなら、絶対同時に編集していない私のケースは、やっぱりおかしいんでしょうか。



294 名前:292 mailto:sage [2009/04/03(金) 15:11:20 ]
>>293
微妙に理解が違うかな。
・trunkで、あるファイルのある場所を更新した。
・branchで、同じファイルの別の場所を更新した。
これを行っていれば、trunkに対しbranchで行った変更をマージすると衝突する可能性がある。
「いつ」変更したかは関係ない。

>>288では
>2. ブランチのみへコミットして、トランクは全くいじらない
と言っているので、本当にそれが正しいなら衝突は有り得ないと思うんです。
どうして衝突したんだろう。

295 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 15:11:51 ]
コンフリクトマーカーの所見ればいいじゃん。
何で見ないの?

296 名前:292 mailto:sage [2009/04/03(金) 15:29:27 ]
>>295
マーカー見ると、二つのファイルでdiffしたところが示されます。
つまり、

A
B
C

297 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 15:32:19 ]
じゃあ、原因分かるでしょ。

298 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 15:34:20 ]
差分みりゃわかるわなあ。


299 名前:292 mailto:sage [2009/04/03(金) 15:35:42 ]
すいません、途中で書き込んでしまいました。

マーカー見ると、二つのファイルでdiffしたところが示されます。
つまり、

A
B
C

というファイルを、ブランチで

A
b
C

という風に編集すると、マージしたとき

A
<<<<<< .r2
b
====
B
>>>>>> .r1
C

という風になります。

300 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 15:36:30 ]
勘だと、
2度目のマージなのに根元からマージした。
もしくは、キーワード置換を有効にしてる。

301 名前:292 mailto:sage [2009/04/03(金) 15:38:05 ]
もしかするとsubversiveを使ってブランチを切ったので、その辺で設定を間違ったのかもしれません。
一度TortoiseSVNのみでブランチを編集するとどうなるか試してみます。
相談を聞いていただきありがとうございました。

302 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 16:23:07 ]
どうでもいいけど、そう言うツールをほいほいとあれこれ使いまくらずに
まずは一つに絞って使えよ

303 名前:デフォルトの名無しさん mailto:sage [2009/04/03(金) 17:04:09 ]
行末とか漢字コードとか



304 名前:292 mailto:sage [2009/04/08(水) 12:02:20 ]
すいません、原因がわかりました。
subversiveでブランチを切るとき、ブランチの位置をフルパスで指定していたのですが、
どうやらそのために別のリポジトリへブランチを切ったと判断されていたらしく、
そのために過去の変更履歴が参照されなかったようです。
どうもお騒がせしました。

305 名前:デフォルトの名無しさん [2009/04/10(金) 15:07:32 ]
Subversion 1.6.1 release age
svn.collab.net/repos/svn/tags/1.6.1/CHANGES

306 名前:デフォルトの名無しさん [2009/04/11(土) 10:06:12 ]
TortoiseSVN 1.6.1 release age
sourceforge.net/project/shownotes.php?release_id=674821

307 名前:デフォルトの名無しさん [2009/04/11(土) 11:44:17 ]
ruby binding で
svn ci path_to_project --encoding=UTF-8
相当を行うにはどうすればよいのでしょうか?

ctx = Svn::Client::Context.new()
ctx.auth_baton[Svn::Core::AUTH_PARAM_DEFAULT_USERNAME] = ''
ctx.add_username_provider
ctx.add_simple_provider
ctx.ci(path_to_project)

このようにすると、can't convert native code to 'UTF-8' みたいエラーがでます。
そのため、--eoncoding に相当するようなコードを入れたいのです。

308 名前:デフォルトの名無しさん mailto:sage [2009/04/12(日) 11:09:03 ]
なぜ人事部長直通の電話番号を知っているんだ

309 名前:デフォルトの名無しさん mailto:sage [2009/04/12(日) 11:09:43 ]
誤爆すまん。

310 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 06:59:32 ]
アルミ MacBook の Mac OS X 10.5.6 で Subversion を使いたいので Versions
を購入したのですが Windows の TortoiseSVN に慣れているためどうしてもな
じめませんでした。

そこで SCPlugin の最新版 SCPlugin-0.7.3l-SVN.1.6.0pkg をインストールした
のですが、右クリックメニューは正しく使用できるものの、ステータスアイコン
がフォルダのみ表示され、ファイルでは表示されません。正確には、一瞬表示さ
れるのですがすぐに消えてしまいます。

色々調べたのですが原因が分からず困っています。どなたか修正方法ご存じな
いでしょうか? subversion は port から 1.6.1 が入っています。

311 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 12:01:13 ]
TortoiseSVNを落とす時にSourceForgeに繋ぐんだけど
ファイルをダウンロードする時にたまに出てくる
虫がぞろぞろ出てくる画像のせいで女性社員から苦情が来た


知らんがな・・・

312 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 13:57:52 ]
海外のHP行くと時々グロいのを平気で表示するよね。

313 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 15:50:16 ]
たぶんグロと感じるかどうかのベクトルが違うんだと思うが



314 名前:デフォルトの名無しさん mailto:sage [2009/04/13(月) 15:51:33 ]
確かにあの虫がうじゃうじゃ出てくるのはキツい。

315 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 11:09:27 ]
フィルタリングしてないの?
社内proxyで弾くとか。

316 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 11:10:33 ]
ちっさい会社ならすぐ対応出来るだろうけどな

317 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 12:42:25 ]
亀で svn update してみたけどクソすぎる。コンフリクト出まくり。
今から鬼のような大量の差異を手作業で修正しなきゃならん。
やっぱ eclipse にしときゃよかった OTZ

318 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 12:43:44 ]
はぁ?

319 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 13:01:01 ]
わけのわからん略語を使いたがるやつにかぎって
スキルが低い法則

320 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 13:05:58 ]
知らないならレスしないでください。
このスレの住人には「亀」がわけのわからん略語なのか?

321 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 13:06:47 ]
いや、もしかして「コンフリクト」がわからんの?

322 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 13:24:10 ]
svn updateだとコンフリクトでまくり
eclipseで○○だとコンフリクトでない

さあ○○は?

323 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 13:29:02 ]
普通ならMergeされる
コンフリクト起こしまくるってのは、分担の仕方から考え直せ



324 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 13:29:33 ]
というか、そもそもeclipseはsvnクライアントではないし、
さらに言えばマージにクライアントの差なんてあるか。
きちんと設定すればどんなソフトでも同じようにマージできるはず。

325 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 13:42:27 ]
頓珍漢なこと言ってるからどう反応したらいいのかわからんのに
当人は自分が変なこと言ってるのがわかってないんだろうなw

326 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 13:46:01 ]
updateでコンフリクトかぁ。ひょっとして、>317は開発チームの中でハブられているんじゃね?

数年前、某所の大規模開発でCVSをロックしたまま帰るという嫌がらせが横行したのを思い出した。

327 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 13:52:16 ]
>>320-321
ものすごい反応ぶりワロタ

317よ、君が一生懸命玄人ぶろうとしているのは分かるが、
>>324 がすべてだ。もう森へお帰り。

328 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 13:57:50 ]
つうか、煽り煽られもいいんだがきちんとした状況を書けよ。
何の説明もなくだた愚痴を書くから荒れるんだ。
きちんと説明したら、ここの暇な住人が原因の一つも推測してくれるだろうよ。

329 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 13:59:56 ]
コンフリクトしまくるような割り振りしてるのが悪いんじゃないの

330 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 14:04:59 ]
>>329
>326

331 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 18:19:30 ]
俺も >>326 に一票
おそらく svn のなんたるかも教育させてもらっていない >>317 の状況に涙を禁じ得ない

332 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 18:39:50 ]
WinXP SP3にTortoiseSVN 1.6.1を入れたところ、次のような現象が出ました。
・リポジトリパスが日本語を含むUNCのときリポジトリブラウザで表示できない
・コミット時に次のようなメッセージが表示され、コミットできない
「Cannot accept non-LF line endings in 'svn :log' property」

結局、1.5.9に戻しました。
皆さんのところでは1.6.1はきちんと動いていますか?

333 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 18:40:01 ]
>eclipseで○○だとコンフリクトでない
>さあ○○は?

>というか、そもそもeclipseはsvnクライアントではないし、

なんだ、おまいら、そんな事で顔真っ赤にしてたのか。
はいはい。大阪城を建てたのは大工さんだよ。
これで満足かい?ブタ野郎w



334 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 18:41:13 ]
Windows でホームページを見る。

Windows はウエブラウザじゃ無いだろ?

335 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 18:42:06 ]
インターネットエクスプローラでホームページを見る。

あほ、液晶モニタで見てるんだろw

336 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 18:45:25 ]
>>332
・リポジトリパスが日本語を含むUNCのときリポジトリブラウザで表示できない
→ 特に問題なし

・コミット時に次のようなメッセージが表示され、コミットできない
「Cannot accept non-LF line endings in 'svn :log' property」

→ 1.6.0でも起きる。ログを改行なしでコミット、その後にログ編集で改行加えて対処した。file://管理だと起きる気がする。

337 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 18:47:11 ]
ログに改行があるとコミット出来ないやつは、svnadmin update やったら出来た覚えがある

338 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 18:47:42 ]
>Cannot accept non-LF line endings in 'svn :log' property
これ、Rubyのレポジトリを1.6.0でsvnsyncしようとしたときにも発生したなぁ
(結局1.5.6のsvnsync使ったけど)
1.6.1では直ってるのかな?

339 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 18:51:46 ]
>Cannot accept non-LF line endings in 'svn :log' property
あるリポジトリだと起きて、あるリポジトリだと起きなかった。
リポジトリのバージョンなのか、プロトコルの違いなのかは分かんない。

340 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 19:07:47 ]
ところで、SubclipseってTortoiseSVNよりマージ機能が優れているの?
どれもこれも同じだと思っていたんだけど。

341 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 20:23:26 ]
subversiveかも知れんぞ。

ってまあ、何使ってもご本尊は一緒だべ。

342 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 21:38:37 ]
emacsのpsvnよりはどっちもつかいやすい

343 名前:デフォルトの名無しさん mailto:sage [2009/04/14(火) 22:47:15 ]
>>332
『)』『た』『体』『等』なんかの一部の文字の後に改行してるとその現象出てくる。
これらの文字の後に半角スペース入れて改行するとコミットできるのでとりあえず自分はそれで回避してる。
上の人も言ってるけど1.6.0からで、file://だと発生するぽい(http://とかは知らない)。

Subversionで svn commit -F logfile した時だと同じ内容でもコミットできたり。
(改行コードはCRでもLFでCR+LFでもいけた)

TortoiseSVNのバグなんかね。



344 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 00:14:48 ]
Subversion 1.4.5を使っているものです。
以下の事をしたいのですが、諸兄だったらいかがいたしますか。ご教示下さい。

<前提条件>
・開発用PC*n台、サーバA、サーバBの構成。全てWindows。
・サーバAはリポジトリサーバとして使用。
・サーバBはWebサーバとして使用。
・開発用PCとサーバBに同等のワーキングコピーがある。

<実現したいこと>
・開発用PCでcommitすると、サーバBのワーキングコピーが自動的にupdateされるようにしたい。

試しているがNGなのが、以下のやり方。
サーバAのpost-commit-hookに、サーバBのワーキングコピーのsvn updateを仕込む。(が、動作せず。)

svn up \\server-b\svnwork\pub\ >> \\server-b\svnwork\pub\svnup.log

同じコマンドの手動(コマンドプロンプトへの直打ち)実行は成功したので、コマンドミスではないです。
また同様のフックスクリプトで対象がローカルドライブのものは成功するので、フックは動作していると判断。
フックスクリプトでのネットワークパス(UNC)参照のやり方がマズいのか。単に仕様上不可なのか。

2日間悩んでますが、解答が得られずにいます。ボスケテ。長文スマソ。

345 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 00:20:59 ]
まさか・・・
ドライブを割り当ててないでバッチファイルを動かしてるとか
そんな初歩的なんじゃないだろね・・・

346 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 00:33:17 ]
>>345
レスありがとうございます。

net useの事であれば試しましたが、結果は失敗でした。
コマンドプロンプトでは成功するコマンドが、フックスクリプト内で失敗する理由をご存知ですか?
初歩的な質問ですみません。


347 名前:344 mailto:sage [2009/04/15(水) 00:50:22 ]
>>345
えーとその時は確かこんな風でした。

net use X: \\server-b\svnwork
svn up X:\pub\ >> X:\pub\svnup.log
net use X: /delete

これも手動でバッチを実行すると成功しますが、フックから呼び出すと失敗でした。
何か根本的に考え方が間違っておりますか?

348 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 00:56:06 ]
>>332
tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=757&dsMessageId=89646
1.6.1 のリリースの後に報告されて、修正されたらしい。 1.6.2 を待つか、 nightly build を
使うのがいいかも。

349 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 01:12:35 ]
>>347
subversion.bluegate.org/doc/ch05s02.html
の権限のあたりの話とか

>SubversionはSubversionリポジトリにアクセスしているプロセスの所有者
>としてフックを実行しようとします。


350 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 01:21:12 ]
>>347

何かエラーメッセージは出てないの?
こんな風にエラーメッセージを記録してみては?

net use X: \\server-b\svnwork >> X:\pub\svnup.log 2>&1
svn up X:\pub\ >> X:\pub\svnup.log 2>&1
net use X: /delete >> X:\pub\svnup.log 2>&1


351 名前:347 mailto:sage [2009/04/15(水) 01:39:45 ]
>>349 >>350
ありがとうございます。

349さんのリンク先にティップとしてこんな事が。
「・・・環境変数は全く設定されない状態で実行します。このため多くの管理者は手でフックスクリプトを実行するとうまくいくのに、Subversion によって実行されたときにはうまくいかないことに困惑します。・・・」

これかもしれません、すっかり見落としていました。明日早速確認してみます。
日中はレスできませんので、また夜に結果をご報告します。

350さんのやり方でエラーメッセージの確認もしてみます。

もしこれだったら、本当にありがとうございます。
svnsyncしてミラー先でpost-commit-hookとか、server-bのタスクスケジューラで定期updateとか考えていましたが、
そんなことをしなくても済むかもしれません。

それでは、おやすみなさいませ。

352 名前:332 mailto:sage [2009/04/15(水) 10:29:31 ]
>>336-339 >>343 >>348
ありがとうございます。
確かにfile://を使っています。
1.6.1で報告されている不具合だったんですね。

とりあえず1.6系列をウォッチしながら1.5系列を使い続けたいと思います。

ちなみに1.6で作ったリポジトリは「バージョンが違う」とか出て
1.5のクライアントではアクセスできませんでした。

353 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 12:13:38 ]
おお、TortoiseSVN で1.6.1にしたらいきなりコミットできなくて焦った。
Nightly にして無事コミットできるようになった、情報サンクス。



354 名前:デフォルトの名無しさん [2009/04/15(水) 22:28:22 ]
あるファイルだけ内容に関係なくUpdate,Commitをかけるたびに毎回更新されるようにしたいのですが、どうすればよいでしょうか。
というのは、リビジョン番号をフォルダーごとCommit掛けるたびに最新の番号に置換したいのです。
そのファイルを変更すればコミットがかかるのですが、変更しなければコミットがかからないので、最新のリビジョン番号を
そのファイルに取得できないのです。


355 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 22:41:48 ]
なんでそんな運用を・・・??

356 名前:354 [2009/04/15(水) 23:02:43 ]
最新のリビジョン番号をソースファイルに埋め込んでコンパイルしたいのです

357 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 23:14:03 ]
Makefileに「最新リビジョン番号を取得してVersion表示ファイルの該当箇所を置換する処理」を記述する

358 名前:デフォルトの名無しさん mailto:sage [2009/04/15(水) 23:47:58 ]
>>356 www.google.co.jp/search?q=SubWCRev

359 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 01:05:32 ]
FOR /F "usebackq" %%I in (`svnversion -n`) DO SET R=%%I
ECHO #define REVISION %R% >revision.h
make

みたいな・・・

360 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 13:05:44 ]
rcs のころって ソース内に $Revision$ とか書いとけば勝手に置換してくれてたよな。
一応その機能は残ってるみたいで特にソフト追加せんでも設定すりゃ出来るらしい。
全然追ってないので詳細は自分で調べてちょ。

jh4xsy.asablo.jp/blog/2006/04/21/336445
fuga.jp/~densuke/hiki/?subversion

361 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 13:16:28 ]
ttp://subversion.bluegate.org/doc/ch07s02.html#svn.advanced.props.special.keywords

これだな。
多分これの Revision が望んでるものだと思う。
RCS & C の例とかだと以下みたいにして使ってた。

static char rcs_revision[] = "$Revision$";


362 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 13:20:18 ]
すまん。
プロジェクト(フォルダ?)の最新リビジョン番号が欲しいんであってファイルのリビジョン番号とは違うのか。
上のURLの情報はたぶんとっくにご存知のようだな・・・


363 名前:デフォルトの名無しさん mailto:sage [2009/04/16(木) 14:21:14 ]
revision.c にこう書いておいて
static char *revision = "9999";

バッチでこうるす
FOR /F "usebackq" %%I in (`svnversion -n`) DO SET R=%%I
perl -i.bak -pe "s/revision = .+?;/revision = \"%R%\";/;" revision.c
make

みたいな・・・



364 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 03:25:53 ]
だから、 SubWCRev でいいだろ。

365 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 09:53:27 ]
それゲイツOS専用じゃないの?

366 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 11:25:13 ]
SubWCRev って TortoiseSVN に入ってるみたいね。
linux 版にも入ってるの?
つか、linux に TortoiseSVN ってあるの?
ゲイツOS専用じゃ使えね〜よ。

これだからマウスの付いたパソコンしか使った事の無いヤロウはダメなんだ・・・

367 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 11:27:58 ]
Linuxなら>>357でいいじゃな〜い

368 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 11:34:41 ]
ゲイツOS使ってるならSubWCRevを使う、UNIX系OSならMakefileに自前の処理でいいじゃない。

あと今時 UNIX = linux と思ってるやつがいることに驚愕。




369 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 11:46:59 ]
Linux⊂UN*X

370 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 15:42:55 ]
>>368
> あと今時 UNIX = linux と思ってるやつがいることに驚愕。
今時「だからこそ」、じゃないのかね?

371 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 15:56:45 ]
今時の人はLinuxを知っていてもUNIXは知らない

372 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 16:11:17 ]
MacOSXv10.5がいつのまにかUnix認証を受けてやがる

373 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 16:21:51 ]
マトモで使いやすいOSを追求していったらUnixに辿り着いた、
ってことかw



374 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 16:51:17 ]
だからぁ、
「Makefileに自前の処理」
を具体的にどう処理するかを聞いてるんじゃないか。
もう、このスレの住人はバカばっかし。レベルが低すぎる。

375 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 16:57:15 ]
>>374で初だろ?聞いたのは。

svnコマンドで最新のリビジョン番号を取得する方法はわかるよな?
あとはLinux板のシェルスクリプトスレで聞きな。

376 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 16:59:14 ]
SubWCRev、SubWCRev、SubWCRev って連呼してるバカに言ってるんだよ

377 名前:デフォルトの名無しさん [2009/04/17(金) 16:59:15 ]
試してないけど、こんな感じじゃないかな。
----
main: main.o /tmp/revision.o
$(LINK.cc)

/tmp/revision.c: revision.c
/bin/sed s/REVISION/`svnversion`/g < $^ > $@

378 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 17:00:55 ]
けっきょく、svnversion と sed か perl でFAだな。
この方法なら Windows でも UNIX/LINUX でもいける。

379 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 22:36:40 ]
.svnしか残ってないフォルダの一覧を
探すのってbashでどう書けばいいですか?
なんかいい方法ないかしら?


380 名前:デフォルトの名無しさん mailto:sage [2009/04/17(金) 22:38:33 ]
>>379
スレ違い。

381 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 02:36:51 ]
>>380
.svnしか残ってないフォルダの一覧を
探すのってphpでどう書けばいいですか?
なんかいい方法ないかしら?


382 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 02:46:17 ]
>>381
スレ違い。

383 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 09:51:29 ]
これでどうよ。

.svnしか残っていないフォルダの一覧を
探すのってsvnでどう書けばいいですか?
なんかいい方法ないかしら?



384 名前:デフォルトの名無しさん mailto:sage [2009/04/18(土) 10:08:44 ]
そんなのfindですぐだろ。
"bashで書く"って表現するあたりが河合祖杉。

385 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 07:27:51 ]
>>384
.svnしか残っていないフォルダの一覧を
探すのってふぃんdでどう書けばいいですか?
なんかいい方法ないかしら?

386 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 08:28:04 ]
>>385
飽きた。

387 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 09:53:56 ]
知らないならレスしないでください

388 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 11:15:40 ]
早く春休みが終わればいいのに

389 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 14:19:33 ]
一生終わりません

390 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 14:34:11 ]
んで、.svn「しか残ってない」ディレクトリ一覧を、findでどうやれば得られるんですか。
他のコマンドも組み合わせる?

391 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 14:47:29 ]
ま、春風のいたずらってことで。

392 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 15:00:44 ]
ま、スレ違いってことで

393 名前:デフォルトの名無しさん [2009/04/19(日) 22:26:48 ]
svnsyncでCannot accept non-LF line endings in 'svn:log' propertyってなるのは仕様らしい…?
subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=1448375

しかし1.5までで大量にそういうnon-LFなログがコミットされてしまってるわけで
それを全部直せというのか?
non-LFなのが入り込むのは良くないという思想はわかるが、
1.5まで許してきておいて1.6でリリースノートにも書かずにそんな仕様変更するなよ。



394 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 22:39:41 ]
>393
冗長なプロトコルといい、Subversionはアホが作ってる感があるな。

395 名前:デフォルトの名無しさん mailto:sage [2009/04/19(日) 23:54:44 ]
ちょw

396 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 11:45:15 ]
>>393
svn:logではなく、svn:ignoreだけの話のように読めます。

397 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 13:21:19 ]
>>396
いや、svn:logでも同じような問題が発生してる。

398 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 18:05:26 ]
仕様もなにも↑で修正されてるじゃん

399 名前:デフォルトの名無しさん mailto:sage [2009/04/20(月) 18:51:57 ]
trunkにも取り込まれてないがな

400 名前:351 mailto:sage [2009/04/20(月) 21:32:02 ]
亀レスですが、ご報告まで。

リポジトリサーバのpost-commit-hookで別サーバのワーキングコピーをsvn updateする件ですが、成功しました!
アドバイスを下さった皆様、ありがとうございました!

ポイントは2点ありました。
1. net useでネットワークドライブのマップを行う。
2. スクリプト(バッチファイル)内の実行ファイルはフルパスで指定。

出来なかったときは、net useコマンドにパスが通っていなかったのですね。
下のような記述で成功しました。

(\\server-b\svnwork\pub配下のワーキングコピーをupdateしたい場合。)
C:\WINDOWS\system32\net use X: \\server-b\svnwork
C:\Program Files\Subversion\bin\svn up X:\pub >> X:\pub\svnup.log 2>&1
C:\WINDOWS\system32\net use X: /delete

改めて感謝です!では!


401 名前:デフォルトの名無しさん mailto:sage [2009/04/22(水) 20:39:28 ]
non-LF の問題は行末に空白入れると回避できるな。

402 名前:デフォルトの名無しさん mailto:sage [2009/04/28(火) 01:07:13 ]
svnversion で末尾に P が付くのは何?

403 名前:デフォルトの名無しさん [2009/04/28(火) 05:44:35 ]
>>402 それ P やない、改行や。

とエスパーに挑戦してみる。 TortoiseMerge のアレのことなんだろうな、と。



404 名前:デフォルトの名無しさん mailto:sage [2009/04/28(火) 12:33:20 ]
C:>svnversion
128P

C:>svnversion --help
4123P まばらチェックアウト機能を用いて作られた部分的な作業コピー

google "まばらチェックアウト" で検索
|翻訳メモ:
| * sparse checkout は「まばらチェックアウト機能」としておいた。

・・・で、「まばらチェックアウト機能」て何?

405 名前:デフォルトの名無しさん mailto:sage [2009/04/28(火) 13:10:29 ]
>>403
プギャー

>>404
tortoisesvn.net/docs/release/TortoiseSVN_ja/tsvn-dug-checkout.html
ここの「チェックアウトの深度」にある「再帰的」以外の指定のこと。

406 名前:デフォルトの名無しさん mailto:sage [2009/04/28(火) 15:02:59 ]
プギャーで台無し

407 名前:デフォルトの名無しさん mailto:sage [2009/04/28(火) 15:04:04 ]
>>406
必死だな

408 名前:デフォルトの名無しさん mailto:sage [2009/04/28(火) 17:32:07 ]
svn up --non-interactiveをsvn upのデフォルトにしたいんですが
configにそんな項目増えてたりしないんでしょうか。

まぁ、困るのはバッチ処理の時だけといえばそうなので
そこにいちいち書きくわえればいいといえばそうなんですが。。。


409 名前:デフォルトの名無しさん mailto:sage [2009/04/30(木) 10:33:16 ]
>>408
バッチファイル(シェルスクリプト)でラップすればいいのではないでしょうか。

410 名前:デフォルトの名無しさん [2009/04/30(木) 16:01:59 ]
svn diff
で、diffに渡されてるデフォルトのオプションって何?
-u -r -N
であってる?

411 名前:410 mailto:sage [2009/04/30(木) 16:28:10 ]
自己解決しました

412 名前:デフォルトの名無しさん [2009/04/30(木) 16:32:28 ]
svn diff
で、diffに常に渡したいオプションがあるんだけど どうやって指定すればいい?

cvsのときなら.cvsrcに記述できたんだけど、.subversion/configには書くところがない

413 名前:デフォルトの名無しさん mailto:sage [2009/04/30(木) 16:53:52 ]
直上のレスぐらい見ろ



414 名前:デフォルトの名無しさん mailto:sage [2009/04/30(木) 17:27:30 ]
まぁ、シェルならふつーaliasだよね。

415 名前:デフォルトの名無しさん mailto:sage [2009/04/30(木) 17:52:50 ]
>>413
エイリアスやバッチで処理すれば出来ることはわかっています。
私は、オプションを常に指定する方法を調べています。

416 名前:デフォルトの名無しさん mailto:sage [2009/04/30(木) 18:16:42 ]
ソース弄るしかないんじゃない?

エイリアスのほうがインテリジェントだと思うけど。
そんな偉そうなら、用途をもっと明確にしてみそ?

417 名前:デフォルトの名無しさん mailto:sage [2009/04/30(木) 18:19:32 ]
そういや、svn diffって特定のもの以外のオプションをdiffコマンドに与えるのがクソ面倒だったような…

418 名前:デフォルトの名無しさん mailto:sage [2009/04/30(木) 18:37:13 ]
そう?
svn diff --diff-cmd=/usr/bin/diff -x -wu程度の話だと思うけど。

419 名前:デフォルトの名無しさん mailto:sage [2009/04/30(木) 20:43:47 ]
>>418
うん、そうなんだけど…なんでいちいち--diff-cmdがいるんだって話さね

420 名前:デフォルトの名無しさん mailto:sage [2009/04/30(木) 21:33:15 ]
あとあれ -L を勝手につけるのうざいよね。

421 名前:デフォルトの名無しさん mailto:sage [2009/04/30(木) 23:14:27 ]
そもそも1行に diff が3回も出てる時点でどうかしてる

422 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 00:27:55 ]
>>418
これを「程度」とか言っちゃう神経がキモい

423 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 09:29:53 ]
Tortoise使ってて文句つけるならわかるが、コマンドラインに文句つけるヒマあったら、
さっさとエイリアスかバッチ組むよ俺ならw



424 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 10:41:57 ]
>>423
美しくない ってことでしょ。
いきあたりばったりの実装で、設計思想に一貫性が無いという話。

425 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 11:08:37 ]
所詮、ツールだし
そう言うもんだろうで終わらせるよ、俺なら

426 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 11:53:21 ]
話が脱線するけど、あるソフト会社の作成したコンテンツにこんなのがあった。
仮に hoge 株式会社に納品したコンテンツだと仮定すると、
www.hoge.co.jp/contents/hoge/main/hoge.html
これがトップページのURL。hoge が3回も出てくるんでみっともない。
ナントカっていうフレームワークを使用した結果、
ディレクトリ構成が決まってるためこうなってしまったらしい。
いったい何のために独自ドメイン取得したのか・・・
美しくない。

427 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 12:07:42 ]
>>425
君の話はどうでもいい
そこらの電柱にでも話しかけていてくれたまえ

428 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 12:51:02 ]
>>425さんマジパネェッス!!

429 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 12:53:19 ]
>>426
うわあ…mod_rewriteぐらい使えよ

430 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 14:09:46 ]
どうでもいいところをこだわっていて仕事になっているんなら、いいんじゃないか。
俺は利益に大きく結びつくところ以外は捨ててしまうが

431 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 14:30:06 ]
こういう部分でエンジニアとしての程度が知れるな


432 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 14:32:07 ]
切り捨てて良い部分に無駄にこだわって時間潰してるのを
有能と呼ぶなら俺は無能で良いわ

433 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 14:38:10 ]
Subversion関係ねぇじゃん。



434 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 14:41:11 ]
てゆか>>426はみっともない上にSEOにもかかわってくる可能性もあるしな
まあこの話題はそろそろ打ち止めってことで

435 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 18:26:24 ]
無駄にこだわって時間潰す→無能
下手な設計で動くんだからいいじゃんと居直る→無能
最初から美しく設計する→有能


436 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 18:33:18 ]
つまりSubversionを使うやつはみんな無能って事か

437 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 20:40:06 ]
>>436
そりゃそうだ

438 名前:デフォルトの名無しさん mailto:sage [2009/05/01(金) 22:17:42 ]
実際さっさと git とかに移りたいんだけど
仕事で使ってるとなかなかそう簡単にはいかんのよねぇ・・・

439 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 11:24:12 ]
git はオマンド体系とか違いすぎてなぁ
覚えるコストに見当った性能はあるのかしらん?


440 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 11:41:21 ]
分散リポジトリ系のは今後どれが主流になるかもわからんし
ローカルでガリガリ書く時もコミットしたいってぐらいなら
svk でお茶を濁してていいんじゃね?




441 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 12:13:20 ]
仕事で分散使う意味がわからん

442 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 12:17:09 ]
>>440
svkはあるケースで遅くなるのがなぁ…

>>441
移動中にノートPCで開発してる奴なんて普通にいる
そういう場合に有利>分散


443 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 12:17:56 ]
>>439
ttp://www.tempus.org/n-miyo/git-course-trans-ja/svn.ja.html
これ1ヶ月読んでわからなかったらあきらめた方がいい



444 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 14:12:55 ]
>>443

多分そーゆー基本的なことを知りたいわけじゃないと思うよ


445 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 15:00:03 ]
gitはUnix系では便利に使ってるけど、Windowsでは使えたもんじゃない。
svkはWindowsでもなんとかいける。

446 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 15:10:54 ]
svkはGUIないから広めにくいんだよな。

最近は、Dropbox使う奴が周りでてきてる。
(もちろん、共有プロジェクトとか仕事では勧めてないが)
バージョン管理する必要がない、バージョン管理ソフトとして使えるのがいいらしい。

これくらいのシームレス差がほしいもんだけど

447 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 18:40:53 ]
>442
>移動中にノートPCで開発してる奴なんて普通にいる

そういうの、会社によるんじゃない?
うちの会社じゃ、そんなシチュエーション全く無い。

448 名前:デフォルトの名無しさん mailto:sage [2009/05/02(土) 18:51:38 ]
>>447
普通はそうだよな。
俺の会社でも10人程度の開発者がいるけど、全員が一つの机で顔をつきあわせながら開発するよ。
そういう状況で分散型VCSなど害悪でしかない。
当然ながらgitだのhgだのは一切使わないように支持が出されている。

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」「リポジトリ」でリポジトリパネを出して、
対象を選択後ツールバーの「コピー」ボタンをクリック。






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<191KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef