Subversion r10at TECH
Subversion r10 - 暇つぶし2ch1:デフォルトの名無しさん
08/07/09 10:02:46
Subversionはフリーなオープンソースのバージョン管理システムです。

公式HP
subversion.tigris.org
URLリンク(subversion.tigris.org)

Subversion によるバージョン管理
URLリンク(subversion.bluegate.org)

subversion: Project Status
URLリンク(subversion.tigris.org)

subversion: Subversion Links
URLリンク(subversion.tigris.org)

Version Control Systems Comparison
URLリンク(better-scm.berlios.de)

前スレ
r9 スレリンク(tech板)
r8 スレリンク(tech板)
r7 スレリンク(tech板)
06 スレリンク(tech板)
05 スレリンク(tech板)
04 スレリンク(tech板)
03 スレリンク(linux板)
02 スレリンク(linux板)
01 スレリンク(linux板)

2:デフォルトの名無しさん
08/07/09 10:03:16
■文書
Subversionによるバージョン管理(日本語訳)
URLリンク(subversion.bluegate.org)
svnbook PDF版
URLリンク(psyto.s26.xrea.com)

Subversion批判に対する反論
URLリンク(subversion.bluegate.org)
svn診断への反論
URLリンク(subversion.bluegate.org)
CVSユーザのためのSubversionガイド(wakatonoさん)
URLリンク(slashdot.jp)
FSFS propaganda
URLリンク(arch.bluegate.org)
TortoiseSVNユーザガイド
URLリンク(tortoisesvn.bluegate.org)

■Wiki
Subversionメモ
URLリンク(terai.s55.xrea.com)
Subversion(Saisse's Wiki):
URLリンク(www.saisse.jp)

■記事(ちょいと旧め)
URLリンク(www.atmarkit.co.jp)
URLリンク(www.atmarkit.co.jp)
URLリンク(ukai.jp)
URLリンク(ukai.jp)
URLリンク(ukai.jp)


3:デフォルトの名無しさん
08/07/09 10:04:50
最悪なsvn管理方法トップ10
URLリンク(www.red-bean.com)
日本語要約
URLリンク(www.geekpage.jp)

バージョン管理システムについて語るスレ
スレリンク(tech板)

リーナス・トーバルズ「Subversion ほど無意味なプロジェクトはない」
URLリンク(po3a.blogspot.com)

Git入門
URLリンク(www8.atwiki.jp)


4:デフォルトの名無しさん
08/07/09 11:06:18
>>1

5:デフォルトの名無しさん
08/07/09 11:06:59
あっちだとTortoiseSVNの話しただけで煙たがられるからな・・・

6:デフォルトの名無しさん
08/07/09 12:15:07
>>1

7:デフォルトの名無しさん
08/07/11 01:28:53
TortoiseSVN 1.5.0にバージョンアップしてみた。

file://(日本語が入ったUNCパス)でリポジトリを覗こうとすると
パスがURIエンコードされちゃって見れなくなってしまったよ。
1.4.Xだと問題なかったんだが…。


8:デフォルトの名無しさん
08/07/11 04:47:33
Subversionスレッド テンプレ
URLリンク(www12.atwiki.jp)

9:デフォルトの名無しさん
08/07/11 12:40:03
svn changelist でディレクトリを追加できないのですが、ディレクトリは対象外なのでしょうか?

10:デフォルトの名無しさん
08/07/11 14:03:40
↓のフックスクリプトだけど WebDAV 経由じゃ使えない?
URLリンク(www.asahi-net.or.jp)

WebDAV サーバの中から file:///~ でのリポジトリ指定でコミットかける
と正常に通るけど、 WebDAV経由(http://~)だと第3引数(CAPABILITIES)
が空で呼ばれて蹴られちゃう。

サーバ側は rpmforge の mod_dav_svn-1.5.0-0.1.el5.rf, subversion-1.5.0-0.1.el5.rf
クライアントはTortoiseSVNと公式バイナリ(両方とも1.5クライアント)

同じ症例はないですかね?


11:デフォルトの名無しさん
08/07/11 21:05:51
TortoiseSVN 1.5 にアップグレードしたらリポジトリブラウザで違うディレクトリに存在する
2つのファイルの差分が見れなくなったのですが、操作方法が変わったのでしょうか?

12:デフォルトの名無しさん
08/07/11 23:17:07
>>7
TortoiseSVN 1.5.0, Build 13458 - 32 Bit -dev
を入れたら直ってた。

13:デフォルトの名無しさん
08/07/14 17:18:50
コマンドラインで、なるべく自動化させていきたいと
思っているんですが、作業ディレクトリから一旦
エクスポートさせる場合、

"C:\Program Files\TortoiseSVN\bin\TortoiseProc.exe"
/command:export /path:"リポジトリのURL"

ってな感じで呼び出すこと自体は、成功しましたが
エクスポート先ディレクトリがどうしてもうまくいきません。
『リポジトリのURL』と『エクスポート先ディレクトリ』を
同時にコマンドラインから指定する方法とかわかる人いませんか?


14:デフォルトの名無しさん
08/07/14 18:23:21
svkではまってます。どなたかお力を。
書くとこここでよい?

svk mirror //mirror/hoge svn://user@host/hoge
//mirror/fuga is not a mirrored path.
といった感じで、以前触った(今は無い)パスが、エラー表示されます。
これから先、何を調べたら、作業したらよいでしょうか?
//mirror/fugaの消し方まちがったのかな?

15:デフォルトの名無しさん
08/07/14 21:42:23
>>13
Winにはsvnコマンドラインってインストールできないの?

16:デフォルトの名無しさん
08/07/14 22:47:51
win用実行モジュール(svn.exe)もあるよ。

17:デフォルトの名無しさん
08/07/15 00:13:29
>14

俺もそれ復旧できなくて何度か ~/.svk 消すしか回避策が見つけられなかった。
嫌になってsvk使うのをやめた。

frameになると嫌なので、是非論はぜひyosoでやってほしいのだが、
最近は svn repo + git svn {rebase|dcommit} というのを実験している。
conflict時の処理に自信が持てないのですが、svkよりはマシそうな雰囲気。
ただ、ログとかファイル名とかの文字コードがUTF-8縛りになるので、わりと嫌。


18:14
08/07/15 09:51:14
>>17
ありがと。
うーむ。今回.svkを消すのはいいけど、今後どうしたものか。
gitかぁ。なにか進展あったらレポお願いします。

19:デフォルトの名無しさん
08/07/15 11:29:47
svn:needs-lock を使ってみたんだけど、ちょっと質問。
これって、ドキュメント等では URLリンク(www.gside.org)
ロックの獲得が必要と説明されているけど、実際には svn co / svn update 時に、読み取り専用で
ファイルが取得されるだけで、手作業で読み取り専用をはずして
編集しちゃえば commit できちゃったのですが、そういうもの?

VSS の排他制御と完全な同類というわけではないですね。

20:13
08/07/15 12:10:30
>>15
>>16
なるほど。TortoiseSVNで実現させようとしているのが、
そもそも間違いなのですかね。svn.exe周り色々調べてきます。
ありがとうございました

21:13
08/07/15 13:00:10
svn.exeで試してみたところ、コマンドラインで
うまくexport出来ました。ただ、管理外のファイルまでは
もってこれないみたいですね。。TortoiseSVNではこの辺りが
指定できたのですが、コマンドラインでも指定できたり
しないのでしょうか?

TortoiseSVNでは、『SVNここに全てをエクスポートする』
というのがあって管理外も含めてエクスポートしてくれます。

22:デフォルトの名無しさん
08/07/15 14:00:37
管理外のファイルがリポジトリ内にあるっていうのは変じゃないか?

23:デフォルトの名無しさん
08/07/15 14:15:34
作業コピーからのエクスポートで管理外を含めたいなら
svn export じゃなくて単純に .svn を除外しつつ xcopy するって事では?
リビジョン指定が必要なのかな。

24:13
08/07/15 14:34:26
>>22
たしかに、考え方自体間違っているかもしれませんね、、
管理外まで扱っていたらsvnの意味もありませんし。。
ご意見ありがとうございます。

>>23
そういう手もありますね。参考になります。
リビジョン指定は、場合によりけりなので、
ひとまずxcopyでやるのも視野に入れたいと
思います。ありがとうございました!

25:デフォルトの名無しさん
08/07/17 00:55:20
2つのサイトでそれぞれ SubVersion を使って同じソースツリーを
管理してるのですが、これを同期させるのに楽な方法は何がありますか?

Aサイト
Aサイトのメンバーが作業
  ↑
  ↑ 1週間に1回Bサイトの担当が変更ソースを持っていってマージ
  ↑
Bサイト
Bサイトのメンバーが作業

Eclipseを使っての開発をしてます。

例えば、Bサイトで、マージ直前に最新ソースを取得して、
AサイトにそのPCを持っていき、EclipseのSVN接続先設定を変更して
シンクさせると同期できる、とかができないかなと考えているのですが。

教えてください。よろしくお願いします。


26:デフォルトの名無しさん
08/07/17 08:49:10
そこはsvkの出番じゃなかろうか。
Eclipseプラグインがないので、
Bサイト内でのコミットはコマンドラインからになるけど。

27:デフォルトの名無しさん
08/07/18 17:02:32
Windows版の Subversion の インストーラー版 が待てど暮らせど出てきませんが
何か出てこなくなった理由があるんでしょうか。
インストールは zip を解凍して 1.5.0 に更新済みなので svn-book.chm の新しいのがあれば
欲しい、というだけなんですが、zip だと svn-book.chm がありません。
1.4.6 の svn-book.chm が for 1.5 になっているからそちらを使い続けてね、ってこと?


28:デフォルトの名無しさん
08/07/18 17:39:18
お前のようなキチガイがいるからだろ
ほんと馬鹿じゃねえの

29:デフォルトの名無しさん
08/07/18 17:45:34
インストーラーが出てくるのが遅いのはいつものこと。
文句があるなら自分で作れ。

30:デフォルトの名無しさん
08/07/18 17:48:38
最近こういう勘違いした人増えてきたね・・。

31:デフォルトの名無しさん
08/07/18 17:51:00
Windows版バイナリに関して何か騒動があったということですか?
python bindings のインストーラは単に setuptools とかの絡みで早々に
出てきているだけだと思ってたんで、他が遅れている事件があったなら
知りたいです。

32:デフォルトの名無しさん
08/07/18 17:51:43
リロードしてなかった。。。

33:27,31,32
08/07/18 22:11:11
馬鹿かもしれませんし、とりあえず文句もありませんが、きっかけにはなりました。
インストーラーはスキル的に無理なので、自前で chm(r3203) だけ作成しました。

chm にフォントサイズを変更するボタンを付けておくと少しは便利ですね。
後で IE が間抜けな事になりますけど。

34:デフォルトの名無しさん
08/07/18 23:58:59
>>19
> 実際には svn co / svn update 時に、読み取り専用で
> ファイルが取得されるだけで、手作業で読み取り専用をはずして
> 編集しちゃえば commit できちゃったのですが、そういうもの?

そう言うものです。

Subversion のロックは、編集時にロックを必要とするファイル(要するにマージできないファ
イル。例えばビットマップファイル等) を編集する時は、svn lock でロックを取得して、編
集が完了したら svn commit すると、自動的にロックが解除されると言うもの。

ただ、これだと俺みたいに物忘れの激しい奴はロックを忘れて編集を始めてしまうことがある。
編集の間に他人がロックしなければ問題なくコミットできるけど、他の人がロックしてしまう
とコミット時にエラーになって初めて気付くというお間抜けなことになって、泣く泣く自分の
やった編集をあきらめるか、ロックをかけた人をなき落とすなり脅すなりしてその人が実施し
た編集をあきらめてもらうしかなくなる。

そこで、svn:need-lock 属性をつけておくと、普通は読取専用になってるからアプリによって
は開いた時に「読取専用だよ~」とか言ってくれるので、そこでロックを取得することを思い
出すだろうと言う仕組み。(ロックを取得すると読み書き可能になる。)

アプリによっては、読取専用でも何も言わずに編集できてしまい、保存する時にはじめて読取
専用だよ~って言ってくる奴もあるから、残念ながら万能じゃないけど、Subversion にはファ
イルの編集を始めたことを知るすべがないので、現状のところではこのあたりが精一杯の対応。

35:デフォルトの名無しさん
08/07/19 09:03:04
svn-book.chm を欲しがってただけで何であんなに非難さてれるんだ?

36:デフォルトの名無しさん
08/07/19 10:16:33
暑いからイライラしてる奴が多いってだけだろ。

37:デフォルトの名無しさん
08/07/19 14:08:03
インストーラを提供するのが当然みたいな印象を持たれたのが原因じゃないかな?
作者への感謝の気持ちが少しでも現れてたら良かったのにね

38:デフォルトの名無しさん
08/07/19 15:13:56
夏だなぁ

39:デフォルトの名無しさん
08/07/19 23:40:54
>>38
ですなぁ

40:デフォルトの名無しさん
08/07/20 00:37:16
前々からそうだけど新バージョンが出ると
インストーラーが出ないって延々と愚痴ってくるのが出てたから
またおまえかって感じだったんじゃないの

41:デフォルトの名無しさん
08/07/20 00:47:00
バイナリを出してくれてるんだから十分に有難いぞ

42:25
08/07/20 00:47:42
>>26
ありがとうございます。
svkってのがあるのを知りませんでした。
調べてみます。

43:デフォルトの名無しさん
08/07/24 09:48:09
svnリポジトリの容量を制限したいのだけれども、どうすればいいですか?
Unixコマンドでいえばquotaみたいな奴です。

44:デフォルトの名無しさん
08/07/24 09:55:03
>>43 quota 使えばいいんじゃないの?

45:デフォルトの名無しさん
08/07/24 12:23:44
svn リポジトリが容量制限くらった時の挙動はどうなるん?


46:デフォルトの名無しさん
08/07/24 12:38:47
容量いっぱいになったらそれ以上コミットできない、じゃないかな? たぶん

47:デフォルトの名無しさん
08/07/25 18:08:19
@を含むファイルもしくはディレクトリって Subversion で扱うのは無理?
ユーザのメールアドレスでディレクトリを作っているファイルがあって,
それを扱いたいんだけど, @ 以下の文字列がリビジョン指定として
扱われる場合があってうまくいかない.

@ 以下をリビジョンの指定として扱うのを抑制する方法はないかな?

48:デフォルトの名無しさん
08/07/25 18:10:01
たとえば
svn list file:///repos/hoge/hage/unko@example.com/
のようなことはできない?

49:デフォルトの名無しさん
08/07/25 18:14:57
TortoiseSVN 経由だと @ 付きのフォルダもファイルも扱えるので
何の疑問もなしにやってたら,コマンドラインから
操作しようとしてはまりました.

50:デフォルトの名無しさん
08/07/25 18:36:31
最後に余計な(?)@ をつけることで解決しました.
んが,ペグ・リビジョンについてちゃんと理解してない
自分に気付きました.

51:デフォルトの名無しさん
08/07/25 18:38:10
スレは日記帳ではないことも理解してませんね

52:デフォルトの名無しさん
08/07/25 19:38:30
>>51 ちがうんですか?

53:デフォルトの名無しさん
08/07/26 20:51:54
Subversion 1.5.1 Released

54:デフォルトの名無しさん
08/07/26 21:02:33
Tortoiseで離れた別のディレクトリの修正をコミットするにはどうすれば?
リポジトリがでっかくて、ルートからやるのが苦しい場合。

55:デフォルトの名無しさん
08/07/26 21:21:15
別々にコミットすればよいのでは?

56:デフォルトの名無しさん
08/07/26 21:25:42
同一レビジョンでやりたいんだと思うけど、ルートと言うか
共通の祖先のディレクトリからやるしかない。

リポジトリの構成を見直した方がいいのかも。

57:デフォルトの名無しさん
08/07/26 21:25:52
関連してて両方併せて意味が出る(というか片方だけだとデグレ)修正なので、アトミックにコミットしたいのです。

58:デフォルトの名無しさん
08/07/26 21:27:50
>>56
やっぱダメっすか。リポジトリ構成というよりmavenとかhudsonとかの出番なのかも。

コマンドからやってみるか…。

59:デフォルトの名無しさん
08/07/26 21:40:11
鯖の方を subversion-1.5.1 にアップデートした場合、クライアントPC側が
古い svn コマンドを使っていても大丈夫でしょうか?


60:デフォルトの名無しさん
08/07/26 21:49:26
>>59
鯖がプロトコルバージョンをチェックするからフツウは問題ない

61:デフォルトの名無しさん
08/07/26 22:07:02
svk最高

62:デフォルトの名無しさん
08/07/26 22:33:48
>>54
svn commit PATH1 PATH2 ...
でできませんか?

63:デフォルトの名無しさん
08/07/26 23:05:49
>>54
コミットダイアログにドラッグ&ドロップで追加できたような気がする。

64:デフォルトの名無しさん
08/07/27 00:06:28
TortoiseSVN 1.5.1 age

65:デフォルトの名無しさん
08/07/30 10:08:07
parent/
parent/sub1
parent/sub2

っていうディレクトリがあるとして,
今 parent/sub1 だけをリポジトリに放り込んでるんだけど,
parent 全体をリポジトリで管理したいと思ったんだ.

すでにリポジトリに内にある parent/sub1 や
ワーキングコピー内にある parent/sub1/.svn を
いかしてその上位の parent での管理に移行する
方法ってないかな?

parent/sub1/.svn とか消しちゃって,
parent ごと改めてリポジトリ管理し直すべき?
でもそれだとすでにリポジトリに内にある
parent/sub1 の履歴が生かせないんだよな…

なんかいい方法ないですかね?

66:デフォルトの名無しさん
08/07/30 10:20:31
>>65
現在のリポジトリはtrunk/sub1(或いは単にsub1)になっているってこと?
それなら、parent以下をparent/sub1を除外して追加してからsub1をparentの配下に移動すればよろし。
まぁ、ダミーのリポジトリとファイルを用意して実際に試してみれば様子がわかるよ。

67:デフォルトの名無しさん
08/07/30 10:28:48
>>66
なるほど
特定のディレクトリを除外して import ってのができるのか.

68:デフォルトの名無しさん
08/07/30 10:47:53
import するより add して commit したほうが、コミット前に確認とか調整とかいろいろできて
おすすめ。

69:66
08/07/30 11:05:22
>>67
私もaddのつもりで追加と書いた。で、移動はmoveね。
# 尤も、move自体removeしてaddと等価だけれど。
で、sub1を除外して追加ってのはparent以下にsub1とsub2だけでファイルがないならadd parent/sub2ってこと。
もしparent配下にfileがあるなら、add parent/{sub2,file}とか、その辺は適当に。

70:デフォルトの名無しさん
08/07/30 15:18:05
結構時間かけてググッてるんだが、Subversionって、
svnserveで運用する場合にパスワードをサーバに平文で持つしか無いのかな?
これってかなりイヤ、ってか結構ありえねぇんだが・・
CVSですら/etc/shadowなんかに書かれた暗号化パスワードそのまま使えるのに。

#一応、Apache+WebDAVだとBASIC認証でUNIXのパスワード扱えるからこの問題は起きない。
#けどわざわざApacheを前に立たせるまでもないLANとかだと、高速なデーモンとして動かしたいよな?

おれのググり方が足らなかったら罵ってください。
もし、ほんとに平文しか扱えないならSubversionクソすぎてCVSから乗り換える気おきない・・

71:デフォルトの名無しさん
08/07/30 15:29:27
俺は svn+ssh://... で使ってるので認証は ssh

72:デフォルトの名無しさん
08/07/30 15:38:17
ssh使えよって話だと思うんだが

73:デフォルトの名無しさん
08/07/30 16:04:30
>おれのググり方が足らなかったら罵ってください。
それじゃ遠慮なく。

カエレ!時間掛ければ検索できると言うものではない。ドキュメントくらい読め。このスカポンタン!

74:デフォルトの名無しさん
08/07/30 16:44:49
この手の人って勝手な思い込みで口汚くクソだクソだって喚くからタチが悪い

75:デフォルトの名無しさん
08/07/30 16:56:40
>>71-72
あー、SSH許可してるユーザはこれでいけそうです・・ありがとう
それ以外の奴はhttpで我慢してもらうことにするか・・
・・と思ったらEclipse+Subclipseだとなんかやたら面倒な設定が必要だな
#まぁそれはSubversionのせいではまったくない

まぁ何だ、お前らごめんなさい。


>>73
スカポンタンて古いなwいやどうも失礼した

>>74
失礼した

76:デフォルトの名無しさん
08/07/30 18:16:41
>>70
Trac入れてダイジェスト認証にすれば良いんでない?

77:前スレ979
08/07/30 19:00:52
前スレ最後で、tsvnスキーム登録とかについて
教えてくれたひと、どうもありがとう。
機会があったら試してみるよー。

78:デフォルトの名無しさん
08/07/30 21:11:43
> svnserveで運用する場合にパスワードをサーバに平文で持つしか無いのかな?
> これってかなりイヤ、ってか結構ありえねぇんだが・・

> #けどわざわざApacheを前に立たせるまでもないLANとかだと、


この2つの条件が重なる環境で開発はしたくないなあ

79:デフォルトの名無しさん
08/07/30 22:43:28
>>75
PuTTY + TortoiseSVNと組み合わせるのが超お勧め。
configにこれ入れると吉。
ssh = $SVN_SSH C:/Program Files/TortoiseSVN/bin/TortoisePlink.exe

PuTTY + TortoiseSVNでアクセスできるようになったら、
SubclipseのSVNインタフェースでJavHLを選べば勝手に繋がるようになる。
接続時にpageantに入れた鍵を自動で使ってくれるので、
パスフレーズは1日1回入れるだけでよくなって超楽。

80:デフォルトの名無しさん
08/07/31 08:42:57
サーバのOSがWindowsならば、TracLightning でtrac/subversionを入れるのが手間要らずで楽だな。

81:デフォルトの名無しさん
08/07/31 14:04:17
CVS から Subversion へ cvs2svn を使って,移行作業をしているものです。
このうちのひとつのフォルダのログのコメントが文字化けしてエラーとなり,困っています。
リポジトリの最上位のフォルダが10数個あるうちの,ひとつのみです。
このフォルダは RCS → CVS → CVSnt と移行してきたものです。
現在の運用は,サーバが CVSnt(WinXP) クライアントが Wincvs(WinXP)で,
エラーになるフォルダ以外は,Wincvs(ごった煮版)でインポートし,更新してきたものです。
CVS → Subversion の移行を行った先輩のアドバイスが戴ければ幸いです。
よろしくお願いします。

82:デフォルトの名無しさん
08/07/31 14:12:43
>>81
エラーメッセージは?
ログのエンコーディングと、 cvs2svn へのエンコーディングの指定はどうなってる?

83:デフォルトの名無しさん
08/07/31 14:22:36
>>82
レスありがとうございます。
円コーディングは,以下の指定で実行しています。
--encoding=SJIS
--encoding=iso2022_jp
--encoding=euc_jp
--encoding=cp932
--encoding=utf_8
--encoding=SHIFT_JIS
エラーメッセージは,申し訳ありませんメモっていませんでした。
pass 2 開始直後に,文字化けしたログメッセージが出力され停止します。
現在は該当のフォルダを除外して pass 5 を実行中です(約30時間)
リポジトリが約10Gありますので,エラーメッセージを再現するのに約1時間かかりますが,必要であれば再実行してお知らせします。

84:70=75
08/07/31 14:58:29
無礼をやらかした俺にもこんなにも建設的な意見をくれるあなた方に感動。

>>76
Digest認証もBASIC認証と同じく /etc/shadow とかに書かれてある、
crypt関数で暗号化済みのパスワード扱えたっけ。てか今から実験してみるか。
(開発陣全員のパスワードなんて管理者すら把握してないし、もう一回全員の
パスワード設定し直すなんて言うと文句言われるもんで・・)

もしそうなら是非Digest認証を採用させていただくよ。どうもありがとう。

>>79
おおー。素晴らしい。おれ個人は是非その方法を使わせてもらうことにする。
あとは他の連中がそういうツールを素直にインストールしてくれるかどうかだけど、
まぁ文句言われたらhttp越しで使ってもらえばいいか。


あの、70で失礼な発言したのでフォローしとくが、ディレクトリの移動を追っかけられるのが
Subversionの主たる導入目的だったわけで、この機能は本当にネ申です。
ぼちぼち慣れていこうと思う。みなさんありがと・・

85:デフォルトの名無しさん
08/07/31 21:19:15
>>84
/etc/shadowはPAM経由で使えるはずと思ってmod_auth pamでググったら
こんなの見つけた。

Mod_Auth_External and Mod_Authnz_External
URLリンク(unixpapa.com)

なので、これとBasic認証/Digest認証モジュールを組み合わせればいけるかも。


86:デフォルトの名無しさん
08/07/31 22:00:41
おとなしくApache鯖建てた方が速いんじゃね

87:デフォルトの名無しさん
08/07/31 22:01:26
ドキュメントファイルとかテキストファイルなんかを
バージョン管理してみるのにTortoiseSVNを使ってみています

で、リポジトリに追加してコミット、一旦ローカルファイルを削除して更新して取り出すと
元のファイルと比較して更新日時が異なってしまいます

回避策も見当たらないのでコミット時に属性に更新日時を書き込んで
更新時に取り出したファイルの更新日時を更新するようにしているのですが、
クライアント側フックスクリプトのPATHパラメータで指定されるファイルには
対象となる全ファイルが列挙されるわけではないのですね

というのも、フォルダ単位で更新すると
その対象としたフォルダ名しか取れないので各ファイルを処理できないのです
クライアント側フックスクリプトで更新対象となっている全ファイル名を
サブフォルダに渡って一覧取得する方法はないですかね?

まぁ、次のバージョン?で更新日時が対応されるようなされないような
というブログの書き込みをどこかで見かけたので
それを待った方がいいのかもしれませんがとりあえず今使いたいもので
よろしくお願いします

88:デフォルトの名無しさん
08/07/31 23:34:33
タイムスタンプは対応すると言いつつずっとペンディングにされ続けてるもの
待った方が良いっつうか、期待するだけ無駄

うちらはもうタイムスタンプなんて気にするやつはいなくなったけどな

89:デフォルトの名無しさん
08/07/31 23:56:57
正式版gでるまで
いっそのこと、日本人の誰かがマイナーパッチ作って、
流しちまえよw

90:どこが一言だw
08/08/01 00:20:18
>>83
cvs2svnで移行した経験から一言。
cvsのリポジトリの段階で、エンコードが混ざっているとiconvがエラー起こすからcvs2svnは恐らく失敗する。
特にcvsだとソースとコメントのエンコードが違う状況が発生しやすいので要注意。
# ファイルが巨大じゃなければ混在エンコードにも強いエディタで無理やり修正するとか。
# さもなければ、単体でiconvに食わせてエラーが出たらその周辺だけ抜き出して変換するとか。

91:デフォルトの名無しさん
08/08/01 02:34:45
>>90
今の cvs2svn は(内部的に iconv 使ってるかどうかはともかく)変換に失敗すると
--encoding で渡された順に全部試してくれる。混在しててもエンコーディングさえ
わかっていれば、リポジトリはいじらなくても通せる。

そういうわけで >83 の指定なんだろうけど、 SJIS と cp932 と SHIFT_JIS がばらばらに
指定されてるあたり、もう手当たりしだいって感じだな。リポジトリ内のエンコーディングを
ちゃんと調べてから設定したほうがいい。

92:デフォルトの名無しさん
08/08/01 03:30:05
TortoiseSVN 1.5.2 age

93:デフォルトの名無しさん
08/08/01 08:24:38
ふーん

94:デフォルトの名無しさん
08/08/01 10:10:47
むしろ設定ファイル類をsvnで管理しているときとか,
オーナー,グループ,パーミッションを保存してほしいと
思うときがある.復元してくれなくてもコミットしたときに
どうだったかを記録しておいてくれるだけでもありがたい.

95:デフォルトの名無しさん
08/08/01 12:17:01
属性に保存して、スクリプトで復元させればいいんじゃね?できたらスクリプトを公開をしてくれるとうれしい。では健闘を祈る

96:デフォルトの名無しさん
08/08/01 13:35:33
svnlibだけインストールしたいんだけど何をどうすれば良いの?
build.conf見ると__LIBS__とかあるけどいまいち解らん・・・

97:デフォルトの名無しさん
08/08/01 13:38:39
>>81
上記レスを投稿したものです。
アドバイスしてくれたみなさん,ありがとうございました。
エラーの原因が解りました。
該当フォルダは Pro*C と VC4 で開発をおこなっていたもので,そのうち
*.pre *.mdp (Pro*C と VC4 のプロジェクトファイル)が,テキストファイルとして登録されていたからでした。
ログのコメントが挿入されていて,内容は破壊されていましたが,幸いバックアップがありましたので
これらのファイルを除外して,Subversion へ移行します。

98:デフォルトの名無しさん
08/08/01 14:38:03
別のマシンでfile://スキームのリポジトリを作っていたのですが、
これをローカルマシンで使うことができません

svn ls file://remoteuser@remotehost/svnroot

などとやっても
svn: URL に対し ra_local セッションを開始できません
svn: ローカルの URL 'file://remoteuser@remotehost/svnroot' に含まれているホスト名はサポートされていません
と出てきてしまうのですが

99:デフォルトの名無しさん
08/08/01 14:40:40
お前、アホって言われるだろ・・

100:デフォルトの名無しさん
08/08/01 14:48:12
file://はリポジトリが自分のマシンのファイルシステム上に見えてないとだめだろう
ネットワークマウントするとか
svn+ssh://を使うとか

101:デフォルトの名無しさん
08/08/01 15:20:27
>>98
これはワロタw
file://URL なんてのは無茶だろ兄弟 ネットワーク越えられるプロトコルお使いなされ

102:デフォルトの名無しさん
08/08/01 15:34:03
>>99-101
ありがとうございます
なんかそれっぽかったのでfileでもリモート扱える方法があるのかと
思ってました・・・
リモートはサーバー禁止、マウントも出来ないのでsshで入って使います・・

103:デフォルトの名無しさん
08/08/01 15:44:03
>>97
上記レスを投稿したものです(アホって言われてますw)
おかげさまでエラーとなったフォルダのみを cvs2svn で処理し,首尾よく完了し確認できました。
ここで,もう一点教えてください。
CVS のリポジトリには10数個のフォルダがあり,3G程度のフォルダが2個トータル10G超になってます。
フォルダ毎に分割して処理しようと,2個目のフォルダから --existing-svnrepos を指定して実行しましたが,エラーとなります。
svn のリポジトリを CVS のフォルダ単位に作り,ダンプ→統合したいリポジトリにロード・・・のような作業となるのでしょうか?
良きアドバイスが戴ければ幸いです。よろしくお願いします。

104:デフォルトの名無しさん
08/08/01 16:00:33
アホ=>>98だと思うけど。

エラーの一言で済ませないで
ちゃんとエラー内容を記述するべき。

105:デフォルトの名無しさん
08/08/01 16:26:22
>>104
申し訳ありません,余分なものもあるかもしれませんがエラー時のコンソールを張ります。
----- pass 16 (OutputPass) -----
Starting Subversion Repository.
============================================================
Starting Subversion r1 / 5
Initializing project trunk
============================================================
Starting Subversion r2 / 5
Committing 15 CVSRevisions
New Directory trunk/CVSROOT
Adding trunk/CVSROOT/verifymsg
Adding trunk/CVSROOT/taginfo
Adding trunk/CVSROOT/rcsinfo
Adding trunk/CVSROOT/postcommit
Adding trunk/CVSROOT/notify
Adding trunk/CVSROOT/modules2
Adding trunk/CVSROOT/modules
Adding trunk/CVSROOT/loginfo
Adding trunk/CVSROOT/historyinfo
Adding trunk/CVSROOT/editinfo
Adding trunk/CVSROOT/cvswrappers
Adding trunk/CVSROOT/cvsrc
Adding trunk/CVSROOT/config
Adding trunk/CVSROOT/commitinfo
Adding trunk/CVSROOT/checkoutlist
ERROR: svnadmin failed with the following output while loading the dumpfile:
svnadmin: ファイルが既に存在します: ファイルシステム 'C:/svndata/db', トランザクション 1657-1, パス 'trunk'

以上です,よろしくお願いします。

106:デフォルトの名無しさん
08/08/01 17:08:26
・・・エラーメッセージそのまんまじゃないのか?

107:デフォルトの名無しさん
08/08/01 17:12:04
>>106
CVS リポジトリ内のフォルダー単位に cvs2svn 処理をさせたかったので,
2回目からは --existing-svnrepos パラメータを付けたのですが・・・
他に指定すべきパラメータとか,なにか前処理が必要でしょうか?

108:デフォルトの名無しさん
08/08/01 17:33:50
俺は使ったことないんで知らないが、一部のblogで
そのオプションが効かないって記述があるみたいだけど

というか、それ分割して処理する意味があるのか

109:デフォルトの名無しさん
08/08/01 17:50:15
>>108
レスありがとうございます。
CVSのサイズが10Gと大きいせいか,まとめてハウマッチで実行すると
pass 5(SortRevisionSummaryPass) が,30時間くらい実行しても終わりません。
2G程度のフォルダのみで実行したところ,ディスクアクセスをガリガリやって終了しました。
10Gまとめてだと,ディスクアクセスもほとんど無く,実行してるのか固まってるのか怪しい感じでした。
急いで使いたいファイルが入っているフォルダを先に終わらせて,時間のかかるフォルダを
後でゆっくり移行したいと思ってます。

110:デフォルトの名無しさん
08/08/01 22:23:10
>>88
そうなんですか
バージョンを管理するツールに通しただけで
元の情報(今回の場合は更新日時)が欠落してしまうということに違和感を感じました
他の例で言えば、ファイルを圧縮して解凍しても
更新日時は元のままであって欲しいと思っています
(もし全ファイルの日時を揃える要件があれば、
バージョン管理や圧縮などの仕組みとは別に、日時を揃える方法を考えるかな?)

あと元の質問だったファイルの一覧はやっぱり取得できないようなので
フォルダを起点にチマチマやることにします
どうもありがとうございました

111:デフォルトの名無しさん
08/08/02 00:19:51
タイムスタンプ信仰 vs アンチタイムスタンプ派の喧嘩が始まるから
そのネタは気を付けた方が良い

112:デフォルトの名無しさん
08/08/02 00:58:12
うーん TortoiseSVN って バージョン番号 4桁の方がよいと思うんだけどな~
それはそうと、1.4系統のサーバーに1.5のクライアントつなげてもまったく問題ないよね
逆の場合はどうなのかな?

113:デフォルトの名無しさん
08/08/02 00:58:48
>>102
「sshで入って使う」などと書いてあるのが不安なのだが、
ログインしてviとかそういう話か?

svn co svn+ssh://remote/path
しろっていう話だぞ。
これならsshdさえ動いていればサーバ類は必要ない。

114:デフォルトの名無しさん
08/08/02 08:11:08
>>110
エクスポート時にはコミット時刻が吹かされるからそれで十分じゃないかと。


115:デフォルトの名無しさん
08/08/02 09:14:23
>吹かされる

116:デフォルトの名無しさん
08/08/02 11:13:54
吹いた


117:デフォルトの名無しさん
08/08/02 13:50:15
>>99-101
fileスキーマでネットワーク越えられないって思ってるようだけど、
Win版なら file://192.168.1.2/svn/root みたいなURLで
CIFSプロトコル(共有フォルダ)経由でアクセス出来るよ。

>>102でsshってあるからWinじゃないだろうけど、
samba上に置くことも出来る。(普通は素直にsvn+sshするだろうけど)

118:デフォルトの名無しさん
08/08/02 16:04:18
ほんとだ
file://server1.home.local/d$/svn/repoA/
で行ける。
実際に管理共有でやるかっつうとやんないにしても、管理共有でも行けるので
事前に共有フォルダにしておく必要すらないのか。

119:デフォルトの名無しさん
08/08/02 18:51:29
管理共有なんか使ってると後々困ると思うぞ。
サーバ側で移動する必要が出たときとか…

120:デフォルトの名無しさん
08/08/02 21:27:51
て言うか管理共有経由でほいほい書ける環境って
なんも管理されてないってことだろ。

121:118
08/08/02 22:16:11
いや、だから、試しただけで管理共有ではやんないってば。。。

122:デフォルトの名無しさん
08/08/02 23:20:30
盛り上がっているところ恐縮ですが,フォルダ単位に cvs2svn を実行する方法って無いんですかね?
Subversion の複数のリポジトリを統合する方法でも良いのですが。
よろしくお願いします。

123:デフォルトの名無しさん
08/08/02 23:30:34
>>122
> フォルダ単位に cvs2svn を実行する方法って無いんですかね?
あるだろ。何で無いと思うの?

> Subversion の複数のリポジトリを統合する方法でも良いのですが。
svnadmin dump → svnadmin load

124:デフォルトの名無しさん
08/08/02 23:34:27
>>123
ありがとうございます。
dump → load で統合できれば最悪なんとかなります。

>>107 の方法だと,エラーになってしまいます。
必要なパラメータとか前処理があれば,アドバイスいただければ幸いです。
よろしくお願いします。

125:デフォルトの名無しさん
08/08/03 00:43:45
>>121
やるかどうかじゃなくて、できちゃうことに問題があると言われてるんだが。

126:118
08/08/03 00:49:43
普段無効にしている管理共有を試しに有効にして試しただけだって。。。
なんでここまで説明しないといかんの。
食いつき良すぎだろ。。。

127:デフォルトの名無しさん
08/08/03 03:26:59
>>124
直接リポジトリに入れるんじゃなくて、 cvs2svn からはダンプだけ作らせといて、
svnadmin load するときに --parent-dir すればいいんじゃないかな?

128:デフォルトの名無しさん
08/08/03 07:36:52
>>126
> 普段無効にしている管理共有を試しに有効にして試しただけだって。。。

やってないだろ?
もし、本当に普段無効にしている管理共有を有効にしたと言うなら、やり方を
書いてくれ。

マジでやってたら、それこそバカだよ。

129:118
08/08/03 09:45:17
これで最後にします。
無効にしたことがバカなのか、試したことがバカなのか、その両方がバカなのか
よく分かりませんが手順は一般的に知られていると思うけど、レジストリ変更して再起動。
URLリンク(www.atmarkit.co.jp)

ただの共有じゃなく管理共有でどうなの? と思って普段しない事で試しただけで、
素朴な疑問でスレの空気を悪くしてすいません。

130:デフォルトの名無しさん
08/08/03 10:15:55
>>129
あなたは全然悪くない。というかとても親切。

131:デフォルトの名無しさん
08/08/03 16:53:44
まぁ、単に揶揄われているだけなのに気付かなくて、必死に理解してもらおうとする姿勢は好感が持てるね。

132:デフォルトの名無しさん
08/08/03 17:52:17
そういえばタイムスタンプってプログラム開発だと気にならないけど
それ以外の用途だと気になるのかもしれんなぁ


133:デフォルトの名無しさん
08/08/03 20:43:26
差分のみにくい、ドキュメント、実行モジュールやDLLで気になるからな

134:デフォルトの名無しさん
08/08/03 22:58:17
雰囲気悪いスレだな。

135:デフォルトの名無しさん
08/08/03 23:11:08
タイムスタンプでバージョンを示すとかあったなー。
vz?



136:デフォルトの名無しさん
08/08/03 23:20:50
いや、それに限らず割とポピュラーかと。

137:デフォルトの名無しさん
08/08/04 14:24:17
バージョン管理下のファイルだとタイムスタンプよりリビジョンを気にするので気にならないが、
バージョン管理下にないファイルだと気になるな。

Exportだと更新日時が最終コミット時になるので
個人的には今の仕様がベスト。

CheckoutやUpdateで更新日時がコミット時に設定されると
makeが変な動きをしそうだし。

138:デフォルトの名無しさん
08/08/04 20:59:55
>>137
Exportってバージョン管理外のファイルにする方法なのでは?
CheckoutやUpdateってバージョン管理下にある状態なのでは?
…って、そもそも何か勘違いしてるのかな… orz

139:デフォルトの名無しさん
08/08/05 08:41:31
>>138
バージョン管理下にあるファイルのタイムスタンプは、バージョン管理が更新するものだと思って諦める。ということさ。

140:デフォルトの名無しさん
08/08/05 11:28:32
諦めるっつーか、管理下にある場合は更新してくれた方がいいじゃん。

141:デフォルトの名無しさん
08/08/05 11:54:27
>>140
ソースファイルの場合はタイムスタンプ更新した方が、makeに都合が良い。
ソース以外(make管理外)のデータやドキュメント類は、タイムスタンプ更新しないほうが都合が良い。

142:デフォルトの名無しさん
08/08/05 22:11:43
>ソースファイルの場合はタイムスタンプ更新した方が、makeに都合が良い。

そうかなー…
これこそオリジナルタイムスタンプのままの方が良いきがするけど

143:デフォルトの名無しさん
08/08/05 22:30:52
makeが誤動作するじゃないか

リビジョンで管理すると複数のファイル間の関連も一目でわかるから便利じゃん。
タイムスタンプだけでは最新かどうかわからないじゃないか。

144:デフォルトの名無しさん
08/08/05 22:55:15
もうタイムスタンプ議論はうんざり・・・・
いったいいつまで続けるんだよ

145:デフォルトの名無しさん
08/08/05 23:11:48
>>143
後学のために教えて
makeが誤動作するということはバージョン管理システムを使っていない場合は
makeが誤動作しまくるの?それともmake前にタイムスタンプを揃えるという処理をしてる?
揃ってもいいのかもしれないけど(というか気にしないでもいいのかもしれないけど)
元のままではダメだというのがよく分からない…
(気にしないなら元の情報が残っていてもいいのでは…)

>>144
単なる罵り合いだの罵声だのではなく、
それぞれの可能性や考え方がやりとりされている分には勉強になりますが…ダメですか?

146:デフォルトの名無しさん
08/08/05 23:21:33
以前からこのスレでタイムスタンプ信仰者とアンチタイムスタンプとで
罵り合いが続いてたから昔から見てる人からすると溜め息しか漏れないかと。

147:デフォルトの名無しさん
08/08/05 23:23:54
いや、updateで取り出しているのにタイムスタンプが更新されていなかったらmake対象にならないのが問題ってことじゃないのかね。

148:デフォルトの名無しさん
08/08/05 23:31:21
>>146
あ、すみません 以前の罵り合いってのを知らなかったもので…
双方のシチュエーションや経験談を参考にさせてもらって
自分のシチュエーションではどっちが妥当か?を考えるのにいいな、と思ったのですが…

149:デフォルトの名無しさん
08/08/05 23:39:28
>>147
まぁ実際、svnが更新するタイムスタンプも怪しいけどなw
かなりでかいソースツリービルドした時、うまくいかない事が
あってからあまりsvnのタイムスタンプ管理は信じない事にしてるw


150:デフォルトの名無しさん
08/08/06 00:34:25
>>145
リビジョンを進めようが後退させようが更新されたファイルのタイムスタンプは現時刻になる。この場合makeが正しく動作する。


151:デフォルトの名無しさん
08/08/06 02:09:58
post-commitで、コミットすると自動的にweb公開領域にチェックアウトするようにしてるんですが、
コミットするたびに全ファイルをチェックアウトするのにかなり時間がかかってしまいます。
コミットしたディレクトリとかファイルのみチェックアウトするなどして、時間短縮できないでしょうか・・・。

152:デフォルトの名無しさん
08/08/06 02:49:02
>>151
1) Webサーバの設定で、.svnへのアクセスを拒絶する。
2) チェックアウトではなくupdateする。
3) svnlookの出力を加工して、updateする対象を絞り込む。

153:デフォルトの名無しさん
08/08/06 10:12:15
>>145
make の動作原理は、makefileに記載したソースファイル→ターゲットファイルの依存関係について、
タイムスタンプを比較し、ソースよりターゲットが古い場合にコマンド(たとえばコンパイル)を実行するというものだ。

svn update でソースファイルを差し替えたのに、ターゲットファイルの日付より古ければ、
コマンド(コンパイル)が実施されず、update 前のソースで生成されたターゲットファイルでプログラムが出来上がってしまう。

B君が 二日前に foo.c を編集した
A君が 昨日checkoutして、make を実行し、foo.c から foo.o を生成した
B君が テストを終えて、本日 foo.c をcommitした
A君が 本日updateして、B君のfoo.cを取り込んだ。ここでmakeを実行するとして、
foo.cのタイムスタンプがB君編集時刻(2日前)だと

154:デフォルトの名無しさん
08/08/06 10:14:47
>>153 続き
foo.cのタイムスタンプがB君編集時刻(2日前)だと foo.c より foo.o が新しいので、
make は foo.c を再コンパイルせず、foo.o は B君編集前のfoo.c から生成された内容のままとなる。これがまずい。

155:デフォルトの名無しさん
08/08/06 12:33:13
てーか、updateしたら全コンかけね?フツー

156:デフォルトの名無しさん
08/08/06 12:39:37
makeの存在意義を真っ向から否定してるな

157:デフォルトの名無しさん
08/08/06 12:40:00
フツーしない。


158:デフォルトの名無しさん
08/08/06 12:54:13
>>152
ありがとうございます。
おかげでsvnlookで更新したファイルのリストを取得出来たのですが、
これと svn updateをどうからめてやれば、
更新ファイルのみを対象と出来るのでしょうか…


159:デフォルトの名無しさん
08/08/06 13:00:26
何でも聞かないと出来ないやつはいい加減あきらめろ

160:デフォルトの名無しさん
08/08/06 13:11:42
>>158
公開用のフォルダがワーキングコピーになっているなら、
svn update するだけで いいんでない?
後は、 >>152 の 1) を対策して終わりでしょ?

なんでわざわざチェックアウトし直す必要がある?


161:デフォルトの名無しさん
08/08/06 16:13:26
bluegateまた落ちてんのかよ

162:デフォルトの名無しさん
08/08/06 16:29:56
URLリンク(www.caldron.jp)
のほうが新しいバージョンに対応していていいんじゃない?

163:デフォルトの名無しさん
08/08/06 19:03:06
TortoiseSVN 厨です。
tsvn:logminsize を自動的に付与する為の設定って無いですかね?
これ設定しておかないとログ入れない奴がたくさんいるんですよ。

164:デフォルトの名無しさん
08/08/06 19:18:43
post-commitでログなしなら弾くようにすればいいじゃん

165:163
08/08/06 19:38:16
>>164
pre-commit で模索中です。
svnlook でトランザクションのログを捕らえるところまでは確認できましたが、
ログの長さを調べる バッチファイルの記述の仕方がわかりません。
現在調査中です

166:デフォルトの名無しさん
08/08/06 19:39:37
cscriptでVBS呼ぶなりすればええやん

167:デフォルトの名無しさん
08/08/06 20:25:18
>>165
ちょっとはぐぐれよ・・・
URLリンク(www.spring-aki.com)

168:デフォルトの名無しさん
08/08/06 20:41:20
>>167
探し方がたりませんでした。
ありがとう。


169:デフォルトの名無しさん
08/08/07 09:23:21
Emacs 22 を使っています.
ちょっとやりすぎな変更をしてしまったとき,
svn revert で最初に戻すのは嫌だし
かといってそのまま svn commit もしたくないし,
というわけで svn diff で自分がやらかした変更を
確認しながら部分的に元に戻したりをしているんですが,
なにか便利な Emacs で使えるツールってありませんか?

つまりワーキングコピーとベースをならべて
変更点を色付けしてくれて,というツールを探しています.

vc-diff すると単に svn diff の結果がバッファに
表示されるだけで萎えます.

170:デフォルトの名無しさん
08/08/07 10:41:21
Emacsで、ならEmacsスレいけばいいのに・・・。

とりあえず、Emacsを無視すると、TortoiseDiff(TortoiseMerge)ぐらいしか思いつかない。

171:デフォルトの名無しさん
08/08/07 10:43:12
>>169
その用途には WinMerge 使ってる。 169 が Windows ユーザーかどうか知らないけど。

172:デフォルトの名無しさん
08/08/07 10:56:15
まずワーキングコピーの最終リビジョンでブランチを作り、ワーキングコピーをブランチへスイッチするんだ。
そして、編集中のやり過ぎソースをコミットするんだ。
話はそれからだ。

173:デフォルトの名無しさん
08/08/07 13:40:31
>>169
>>172が正論だけど,Emacsのツールとしては ediff (VCに連動するのは ediff-revision) がある
これ以上はEmacsスレへどうそ



174:デフォルトの名無しさん
08/08/07 14:08:24
>>169
Meld使えばいいんじゃない?


175:デフォルトの名無しさん
08/08/08 12:21:06
>>163
tsvnは再帰的に適用されるって書いてたような気がするから、ルートに書いてみれば?


176:163
08/08/08 13:00:22
>>175
ほんとだ・・・
全然気づかなかったw
ありがとう

177:デフォルトの名無しさん
08/08/08 13:16:17
SVKインスコしてコミットしまくる


178:デフォルトの名無しさん
08/08/08 14:08:12
svkのsvn1.5対応まだー?

179:デフォルトの名無しさん
08/08/09 03:09:10
Eclipseに関してだが、revertするほどでも無い巻き戻しができるように操作履歴は多めに記憶してできるだけファイル閉じないようにしてる。


180:デフォルトの名無しさん
08/08/09 11:05:53
あるブランチで大量のファイルがコミットされているリビジョンがあるとします。
このブランチのこのリビジョンのうちの1か2ファイルだけ、別のブランチに
マージかけたい場合って出来ますでしょうか?


181:デフォルトの名無しさん
08/08/09 14:10:19
>>180
ファイル個別にマージを実行すればできるでしょ。

182:デフォルトの名無しさん
08/08/12 16:09:57
svnmerge.pyって使える?

183:デフォルトの名無しさん
08/08/12 17:51:57
1.5でマージ追跡機能として組み込まれた機能かな?


184:デフォルトの名無しさん
08/08/16 02:50:38
post-commitでコミットメールとばすようにしたんだが
コミットしたファイルの前のリビジョンって取得する方法ってあるんかな?

185:デフォルトの名無しさん
08/08/17 11:35:13
URLリンク(subversion.tigris.org)

MD5 checksum:

3cc5c06a61d41aad76a84ba662800add *Setup-Subversion-1.5.1.en-us.msi

SHA1 checksum:

39447b7eadeae48df91d2b131bf0122ecba43672 Setup-Subversion-1.5.1.en-us.msi

186:デフォルトの名無しさん
08/08/17 12:20:39
Apache2.0 向けと Apache2.2 向けが単一の msi インストーラーになったのね。
今までの Apache2.2 用ディレクトリしかケアしていなかった。
見逃していたわ、ありがとう。


187:デフォルトの名無しさん
08/08/19 18:24:33
ちょっと聞きたいのですが、みなさんはコメントの記法は何か意識していますか?
Changelog記法とか、wiki記法とか・・・。よければ、理由もお聞かせ下さい。

188:デフォルトの名無しさん
08/08/19 18:28:50
何のファイルの、どこを修正したのかを明確に とはよく言われる。

あとは複数ファイルをいっぺんにコミットする場合には、
かならずそのセット内でバージョンの整合性が合っているようにコミットすることも大事。

これが原因で1回デグレーション起こしてえらい騒ぎになった。

189:デフォルトの名無しさん
08/08/19 20:41:41
とあるサンプル
--
csv出力対応
foo.c:csvOut()追加, コマンドライン解析変更
foo.h:csv出力に関するオプション定義追加
bar.c:csv出力対応に伴い、デバッグ出力見直し
--
大体こんな感じかな。


190:デフォルトの名無しさん
08/08/19 23:14:36
CentOS上でcvs2svn使ってダンプファイル作ったら、
SVNの属性全部にsvn:executableがついたんだけど
これどうにかならんの?


191:デフォルトの名無しさん
08/08/19 23:38:08
find . -type f -not -wholename '*.svn/*' -exec svn propdel svn:executable {} \;

192:デフォルトの名無しさん
08/08/20 00:34:33
>>191
お!できた!!ありがとうー

193:187
08/08/20 08:42:22
ありがとうございます。
どのファイルを更新したか、というのを明確にしているのですね。
参考になります。

194:デフォルトの名無しさん
08/08/20 09:09:44
>>187-188
変更内容よりは、変更の目的や背景が重要だろう。最悪、変更内容は差分から読み取れる。
むしろ差分でわかる内容を長々と書かれても困る。

↓ Subversion 開発向けのガイドにも似たようなことが書いてある。
URLリンク(subversion.tigris.org)

195:デフォルトの名無しさん
08/08/20 09:44:58
英語が読めません (><)

196:187
08/08/20 10:54:59
本当に >>186で聞きたかったことはコミットログの内容というより、
コミットログの"記法"のことなんですw
各項目を"*"とか"・"ではじめる、とか強調したいときにはこうするとか、
wiki記法とか書いたのはそういうことです。

>>194
ああ、なるほど・・・

197:デフォルトの名無しさん
08/08/20 11:13:33
俺は -m オプションで一行書くだけから,記法で修飾するほどの文字量にならない
・これこれのバグをFIXした
・これこれの機能を追加した
・リファクタリングした
とかとか


198:デフォルトの名無しさん
08/08/20 11:14:26
trac と連動させているなら、trac の wiki 記法にあわせれば良いんじゃないかね?
チェンジセットのページに表示されるコミットログはwiki記法で整形されて表示される。

まあ、コミットログで大切なのは「見た目」よりも「内容」だけどな。

書く必要がないこと→日付、担当者、修正ファイル名や関数名。つまりsvnの機能を使って機械的に抽出できる情報。

書くべきこと→修正目的、参考資料、実施したテスト内容

199:デフォルトの名無しさん
08/08/20 11:25:52
>>198
その見方でいくなら、
俺はコミットログにチケット番号を含めるようにして、どのコミットがどのチケットに対応してるか分かるようにしてる。

200:デフォルトの名無しさん
08/08/21 00:24:20
traclightning 2.0.4を使って、LDAP認証を使用したいのですが、うまくいきません。
trac側のログインはLDAPに切り替わり認証に成功するのですが、Subversionが切り替わりません。
Subversionの認証が、tracのダイジェスト認証になっている感じです。
どなたか、アドバイスください。

201:デフォルトの名無しさん
08/08/22 12:58:43
RapidSVN 夜ビルドで 1.5リポジトリいじれるようになってるー


202:デフォルトの名無しさん
08/08/24 08:30:27
svn ci 時にvimに出るdiff結果が文字化けしちゃうの回避方法をご存知でしたら教えてくらさい。
(utf-8の文字列が変わったとき、diffはeuc-jpで開いているみたいなので化けちゃう)。。。

203:デフォルトの名無しさん
08/08/24 09:01:14
env LANG=C svn ci

204:デフォルトの名無しさん
08/08/25 01:25:38
これはアメリカのゲームです。1度やってみてください。
これは、たった3分でできるゲームです。試してみてください。
驚く結果をご覧いただけます。
このゲームを考えた本人は、メールを読んでからたった10分で願い事が
かなったそうです。このゲームは、おもしろく、かつ、あっと驚く結果を
貴方にもたらすでしょう。

約束してください。絶対に先を読まず、1行ずつ進む事。
たった3分ですから、ためす価値ありです。


まず、ペンと、紙をご用意下さい。
先を読むと、願い事が叶わなくなります。


①まず、1番から、11番まで、縦に数字を書いてください。
②1番と2番の横に好きな3~7の数字をそれぞれお書き下さい。

③3番と7番の横に知っている人の名前をお書き下さい。(必ず、興味の
ある性別名前を書く事。男なら女の人、女なら男の人、ゲイなら同姓の名
前をかく)

必ず、1行ずつ進んでください。先を読むと、なにもかもなくなります。

④4,5,6番の横それぞれに、自分の知っている人の名前をお書き下さ
い。これは、家族の人でも知り合いや、友人、誰でも結構です。

まだ、先を見てはいけませんよ!!

⑤8、9、10、11番の横に、歌のタイトルをお書き下さい。

⑥最後にお願い事をして下さい。さて、ゲームの解説です。

205:デフォルトの名無しさん
08/08/25 01:26:36
このレスは>>204の続きのレスです。
>>204をまだ読んでいない方は、先を見てはいけませんよ!!
醍醐味が無くなってしまいます。

1)このゲームの事を、2番に書いた数字の人に伝えて下さい。

2)3番に書いた人は貴方の愛する人です。

3)7番に書いた人は、好きだけれど叶わぬ恋の相手です。

4)4番に書いた人は、貴方がとても大切に思う人です。

5)5番に書いた人は、貴方の事をとても良く理解してくれる相手です。

6)6番に書いた人は、貴方に幸運をもたらしてくれる人です。

7)8番に書いた歌は、3番に書いた人を表す歌。

8)9番に書いた歌は、7番に書いた人を表す歌。

9)10番に書いた歌は、貴方の心の中を表す歌。

10)そして、11番に書いた歌は、貴方の人生を表す歌です。この書き
込みを読んでから、1時間以内に10個の掲示板にこの書き込みをコピー
して貼って下さい。そうすれば、あなたの願い事は叶うでしょう。もし、
貼らなければ、願い事を逆のことが起こるでしょう。とても奇妙ですが当
たってませんか?






206:デフォルトの名無しさん
08/08/26 06:35:32
管理者権限を持っていない借りてるVirtual Hostのサーバーに
SubVersionを入れたりできるのでしょうか?
できるのであれば設定の仕方とか教えてください。


207:デフォルトの名無しさん
08/08/26 07:49:58
インスコ自体は ./configure --prefix=$HOME/usr とかでいいだろうが、
デーモン起動出来るかどうかは知らん。

208:デフォルトの名無しさん
08/08/26 08:33:41
svnserveは3690( 1024より大)番ポートを使うから一般権限でいけるかなぁ。


209:デフォルトの名無しさん
08/08/26 08:44:10
sshで入れてgcc使えればデーモン常駐しなくても出来るよ
ビルドしてsvnserveにパス通しとけばsvn+ssh://でok

210:デフォルトの名無しさん
08/08/27 19:21:03
コミット時、
hooks(start-commit,pre-commit)で、標準出力で画面に適当な文字列を表示させたいのですが、

#!/bin/sh

echo "test 0" >&0 # 標準入力の場合は画面に表示
echo "test 1" >&1 # 標準出力の場合は画面に表示しない

echo

211:デフォルトの名無しさん
08/08/27 19:51:34
     ____
   /__.))ノヽ
   .|ミ.l _  ._ i.)
  (^'ミ/.´・ .〈・ リ
  .しi   r、_) |  >>210はワシが汚した
    |  `ニニ' /
   ノ `ー―i´


コミット時のhooks(start-commit,pre-commit)で、
画面に適当な文字列を表示させたいのですが、端末に反映出来ません。
ファイルへのリダイレクションは出来ました。

start-commit は以下のように書いているのですが、端末表示には反映されません
何かアドバイを下さい。

#!/bin/sh

echo "test -" # 標準出力は画面に表示しない
echo "test 1" >&1 # 標準出力は画面に表示しない
echo "test f" >> test.txt # ファイルには落ちる

212:デフォルトの名無しさん
08/08/27 21:26:57
svnserv か Apache かは知らんけど hooks ってサーバーが実行するんだから、
画面なんて持ってないと思うけど。

213:デフォルトの名無しさん
08/08/28 00:32:57
確かめてないけど、
フックスクリプトが終了コード0以外を返したとき、スクリプトの標準出力
(あるいは標準エラー出力)がクライアントにエラーメッセージとして
返されるんじゃないかな。
なので、スクリプトの最後に「exit 1」を追加してみては?

214:デフォルトの名無しさん
08/08/28 11:59:29
TracLightning VerUp age

215:デフォルトの名無しさん
08/08/28 22:19:50
>>214
スレ違い

216:デフォルトの名無しさん
08/08/28 23:02:19
ここの 1.4.6 が消えてる... 古いPCには便利だったのに
URLリンク(the.earth.li)


217:211
08/08/29 01:21:09
青梅から、生還しました。ものすご雨でした雷が止みませんでした。
     ____
   /__.))ノヽ
   .|ミ.l _  ._ i.)
  (^'ミ/.´・ .〈・ リ
  .しi   r、_) |  >>210はワシが汚した
    |  `ニニ' /
   ノ `ー―i´

標準出力は端末に表示できないことが分かりました、
ただし、標準エラー出力は出せます、

バグなのか仕様なのか分からん、もう諦めた。

218:デフォルトの名無しさん
08/08/29 08:50:59
start-commit.tmpl には次のように書いてあるので、仕様じゃね?
# If the hook program exits with success, the commit continues; but
# if it exits with failure (non-zero), the commit is stopped before
# a Subversion txn is created, and STDERR is returned to the client.

219:デフォルトの名無しさん
08/08/29 17:07:14
svnサーバのIPアドレスを変えたのだが,うっかりそれまでの
作業コピーをコミットしないままsvnサーバのIPアドレスが代わってしまった.

作業コピー側のsvnサーバのIPアドレスを変えたいのだが,どうすればできるだろうか?

220:デフォルトの名無しさん
08/08/29 17:15:31
svn switch --relocate

221:デフォルトの名無しさん
08/08/29 22:38:45
>>211
いまいち用途がわからないんで聞くけど、start-commitでどんなメッセージを表示させたいの?


222:デフォルトの名無しさん
08/08/29 22:40:17
もう自分でバグだと結論づけたんだからほっとけよ
クレーマーだから

223:デフォルトの名無しさん
08/08/30 03:50:10
>>219
常に名前で解決するようにする
hostsファイルに追加するなりすればよい

224:デフォルトの名無しさん
08/08/31 04:20:22
svnのwindowsバイナリ入れようと思うんですが、
CollabNet版とか
Tigris.org版とか
SlikSVN版とかいろいろあるようで、
どれがいいんですか?

普段はTortoiseSVN使ってるんですが、
バッチファイルで一括処理したい時もあるので
コマンドラインで使えるの探してる訳です。

225:デフォルトの名無しさん
08/08/31 07:57:09
>>224
TortoiseSVNに付属のsvn.exeでは何か不満でも?

226:デフォルトの名無しさん
08/08/31 08:12:12
>>224
TortoiseProc.exe では何か不満でも?
(詳しくは、ヘルプの 付録 D. TortoiseSVN の自動化 を参照)

>>225
TortoiseSVN に svn.exe なんかついてたっけ?

227:デフォルトの名無しさん
08/08/31 11:02:50
>>225
ついてないです。


228:デフォルトの名無しさん
08/08/31 12:22:45
>>226
>TortoiseProc.exe では何か不満でも?
224じゃないがコマンド名なげぇw


俺はとりあえずTigris.orgからダウンロードしたSVN使ってるが、他はなんか違うのかは気になるな。
CollabNetとかアカウント登録しないと落とせないのは何なんだ。

229:デフォルトの名無しさん
08/08/31 12:29:08
>>228
> 224じゃないがコマンド名なげぇw

オプションの方がもっとウザイけど、バッチでやるんなら問題ないだろ。

230:デフォルトの名無しさん
08/08/31 13:43:40
Subversion 1.5.2 age

231:224
08/08/31 16:54:59
TortoiseProcの情報ありがとうございました。
これで大丈夫です。

232:デフォルトの名無しさん
08/08/31 17:28:31
>>230
更新確認した。

233:デフォルトの名無しさん
08/08/31 18:08:32
TortoiseSVN 1.5.3 age

234:デフォルトの名無しさん
08/08/31 20:43:42
changelog?

235:デフォルトの名無しさん
08/08/31 22:43:53
いつもながらTortoiseSVNのバージョン番号はまぎらわしいな

236:デフォルトの名無しさん
08/09/04 05:48:36
リポジトリのレプリケーションってあったら使う?

237:デフォルトの名無しさん
08/09/04 09:18:56
What is replication?

238:デフォルトの名無しさん
08/09/04 09:47:17
DBMS用語のそれじゃね

239:デフォルトの名無しさん
08/09/04 10:18:17
git とかの分散系のを使えばいいんじゃね?


240:デフォルトの名無しさん
08/09/04 16:02:35
svk

241:デフォルトの名無しさん
08/09/04 16:31:42
1.5のはSVKは使えんよ

242:デフォルトの名無しさん
08/09/04 16:39:58
なんで?

243:デフォルトの名無しさん
08/09/04 16:44:30
いきなり途中で送信してしまった orz

なんで?
クライアント TortoiseSVN 1.5.3 & svk-2.0.2 と鯖 1.5.2 との組み合わせで特に問題なく使えてる気がするけど。
何か不具合あんの?

244:デフォルトの名無しさん
08/09/04 17:35:56
うちはアップグレード後、syncもpullもpushもダメになったよ。

245:デフォルトの名無しさん
08/09/04 17:37:49
svkが1.5に対応してないんじゃないか?

246:デフォルトの名無しさん
08/09/04 17:40:11
鯖1.52って言ってもリポジトリのアップグレードしてませんでしたってオチじゃ

247:デフォルトの名無しさん
08/09/04 17:59:23
1.5でリポジトリ変わったからな

248:デフォルトの名無しさん
08/09/04 18:17:25
試しにやってみたけど、普通にmirror→sync→pull→pushと出来たぞ。

249:デフォルトの名無しさん
08/09/05 10:58:12
最新リビジョンにupdateされたワーキングコピーを,
古いビジョンの状態に戻すにはどうすればいいんですか?

例えば,svn update して rev 12. となったとき,
rev 12 の変更が間違いだったことが分かり,
rev 11 の状態に戻したいんです.


250:デフォルトの名無しさん
08/09/05 11:03:16
>>249
11の内容をとってきてコミット

251:249
08/09/05 11:12:40
>>250
ありがとうございます.
その,「11の内容をとってきて」をワーキングコピーの中でやるには
どういうコマンドを使えばいいんでしょうか?


252:デフォルトの名無しさん
08/09/05 11:47:38
Setup-Subversion-1.5.2.en-us.msi
キテター!! っと思ったらドラフトだった・・・

253:デフォルトの名無しさん
08/09/05 11:53:44
>>249
r12 *から* r11への変更をマージする。

254:249
08/09/05 12:03:11
>>253
svn merge -r 12:11
これで逆マージになるんですね.
ありがとうございました!


255:デフォルトの名無しさん
08/09/09 04:36:32
サブバージョンのソフトが違っても.svnに保存するフォルダの方式は同じだと思って大丈夫でしょうか?
具体的に言うとwindowsxpでtigrissvnとtortise.svnを併用してますが大丈夫ですかこれ?

256:デフォルトの名無しさん
08/09/09 05:13:59
>>255
マイナーバージョンまで合ってればほぼ問題ない。
バージョンが同じでも問題のあるケースは Cygwin のやつと混ぜた時の話しか知らない。

257:デフォルトの名無しさん
08/09/09 07:01:30
>>256
見てみたら1.53と1.51でしたし大丈夫そうですね
どうもありがとうございました


258:デフォルトの名無しさん
08/09/09 10:52:21
subclipse, svn.exe, tortoisesvn併用してるけど平気

259:デフォルトの名無しさん
08/09/09 17:43:05
VSS2SVNでSubversionへ移行しました

VSSにtrukjなどは作っていなかったので
ブランチを切れるように、階層のトップに
TortoiseSVNでtrunkを作り、移動を行ったのですが
チェックアウトするとtrunkを作成してからのログしか
見れなくなってしまいました。
移動した段階で過去のログも引き継ぐことは出来ないのでしょうか?

260:デフォルトの名無しさん
08/09/10 10:56:53
SVNのインストーラをダウンロードしようとしたらもう1.5のしかねえ(;´Д`)
1.46のが欲しいのに・・。

261:デフォルトの名無しさん
08/09/10 11:28:41
あるじゃん。
0.19とかいくらでも古いのから選び放題。
URLリンク(subversion.tigris.org)

262:デフォルトの名無しさん
08/09/10 12:18:31
>>259
右ドラックのSVNの移動で移動させた?
それで移動させてコミットするときに追加(+)と出れば履歴も引き継がれるよ。


263:デフォルトの名無しさん
08/09/10 17:36:08
質問
誤って追加指定したファイルを管理外に戻す方法ってありますか?

一度コミットして削除(+コミット)して書き戻せばいいのだけど・・・もっと効率的な方法ってありません?

264:デフォルトの名無しさん
08/09/10 17:42:14
svn revert でどう?

265:デフォルトの名無しさん
08/09/10 17:43:25
対象を1つのファイル/フォルダにすれば、「追加を元に戻す」ってメニューが表示されるのね。
複数のファイルを選択してた orz

駄質問 スマソ

266:デフォルトの名無しさん
08/09/10 19:16:25
Windowsで使うためにsvkをUSBメモリに入れて持ち運ぶことは可能でしょうか?
svn と plink は簡単に持ち運べて便利に使っています。
が、Perl環境込みで持ち運ぶにはどうすればいいかと。

267:デフォルトの名無しさん
08/09/10 19:22:16
可能か不可能かと言う意味なら可能
でも君には無理だと思うよ

268:デフォルトの名無しさん
08/09/11 03:39:26
Subversion って、もっと、こう、なんか、
下のレイヤで起こっている進捗状況を事細かに表示してくれる
デバッグモードなんてないのかねぇ。

ちょっと遅めの WAN 経由でコミットしてるときとか
失敗して結局タイムアウトかよ!ってことがある。
SSHじゃぁ何が起こってるのかのか見ようがないし。
HTTP なら tcpdump でまだ何が起こってるのかある程度つかめるけど。



269:デフォルトの名無しさん
08/09/11 03:51:05
>>268
こういう問題のための neon → serf なんだっけ?
使ってみたらなんか変わるかもよ。

270:デフォルトの名無しさん
08/09/11 09:41:05
いつか neon じゃなくて serf がデフォルトになるんだろうか.
まぁ試そうにもビルドするのが面倒で・・

271:デフォルトの名無しさん
08/09/11 13:36:54
URLリンク(subversion.tigris.org)
1.5 から自分でビルドしなくても使えるようになってる?

272:デフォルトの名無しさん
08/09/11 17:46:09
いつもでっかいファイルをコミットした後のPROPPATCH で
500 エラーが返ってきてコミットに失敗する.
その直前の PUT 自体は問題なく終わる.

何か心当たりある?


273:デフォルトの名無しさん
08/09/11 17:50:16
質問で提示する内容を面倒くさがって殆ど略すようなやつに誰が解答を返すと思うのかね

274:デフォルトの名無しさん
08/09/11 17:55:05
apache のログと tcpdump の結果を出されても困るだけだろ?

275:デフォルトの名無しさん
08/09/11 18:39:45
500ならapacheのログがあるとだいぶ助けになるかもしれんよ。


276:デフォルトの名無しさん
08/09/11 21:54:16
拠点AとBがあって、両方に開発チームがいるんだが
AとBの間はそんなにネットが太くない
たとえばAにリポジトリサーバがあったとき、拠点Bの各メンバが
それぞれAにとりに行くのは遅いのであんまりやりたくない
拠点Bにキャッシュっぽいものを置けないだろうか

・readをキャッシュしてすばやくかえす
・writeはスルーしてキャッシュをクリアする

みたいなの。
作ってくれたらウチの妹を(検閲)していい。

277:デフォルトの名無しさん
08/09/11 22:00:16
妹うp

278:デフォルトの名無しさん
08/09/11 22:03:35
妹のスペックを明らかにしないのは下請法違反だな。

279:デフォルトの名無しさん
08/09/11 23:29:17
素直に分散型がいいかもよ?

280:デフォルトの名無しさん
08/09/12 06:39:05
gitとかの分散型に移行

TortoiseSVN使いだったが、git意外と使いやすい。コマンドラインでもいけるなこれ

281:デフォルトの名無しさん
08/09/12 07:04:22
>>276
svk使う。
readキャッシュが欲しいならミラーの機能があったような気がする。

282:デフォルトの名無しさん
08/09/12 08:14:04
更新はそんなに遅くは無いと思うが
まさか毎回チェ(ry

283:デフォルトの名無しさん
08/09/12 08:40:25
Subversion 1.5.0 での新機能 (WebDAV Write Through Proxy)
URLリンク(www.asahi-net.or.jp)


284:デフォルトの名無しさん
08/09/12 12:28:48
>>276
拠点Aがsvn以外にできないならsvkだな。
svkのリポジトリをローカルのsvnから見えるようにするだけでインチキくさい事もできるし。


285:10
08/09/12 12:30:59
>>10 で書いていた不具合くさいものは 1.5.2 で直ったようです。

* Pass client capabilities to start-commit hook (issue #3255)

報告まで。


286:デフォルトの名無しさん
08/09/13 08:39:36
>>283
おお、これちょっと試してみよう!

よくやった、ウチの妹を(検閲)していいぞ!

svkは以前試したんですが、手数が増えるのがちと難点でした・・・
できれば透過的であってほしいんです

287:デフォルトの名無しさん
08/09/15 12:40:03
svk でミラーとると、デポットのトップに svm:mirror っていう
値のないプロパティができるんですが、つまり svm:mirror が
トップにあるような subversion リポジトリは svk で
使われているかもしれないよっていうインジケータと思っていいんでしょうか?

てっきり svk:ほげほげ とかいうプロパティがつくものと思ってたら
svm:ほげほげ だったんで、なんでかなぁ、と。svm って何の略?
なんかそういうツールが過去にあったんでしたっけ?

さすがにサポートベクタマシンじゃないしなぁ・・

288:デフォルトの名無しさん
08/09/15 13:02:16
基本的にsvkの質問は帰ってこないと思え

289:デフォルトの名無しさん
08/09/15 13:10:34
svm:mirror は空のプロパティじゃなくて、
デポットのどのツリー以下に何がミラーされているかが
書かれているプロパティでした。

まだ svk 使い始めたばかりなんで手探り

290:デフォルトの名無しさん
08/09/15 15:36:43
depotの最後のtは発音されんので、カナ書きするならディポ/デポあたりが無難かとー。

# perforceのdepotは「ディポ」だったかな?



291:デフォルトの名無しさん
08/09/15 15:44:29
オフィス・ディポ

292:デフォルトの名無しさん
08/09/15 15:57:23
なるほど・・フランス語からだからなんですね

293:デフォルトの名無しさん
08/09/16 12:37:53
俺のまわり、みんなデポットって言ってる

294:デフォルトの名無しさん
08/09/16 12:41:58
英語読みでもいいと思う。

295:デフォルトの名無しさん
08/09/16 12:46:31
うちなんか、TortoiseSVNを松本って呼ぶんだぜ・・。

296:デフォルトの名無しさん
08/09/16 12:55:27
ガッツだせ。

297:デフォルトの名無しさん
08/09/16 13:48:49
おれもそれは想像した>松本

298:デフォルトの名無しさん
08/09/16 13:51:36
せめて亀にしてくれよって言ったけどダメだった。

299:デフォルトの名無しさん
08/09/16 16:22:44
なんで松本って言うんだ?

300:デフォルトの名無しさん
08/09/16 16:27:27
>>294
いや、英語読みで末尾のTを発音しないのだよ。
URLリンク(eow.alc.co.jp)

301:デフォルトの名無しさん
08/09/16 16:32:57
depotはフランス語由来なので英語圏でもtを発音しないのだけれど、それを英語読みというのかなぁ。

302:デフォルトの名無しさん
08/09/16 16:34:19
>>299
ウルフルズのトータス松本

303:デフォルトの名無しさん
08/09/16 17:15:48
ディポなんて言われても困るんだが

304:デフォルトの名無しさん
08/09/16 22:11:52
言葉なんか通じればいい。
どっちにしろ、俺たちの発音じゃネイティブには通じないんだから。

305:デフォルトの名無しさん
08/09/17 10:23:18
通じればそれで良いが松本はヤメレ

306:デフォルトの名無しさん
08/09/17 10:31:45
トータス
ターチル
ちがうの?

307:デフォルトの名無しさん
08/09/17 11:09:57
英語のトータスを知らなかったから、
トロヤンと読んでいて笑われた

308:デフォルトの名無しさん
08/09/17 11:15:00
トータスは脚で歩く陸亀、
タートルは鰭で泳ぐ海亀。

309:デフォルトの名無しさん
08/09/17 11:19:45
because he taught us

310:デフォルトの名無しさん
08/09/17 11:49:09
mock turtle乙


311:デフォルトの名無しさん
08/09/17 12:30:23
>>301
ローマ字読みだろ。jk

312:デフォルトの名無しさん
08/09/17 12:32:34
>>308
TMNTは海亀だったのかー!w

313:デフォルトの名無しさん
08/09/17 13:00:56
>>312
いいんでない? アメリカ人がちゃんと区別できるとは思えんし。


314:デフォルトの名無しさん
08/09/17 19:08:55
>>313
アメリカ人なめんな!

英語の話なのに。w

315:デフォルトの名無しさん
08/09/17 19:15:19
陸にいるからリクガメ、海にいるからウミガメといわけではないよ。

316:デフォルトの名無しさん
08/09/17 19:18:13
アメリカでは全部タートル
嘘みたいだけどコレ本当の話

317:デフォルトの名無しさん
08/09/17 20:44:35
ほんとかどうかは知らんけど、メリケン野郎はそう言う細かいことを
気にしないだろうとは思う。

318:デフォルトの名無しさん
08/09/19 01:59:48
>>217
仕様じゃ、ぼけー
source確認したら、標準出力は/dev/nullに突っ込まれとったわ

319:デフォルトの名無しさん
08/09/22 09:28:49
svn+ssh じゃなくて、単に(自己署名証明書でもいいから)
SSL でラップしただけのアクセス方法って使えないのかな?
svn+ssl というか、svns というか・・・


320:デフォルトの名無しさん
08/09/22 12:21:36
>>319
自分たちだけで使うなら自己証明で十分だとおもう。


321:デフォルトの名無しさん
08/09/22 12:34:21
>>319
うん,まぁ一応フィンガープリントは別経路で通知するけどね.
それはそうと svn+ssl て可能?トンネリングの一種として
なんかやりようがあるのかなぁ.sslwrap なんぞでできたりするだろうか.

322:デフォルトの名無しさん
08/09/22 12:36:44
今は stunnel なのか?

323:デフォルトの名無しさん
08/09/23 00:50:30
Stunnelとかstoneとかでぐぐるのだ

個人的にはstoneが好きさ

324:デフォルトの名無しさん
08/09/25 12:04:39
TortoiseSVN 1.5.3 で、
「差分」「URLと差分」がメニューに出てこない。
「以前のバージョンとの差分」しか出ない。
なぜだろう。

325:デフォルトの名無しさん
08/09/25 13:24:47
>>324
あれ?以前は出てたの?

俺偶然にもさっき初めて TortoiseSVN で
10リビジョンくらい前の状態と diff 取りたくて
どうやってやるんだ?って困ってた.

古いリビジョンを別の場所にエクスポートして
cygwin のコマンドラインで diff 取った.
バカなことしてたのかな俺.

326:324
08/09/25 15:04:20
>>325
自己解決した。シフト押しならが右クリックすると、メニューに出てくる。

327:デフォルトの名無しさん
08/09/25 15:15:11
.svn フォルダ以外のファイルをまとめて全部消す方法ってありますか?

.svn だけ消すなら、Windows のエクスプローラで検索して消せばいいんですが
それの逆をやりたいのです。

328:デフォルトの名無しさん
08/09/25 15:16:21
>>325
ログ表示
ログウインドウでリビジョンを2つ選択
右クリック
リビジョンを比較
うまー

329:デフォルトの名無しさん
08/09/25 15:20:44
>>327
つ find
つ Perl

330:デフォルトの名無しさん
08/09/25 15:30:45
>>328
その方法だと、別ブランチやタグとの比較ができない(ログには直系の先祖しか出てこないから)

331:デフォルトの名無しさん
08/09/25 15:40:39
>>329
やっぱそれしか無いっすか・・・
いまperlでシコシコ書いてますorz

332:デフォルトの名無しさん
08/09/25 16:04:09
Pythonマンセー

333:デフォルトの名無しさん
08/09/25 17:43:07
>>327
del *.* /s /q
.svnの中はリードオンリーだからこれで.svnを残して消せる。

334:デフォルトの名無しさん
08/09/25 17:47:31
.svnだけ消すならチェックアウトしたフォルダーにエクスポートだ(TortoiceSVN 1.5の場合)

335:デフォルトの名無しさん
08/09/25 17:50:12
何でよりによって.svnだけ残したいのか分からんが

336:デフォルトの名無しさん
08/09/25 23:19:28
ライブラリのソースの最新版をzipでダウンロードしたときに便利。
チェックアウトフォルダの.svnを残してライブラリファイルを削除。zip展開。svn追加、svnコミット(紛失にチェック)ってやると簡単に履歴登録できる。


337:デフォルトの名無しさん
08/09/26 07:27:50
findで十分じゃん。perlとか書く必要ないのに。

338:デフォルトの名無しさん
08/09/26 08:35:04
windows だとそういうコマンドラインのインターフェイスがもどかしいよな
最近は cygwin の chere がお気に入り

339:デフォルトの名無しさん
08/09/26 09:01:15
chereって検索したらエロいのが出てきた

340:328
08/09/26 12:57:02
>>330
だから何なんだよ?
>>325の要件とは関係ないだろが。
言いがかりつけんな、カス。


貴様には
つ レポジトリブラウザ

341:デフォルトの名無しさん
08/09/26 13:01:01
>>335
たぶんいわゆるmake cleanがしたいんじゃね?
おれもまれにそうしたいことがある。

342:デフォルトの名無しさん
08/09/26 13:02:46
TortoiseSVNの表示としてはリポジトリブラウザ

343:デフォルトの名無しさん
08/09/26 13:12:19
>>337
Windowsだと、最初からわりきってPerlなりなんなりで
スクリプトを書いたほうが逆に簡単じゃない?

344:デフォルトの名無しさん
08/09/26 13:15:23
最初に思いついた使い捨てコードこそ最良

345:デフォルトの名無しさん
08/09/26 13:37:03
FORとFIND使えばDOSで出来るけどね

346:デフォルトの名無しさん
08/09/26 13:39:53
エロゲのセーブデータをsvnで管理できますか?

347:デフォルトの名無しさん
08/09/26 13:45:29
普通に出来る。
ゲームのデータはpdumpfsとかのが楽だと思うが。

348:デフォルトの名無しさん
08/09/26 16:26:54
>>345
FORって使いにくくね?

349:デフォルトの名無しさん
08/09/26 16:32:46
使いにくいけどテンプレ化してコピペするだけだから慣れれば楽

350:デフォルトの名無しさん
08/09/26 16:34:45
使いやすい、使いにくいっていうより
Perlのインストールが不要だから楽

351:デフォルトの名無しさん
08/09/26 17:48:31
そういう用途ならwsh便利なのに

352:デフォルトの名無しさん
08/09/26 22:09:02
wsh って言うか、VBScript にしろ JScript にしろ、
それなりにコード書かないといかんからなぁ。

ぶっちゃけ >>333 でいいと思うが、俺なら

dir /s /b /a-d | find /v ".svn" > dir.svn
for /f "delims=" %f in (dir.svn) do del "%f"
del dir.svn

ってやるかな。

353:デフォルトの名無しさん
08/09/27 07:42:25
svn: アクセスのときの認証情報(リポジトリ内の conf/passwd だっけ?)
を使って、 http: アクセスのときにも認証することってできない?
http: アクセスのときは apache の認証モジュールのために
別途 htpasswd ファイルとか作るって認証情報が食い違って面倒・・・
LAN 内でしか使ってないから認証しないって言う手もあるけどそれは
さすがにどうかと思うし。

354:デフォルトの名無しさん
08/09/27 10:14:08
>>352
>/a-d
スレ違いだが属性の排他指定ってそう書くのかよ!
ヘルプみていろいろ試しても全然わからなかったから使ったことなかったよ。
どうやればそんな変態表記を思いつけるんだ・・・

355:>>352
08/09/27 10:48:36
>>354
> どうやればそんな変態表記を思いつけるんだ・・・

そんなもんヘルプの例見りゃアホでもわかるだろ。






って、今、ヘルプ見たら dir /s/w/o/p/a:-d ってなってた。orz
どうやって思いついたんだ? > 俺

356:>>352
08/09/27 10:56:22
>>353
> LAN 内でしか使ってないから認証しないって言う手もあるけどそれは

1人 Subversion ならともかく、複数人で使ってるならセキュリティ云々以前に
認証しないと更新者の名前が記録されないからその選択はなしでしょう。

そもそも、svn:// と http:// の両方のプロトコルを併用してるってこと?
http:// 使ってるならそっちに統合すればいいと思うけど、社内ネットワークの
関連とかで難しいのかな。
Apache の認証モジュールに手を入れるぐらいしか思いつかない。

357:デフォルトの名無しさん
08/09/27 12:18:32
>>356
たしかにユーザ名が記録されないのは痛いな。
部署内では svn が通るんだけど、
部署外のメンバーは https でしかアクセスできない。
なので認証情報を一元化したくて。

本当は社内で LDAP があるからそれに統一するのが
いいんだけど、svnserve は LDAP から認証情報
もってきてくれないしなぁ。

358:デフォルトの名無しさん
08/09/27 13:45:41
部署内の人も https でアクセスすればいいんじゃないの?

359:デフォルトの名無しさん
08/09/27 13:56:46
ユーザ名が記録されないっていうか、ログイン名になるんだけどな

360:デフォルトの名無しさん
08/09/27 21:23:35
>>353
mod_authz_svn じゃだめ?

361:デフォルトの名無しさん
08/09/27 22:15:33
部署内/部署外をhttpsによるアクセスで統合して、
個別のフォルダへのアクセスはAuthzSVNAccessFileでまとめてやる。


362:デフォルトの名無しさん
08/09/28 01:04:07
svnプロトコルでもSASL経由でLDAP使えるっぽいけど、
そのバイナリが対応してるかどうかは知らない

363:デフォルトの名無しさん
08/09/28 15:03:19
>>360
それは authentication じゃなくて authorization。

URLリンク(svn.haxx.se)
I wanna announce mod_authn_svn:
mod_authn_svn.c allows sharing the password file
between Apache 2.1 and svnserve. It reads the svnserve
password files and authenticates users against it.

同じこと考えてた人がいるようだけど、
すでにメンテナンスされていないっぽい。

364:デフォルトの名無しさん
08/09/29 21:08:41
TortoiseSVN って、「OFF」 できますか?

net stop ほげほげとか、taskkill はげはげとか、
コントロールパネルのどこかをいぢるとか
どんな方法でもいいです。

使いたいときだけ使って、使わないときは止めておきたいのですが。
今は仕方なく、使うときだけインストールして、使わないときはアンインストールしてます。
ものすごくメンドクサイです。

365:デフォルトの名無しさん
08/09/29 21:20:29
Windowsがないから試せないが、TortoiseSVNはたしかシェルエクステンション
として作られているから、ShellExViewみたいなソフトでON/OFFできるかも。


366:デフォルトの名無しさん
08/09/29 22:08:43
>>365
ShellExView を速攻でダウンロードして試してみましたがダメでした。
これは、右クリックメニューから隠すだけのソフトであって、
TortoiseSVN みたいなソフトを完全に停止させるわけではないみたいです。

なんで停止させたいのかというと、ファイル名を変更したりとか、
いろいろ作業すると、エクスプローラのファイル一覧ウインドウがリフレッシュされてしまい
作業していたファイルを見失ってしまうからです。
たとえば、hogehoge.java.mine を hogehoge.java にリネームすると
ウインドウが再描画されて、hogehoge.java を探さなければなりません。
1つのディレクトリに1000個とか2000個とかたくさんのファイルがあると
何度も探さなければならなくてイライラするんです。
なんか、たちの悪いウイルスにでも感染したのかと思ったら、
TortoiseSVN のせいだと分かったんです。

TortoiseSVN を停止しなくても良い方法があれば、それでもいいので
どなたか良い知恵をください。

あ、DOS窓で・・・とかは無しで。

367:デフォルトの名無しさん
08/09/29 22:20:21
>>366
> いろいろ作業すると、エクスプローラのファイル一覧ウインドウがリフレッシュされてしまい

レジストリを弄ってウインドウをリフレッシュさせない方法があったような気がする。
もしくは、別のファイラーを使う。

368:デフォルトの名無しさん
08/09/29 22:31:59
俺としては1つのディレクトリに1000も2000もある状態をどうにかしたいところだけど・・・
エクスプローラでhogehoge.javaってキー打つとそのファイルのところまで移動してくれない?

369:デフォルトの名無しさん
08/09/29 22:37:23
アイコンオーバーレイやめればいいんじゃないの?

370:デフォルトの名無しさん
08/09/30 12:42:31
>>366
設定>アイコンオーバーレイ>ドライブの種類 にて、全ドライブのチェックを外す。
アイコンオーバーレイさせたいフォルダのみを「含めるパス」に記入する。

371:デフォルトの名無しさん
08/09/30 17:00:25
MigemizeExplorerいれろ

372:デフォルトの名無しさん
08/10/03 07:33:04
foo\
  bar\
    baz\

というディレクトリ構成があってそれぞれに.svnディレクトリがあって
プロジェクトfooとそれとは無関係なプロジェクトbar(bazを含む)がチェックアウトされた状態になっている。

このときfoo\bar\baz\test.txtというファイルのパスからtest.txtのプロジェクトのルートである
bar\ディレクトリを見つけ出すのはどうすればいいんでしょうか。
.svnのあるディレクトリを上方向に辿って行くとfooがルートだと誤認識されてしまいます。
正式なチェック方法がなければ.svnの中を探る実装依存でもいいです。

.svn/entriesのリポジトリパスを見ると出来そうな気もしてますがいい方法があれば教えてください。

373:デフォルトの名無しさん
08/10/03 08:22:06
svn:externalsがあるトコで止めたらどうか。
svn:externals使ってるわけでもなく混在させてるなら知らん。


374:デフォルトの名無しさん
08/10/03 08:29:53
無関係ということはsvn:externalsを使っているわけではないのだろう。
svn info --xml |sed -n 's/<url>¥(.*¥)<¥/url>/¥1/p'
でィレクトリのリポジトリパスを抜き出してチェックするくらい?
直接.svnの中を直に見るよりはマシ程度のレベルだが。


375:デフォルトの名無しさん
08/10/03 18:50:11
既出かも知れんが、VC6でビルドしたexeにリビジョン番号を埋め込む方法ないかな。。

いまは、ビルド時にSubWCRev.exeでバージョンリソースに最終コミットリビジョンを
埋め込んでるんだけど、そのバイナリをコミットするので、リビジョンがずれてしまう。

svn:keywordsを使ってexe内のバージョンリソースをcommit時に書き換える方法を検討したのだが、
バージョンリソースは必ずutf16で埋め込まれてしまうので、keywords置換が発動してくれない。

需要のある機能だと思うんだけど。。。だれか解決した人いませんか?


376:デフォルトの名無しさん
08/10/03 19:13:29
とあるソースあるいは全ソースにstatic char文字列

377:デフォルトの名無しさん
08/10/03 19:21:48
svn のリビジョン番号は、コミット毎に1つ進むタイムスタンプに過ぎないので、
プロダクトのリリース番号に関連付けしないことをお奨めするよ。

むしろ、プロダクトのリリース番号は独自に管理して(バージョン番号をカウントアップするシェルスクリプトを用意しておくと良い)
リリース作業バッチで、バージョン番号を更新し、同時に svn commit , svn copy tags/version-xxx を実施するやりかたがお奨め。

378:デフォルトの名無しさん
08/10/03 19:50:47
WCとリポジトリ見てビルドIDを生成するツールを作ってビルド時に使っている。

379:デフォルトの名無しさん
08/10/03 21:50:04
>>375
> そのバイナリをコミットするので、リビジョンがずれてしまう。

それ無理じゃね?
コミット完了するまでリビジョンはわからんし、コミット前までに
リビジョンはわかってないとバイナリに埋め込めないでしょ?

むしろ、チェックアウト/エクスポート時に埋め込むような方法を
考えた方がいいと思うけど。

380:デフォルトの名無しさん
08/10/03 22:16:10
キーワード展開が使えないか


381:デフォルトの名無しさん
08/10/03 22:41:16
ていうかソースファイルから生成されるバイナリってバージョン管理の対象に含めるものなの?

382:デフォルトの名無しさん
08/10/03 22:51:14
コンパイルの結果生成されるファイルは含めないのが普通だと思う。
だけど、最終的な目的ファイル(exe等)は含めておくと便利だと思う。


383:デフォルトの名無しさん
08/10/03 22:51:53
普通はソースツリーでタグを生成した時のリビジョン番号でアナウンスするもんだと思ってた。

384:デフォルトの名無しさん
08/10/04 09:19:33
俺は(リリース)タグ上でビルドするとリビジョン付のバイナリが勝手にできるようにしてる。
タグ名についてる枝番は通常、リリースのリビジョンより一つ若いが気にしない。
svn info の Last changed Revから取ってる。

385:デフォルトの名無しさん
08/10/04 20:49:26
TortoiseSVNでコンテキストメニューの&DIFFが削除(&D)とかぶるってるんだけど
これ簡単に変える方法あったらおせーて。
サブメニューに移動ってのは無しで。

386:デフォルトの名無しさん
08/10/04 22:08:06
>>383
リリースタグ打ったんだからリリースタグをアナウンスすればすっきりするんじゃないか?

387:デフォルトの名無しさん
08/10/05 14:28:07
SCCS、RCS時代に普通に行われていた管理方法が、いとも簡単に忘れ去られた事実について。

388:デフォルトの名無しさん
08/10/05 19:57:56
svnversion すると
1234:1240M
って出るんだけど、
左の 1234: が出なくなるようにするには
どうしたらいいの?

389:デフォルトの名無しさん
08/10/06 01:53:01
svn up

390:375
08/10/06 12:52:05
>>376
SubWCRev.exe使うんだろ?1こずれるんだよね。

>>377
Nightly Buildで毎晩テストしてる状況で、毎晩リリースタグを打つわけにもいかない。
特定のバイナリから、それをビルドしたリビジョンが確実に判明する状況は、普通に便利だと思わない?


>>379
キーワード展開をうまく利用できれば可能なはずなのよ。

>>380
そうなのよ。

>>384
それSubWCRev.exeで出来るよ。
で、今は俺も1つずれるのを気にせず運用してきたわけだが、
新人の混乱がどうも避けられなくてね。何度説明しても、
体に浸透するまで数回はミスるようだ。


391:デフォルトの名無しさん
08/10/06 13:10:53
>>390
リビジョンがいっこずれてるからって、何をミスるんだ?

392:デフォルトの名無しさん
08/10/06 14:42:31
ライブラリのRubyバインディング使いたいんだけど、まとまったドキュメントってどっかに無い?

393:384
08/10/06 16:35:21
そうか、ここはSubversionという名前だけど、TortoiseSVNについて語るスレだったな。
.exeが走らないプラットフォームだから、関係なかった。

394:デフォルトの名無しさん
08/10/06 16:47:32
>>393
ちゃんとあんたのレスも読んでいるからそんなに不貞腐れなさんなって。
ただちょっと、>375がSubWCRev.exeを知っている自分に酔っているだけなんだから。

395:名無し募集中。。。
08/10/06 16:51:23
svkって安定してる?
1.05くらいの時に使ってpushできなくなって困ったけど
今は2.02か・・・

396:デフォルトの名無しさん
08/10/06 18:08:56
>>390
> Nightly Buildで毎晩テストしてる状況で、毎晩リリースタグを打つわけにもいかない。

毎晩ビルドなら、日付で管理するのが一番良いと思うぞ。
そもそもバッチ処理なら、毎晩タグ打てば良い。用済みで邪魔になったら削除すれば良い。

> 特定のバイナリから、それをビルドしたリビジョンが確実に判明する状況は、普通に便利だと思わない?

リビジョン番号は、本質的にリポジトリの更新番号にすぎないので、その利便性は、日付による管理と大して変わらない。
タグ名なら差分比較やチェックアウトの指定にそのまま使えるが、リビジョン番号はどのブランチかを併せて指定しないと使えない。

リビジョン番号より、タグ名をバイナリに埋め込んだほうが、はるかに便利です。

397:デフォルトの名無しさん
08/10/06 21:23:32
$Id:$ とかを使うC系プログラマに質問。
#ident ってみんな使う?
static char と違って.hファイルに書いても無問題なのがありがたいが。


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch