あるファイルのリネーム前後のブランチがそれぞれあります。 リネーム前のブランチのファイルに修正を加えた場合、 これをリネーム後ブランチのリネームされたファイルにも同様の修正を行いたいのですが、 どのように行えばよいでしょうか。 diffを取ってpatch方式や、svnのmergeでは、ファイル名が異なるため上手くいきませんでした。
>>302 普通に svn merge しただけだと単にスキップされるって状況だろうから、そのあとさらに
個別に対象を指定して svn merge するとか。
>>303 Subversionはファイル名変更も管理してくれる、という程度の知識しか無かったので
マージも自動で名称変更に追従してくれるのかと勘違いしていました。
対象ファイルも少なかったので、それぞれ
リネーム前のファイル名(URL)からmergeすることで、思っていたことができました。
ありがとうございます。
USVNで管理しているんだけどレポジトリブラウザでちょっと大きなファイル(それでも9kBくらいのソースで)を見ようとすると IEだと「Internet Explorer ではこのページは表示できません」ってなってサーバ接続エラーがでる。 Firefoxだとなにも表示されない白いページになる。(ソースを開いてもなにも書かれいない) ApacheのTimeoutも120でさほど短い設定ではないのにこうなってしまいます。 なにか採決の糸口なる情報持っている人いませんか?
>>305 回線が細いとか、サーバのスペックが悲惨とか、パーソナルファイアウォールが悪さしてるとか
>>306 ・回線
ローカルサーバですから100BASEで繋がっています。
・サーバスペック
Atom230 メインメモリ:1GBですから特にスペック不足ではないと思います。
一応他のサーバ情報としては
CentOS5.4
USVNで利用するPHPとMySQLはOS標準のrpmパッケージを利用。
・ファイアウォール
ネットワーク越しではなくてサーバ上のFirefox上からもダメでした。その時はダウンロード画面が出てきてそれをDLしてもからファイルがDLされます。
こんな感じです。
308 :
305 :2010/02/11(木) 00:53:54
apacheのエラーログを覗くのを忘れていたので覗いてみると [notice] child pid 数字 exit signal Segmentation fault (11) が吐いているのがわかったのでこれで検索してみると gdbでデバックしてみたら 16進数 in pcre_dfa_exec () from /lib/libpcre.so.0 を吐いて止まる。 btしてみたら 大量の「#数字 16進数 in ?? () from /lib/libpcre.so.0」を吐いた後に #17018 0x0089b5a8 in ?? () from /lib/libpcre.so.0 #17019 0x008a1195 in pcre_exec () from /lib/libpcre.so.0 #17020 0x04b77644 in ?? () from /etc/httpd/modules/libphp5.so #17021 0x04cf8ea0 in ?? () from /etc/httpd/modules/libphp5.so #17022 0x04cfa328 in execute () from /etc/httpd/modules/libphp5.so #17023 0x04cf87cc in ?? () from /etc/httpd/modules/libphp5.so #17024 0x04cfa328 in execute () from /etc/httpd/modules/libphp5.so #17025 0x04cf87cc in ?? () from /etc/httpd/modules/libphp5.so #17026 0x04cfa328 in execute () from /etc/httpd/modules/libphp5.so #17027 0x04cf87cc in ?? () from /etc/httpd/modules/libphp5.so #17028 0x04cfa328 in execute () from /etc/httpd/modules/libphp5.so #17029 0x04cf87cc in ?? () from /etc/httpd/modules/libphp5.so #17030 0x04cfa328 in execute () from /etc/httpd/modules/libphp5.so #17031 0x04cf87cc in ?? () from /etc/httpd/modules/libphp5.so #17032 0x04cfa328 in execute () from /etc/httpd/modules/libphp5.so
#17033 0x04cda7f0 in zend_execute_scripts () from /etc/httpd/modules/libphp5.so #17034 0x04c99f85 in php_execute_script () from /etc/httpd/modules/libphp5.so #17035 0x04d5d725 in ?? () from /etc/httpd/modules/libphp5.so #17036 0x005f6a5d in ap_run_handler () from /usr/sbin/httpd #17037 0x005fa408 in ap_invoke_handler () from /usr/sbin/httpd #17038 0x00606364 in ap_internal_redirect () from /usr/sbin/httpd #17039 0x00c39630 in ?? () from /etc/httpd/modules/mod_rewrite.so #17040 0x005f6a5d in ap_run_handler () from /usr/sbin/httpd #17041 0x005fa408 in ap_invoke_handler () from /usr/sbin/httpd #17042 0x0060651e in ap_process_request () from /usr/sbin/httpd #17043 0x006032bf in ?? () from /usr/sbin/httpd #17044 0x005fe93d in ap_run_process_connection () from /usr/sbin/httpd #17045 0x005fea3c in ap_process_connection () from /usr/sbin/httpd #17046 0x0060aec4 in ?? () from /usr/sbin/httpd #17047 0x0060b134 in ?? () from /usr/sbin/httpd #17048 0x0060c049 in ap_mpm_run () from /usr/sbin/httpd #17049 0x005e2157 in main () from /usr/sbin/httpd となった。 で何が原因かはいまいちわからん。ただPHPのソースぽい感じはするから板違いかな。
310 :
デフォルトの名無しさん :2010/02/11(木) 05:37:12
もう、みんなHgにしようぜ
、i`ヽ ,r‐'ァ `ヽ:: ::´ ヽ ヽ , -‐--、 / / ヽ \ I:::::::I_ _ / / ┌──────────── ヽ ヽ i,(;;;ノI、;;;)l ,,/ , ' < フゥゥゥオオオオォォォオオオオゥゥ! ヽ ` ー 、.,,ゝ´ヮ`,ノュ_, - ' r' └──────────── ` 、_ /::: `山'::::: / ヽ:::::::::::|::::::::"",r‐' 〉::::::::|::::::::::¨/ /;;;;;;;/;;;;;;;;;;/ /;;;;;;;/:::::::::::《 <;;;;;;;《:::::::::::::ヽ )) / ヽI,r''"""^~ヽ / ,/ ヽ ヽ
>>310 NetBeansで少し使ってみたんだけど、特に違和感なく使えたのはよかった。
けど日本語ファイル名扱えないんでしょ?
313 :
デフォルトの名無しさん :2010/02/13(土) 08:32:36
自分はtortoiseHgての使ってるけど、別に日本語ファイルとかで問題なさげだけど。 個人的にはビルドサーバなんかはSubversionで、クライアントはHgてのが組み合わせ的には良いように見えるけど。
>>313 それ多分、SJISでファイル名突っ込んでるよ。あーあやっちゃたねw
hgの場合、一人でもそういう人がいるとリポジトリ壊しちゃうから、まだ勧められないんだよねー
よくわからないんだが、未だにSJISのファイルシステムを常用している Winユーザーって存在するの?
ファイルシステムがSJISかどうかが問題じゃなくてソフトが使っているAPIの問題だよ。
へぇ、21世紀になってから開発された、linux絡みのグローバルな利用を前提とした システム内に多言語対応を意識せずに作られた物があるってのも不思議だけど、 そんなものなのかね。
linux絡みだから変になるんじゃないかよ。 linuxの世界では未だに「1文字=1バイト」という概念が根強く生きている。 WindowsはNT系でユニコード対応しちゃったからとっくの昔に「1文字=16ビット」に移行しちゃってるよ。
どうせなら1文字=32ビットに移行してみませんか
UTF-8があろうと、1バイト1文字なアメリカ人に使われたら台無しになる。 いや、hgは使ったことないから知らないけど。
違う。Unix的な考え方だと、ファイル名はあくまでNULターミネイトされたバイトの配列で、その解釈locale依存。 まぁ、だからUTF-8であってもNFCとNFDが混じるケースだとひどい目にあう訳だが。 一方、WindowsのファイルシステムはUTF-16のNFCで、これをそのまま扱うにはワイド文字系のAPIを使う必要があるのだが、これが一般的なUnix系アプリのソースの書き方とは致命的なまでに相性が悪い。 で、たいていのUnix系アプリのWin32移植がANSI文字系APIを使いやがるせいで、ファイル名に関しては、大変残念な結果になる。 根本的な解決方法は、Cygwin-1.7がやってるような、API前後でのUTF-8<=>UTF-16変換だと思うんだけどねぇ...。
>>314 別にリポジトリは壊れてないだろ。
君の都合に悪い状態になるだけで。
>>312-313 日本語ファイル名に対応してないからダメ、というわけではない。対応してる。
問題が出るのは、
・文字コードが違う環境間をまたいでバージョン管理する
かつ
・ファイル名に、環境間で互換性のない文字(ASCII以外だと思っておk)が入ってる
という場合。
なぜならリポジトリに入るファイル名がバイト列まんまだから。
逆に言えば、この条件を満たさないなら、普通に使える(個人用とか社内用とか)。
Bazaarならおk
NetBeans密かにSVNサポートがあって更新されたファイルとかわかるのがよいね。 gitとかも公式サポートしてくれたらいいのに
おっと、全然スレ違いの内容だわ失礼した・・・
>>326 俺はRedmine入れちゃってそっちでもリポジトリ割り当ててソース見れるようにしてる。
一旦入れたらソース見るの楽っすよ
>>326 Bazaar はファイルにIDをつけて管理しているので、ファイル名が変わっても
マージできますね。
Web Interface は、 loggerhead というプラグインをインストールしてください。
TortoiseSVNでファイルをエクスプローラから直に削除しても更新すれば元に戻せたんだけど 最近のバージョンだと更新しても元に戻らないし新規追加扱いになるのね
えっ
>>330 試してみたけど、そんな動作になってない。ちゃんと想定通りの動作してる。
TortoiseSVN 1.6.7, Build 18415 - 32 Bit
俺も1.6.7だが330と同じ挙動する事がある。 VisualStudio上から誤ってファイルを削除したら戻せなくなった。 他のところから消したファイルを持ってきたら管理外表示。 仕方ないからチェックアウトし直した。 必ず起きるわけじゃないが、他にもなった人がいた。 まぁ、.svnをいじったんだろって言われて終わり。
334 :
デフォルトの名無しさん :2010/02/18(木) 12:15:14
VS用のプラグインあるけどな。 AnkhSVNとかVisualSVNとか、後者は有償だったかもしれんけど
revertしないの?
AnkhSVNは1.6系の2.1が標準になったのかな 今まで2.1使ってるとアップデート通知が2.0で来てたのがちゃんと2.1で通知来るようになった
管理外扱いになるのでrevertしても戻らなかった。 特定のリビジョン指定で更新しても戻らない。
只のdelがsvnの管理してる状態に影響与えるって信じられないなあ。 バグで表示がそう見える、ってだけならありそうだけど。
今度発生したらstatus見てみれ
non-versioned
341 :
デフォルトの名無しさん :2010/02/20(土) 00:43:46
Subversionって.svnフォルダが各フォルダにあるのがダメなところなんだろうね。
じゃあgitもCVSもダメだな 他は使ったことないからわからん
>>342 gitはルートのみに.git
cvsは各ディレクトリにCVS
どっちかって言うとブランチとタグの扱いがダメだよね リポジトリレイアウトに依存してるからブランチやタグを取得するAPIが存在しない 自力でやるにも、ユーザーの手助けを得ないと出来ない(場合がある)
そのためのtrunk,tags,branchesの指針だろうね。
svn使ってたときはメンバーがtrunkの下にブランチ作ったり、ルートにブランチ作ったり散々だったぜ ブランチをbranchesに移動した後もTortoiseSVNだとマージしようとしても リビジョンログがデフォだと出なかったり大混乱だったわw
そうだね、包丁は切れるから悪いんだね。 切れない包丁がいいんだよね。
よく切れるがじゃがいもしか切れない包丁がほしいって話じゃないの
んー、包丁の例だとわかりにくいが。 一般人は馬鹿だから、機能を絞ってやらないといけないってことかと。 C/C++に対するC#、Java的アプローチ gitもすごくいいんだけど、もう少し馬鹿向けに作ればよかったな。機能が複雑すぎるw その点、TortoiseSVNは馬鹿でも使える点で革新的だった。 もちろん、馬鹿といってもプログラマーという人種でないと使いにくいが。 svn+sshとかやるときは面倒だが、セットアップ面倒なのはしゃーない。
変な分になった。その馬鹿でも使えるTortoiseSVNで
>>346 みたいなことが起こっているの忘れてたww
危ないから、constもtypedefも多重継承もダックタイピングも使えません!! 本音はVMに実装できないからじゃないかな?
Windows 用のバイナリって Tigris.org からは提供されなくなったの? CollabNet の方では 1.6.9 があるみたいだけど、 Tigris.org には 1.6.6 までしか無い。 CollabNet のだとあからさまに余計なものをインストールしそうで手を出しにくい (´・ω・`)
とりあえず、社内で数人で使うなら共有フォルダに直接リポジトリを作って TortoiseSVNでローカルコピーをチェックアウトするやり方で十分だな。
>>352 余計なものって、なんか前例でもあるの?
同じものかどうか1.6.6で比較してみたら?
>>353 うん
ユーザ登録したくないから自分でコンパイルするか。
>>353 クライアントは TortoiseSVN で 1.6.9 相当の 1.6.7 まで上げているから
ついでにサーバーも上げようと思ったんだよ。
>>354 Apache2.2.13 とか ViewVC 1.0.9 とか、既に自分で入れている所に何か余計なことされそうで。
しかも微妙に古いのを突っ込まれそうという。
>>355 ダウンロードしてインストーラを途中まで走らせてみた。
mod_dav_svn.so とかと Apache をセットでインストールしようとするくさい。
なんだよこれ、入れたあとで何とかするか、お仕着せに従うしかないのか、、、 orz
クライアントだけというのがあるようだけど。
結局、インストーラを解凍だけして自分で既存のものを置き換えてみた。
もちろん前の環境にすぐ戻せるようにしてるから、しばらく様子見で使ってみる……。
>>357 クライアントもダウンロードして展開してみたけど、本当にクライアントでワラタ。
svnadmin.exe すら入っていないというステキパッケージ、ある意味正しい姿勢なんだろうけど。
クライアントもサーバーもマニュアルが PDF なうえ古いし『 For Subversion 1.5 』だそうで。
apache といい罠ちっくで誰得なバイナリパッケージ。
日本語のメッセージファイルが無いのも寂しい。
コピーライトの日付も何か2009年のままだし、雑? そういうもの???
===ココから===
svn, version 1.6.9 (r901367)
compiled Jan 21 2010, 22:00:47
Copyright (C) 2000-2009 CollabNet.
Subversion is open source software, see
http://subversion.tigris.org/ This product includes software developed by CollabNet (
http://www.Collab.Net/ ).
===ココまで===
自力でコンパイルできる
>>355 がうらやますぃ。
待てば Tigris.org から出てくるのかなぁ。
>>356 その心配に別に前例があったわけじゃないのか・・・
サーバークライアント版はインストール時にどのサーバーモジュールをインストールするか聞いてくるし。
Winのバイナリー入れるならtortoiseSVNで十分な気が。
>>357 クライアント版はsvnadminが含まれないからユーザーに配布するのに適してるね。
>>359 どうみても Apache 用モジュール二つだけ取り出すという選択肢に見えなかった
からキャンセルしたけど、今となってはインストーラに任せると既存の Apache が
どうされるのかに興味がなくはないけど自分では試したくないw
何か、すぐにもとの 1.6.6 に戻しそうな自分がいる…
>>358 中途半端な知識をつけた素人って雰囲気がしてるんだが、どうなの。
>>361 うん、否定できない、自覚してる。
チラ裏日記ごめんね。
なにそれこわい
俺も
>>330 ,333 の状態になった。
なんだコレ?
チェックアウトし直しでなんとかするしかないのか?
さぁ再現手順を調べるんだ。
さっきから試してるけどわかんねー。 チェックアウトし直した今は、削除して「更新」かけると期待通りにファイルが最新に復元される。 コミット一つしてるから、現象が起きたバージョンに戻してないのがいかんのかと 元のバージョンを指定しても今は復元される。 もういいや・・・
explorerから直に「削除」したつもりが 実はうっかりTortoiseSVNから「削除」してしまったのじゃないのか。 >更新しても元に戻らないし新規追加扱いになるのね 「削除」して無くなってしまったファイルが「新規追加」扱いされるのがおかしい。 ふつうは「紛失」扱いされるはず。
DELキーで削除してました。
Explorerから削除して、手拍子て削除済としてコミットすればそうなる罠。 というか、対象ディレクトリのログを調べたらどうなってるのかわかるでしょうが。
コミットしてませんがな。
チェックアウトしなおして元に戻ってるんだからコミットしたなんて事にはならんだろ・・
>>368 ,370
アホか。
そうなら誰も問題にする訳ないだろ。
自分のところでは発生したことないからわからないけど、revertでも元に戻る? それともcheckoutじゃないとダメ?
昨夜の
>>365 >>367 です、自分の場合は TortoiseSVN でいうところの
「SVN 更新(SVN Update)」
「特定のリビジョンへの更新(Update to revision)」
「元に戻す(Revert)」
を試したけどどれも戻ってこなかったんで諦めて別の場所にチェックアウトしたら
"そこには居た"ので
>>333 の事前情報に感謝した。
他のリポジトリのワーキングコピーでも削除したりして試してみたけど
起きたのはその時だけ。
正直
>>330 >>333 を軽く読み飛ばしてたけど、実際なってみると焦るわw
事前情報が無ければリポジトリを疑っててチェックアウトを試すまで
もう15分は悩んでたと思う。
GoogleCodeのSubversionリポジトリってファイル置き場にしても大丈夫なんだろうか 咎められたってのは聞かないけど
378 :
デフォルトの名無しさん :2010/03/11(木) 05:58:30
ソースコードでなく一般的なWORDとかExcelとかのファイルを subversionで管理しようとしています(非プログラマのチームです)。 TortoiseSVNのような専用クライアントを使わずに、 リポジトリを普通の共有フォルダのように見せかけて、 Windowsのエクスプローラ+webDAV+Autoversioningで運用しようと考えています。 Keyword Substitution($Revision: 12 $とか)は利用したいのですが、 webDAV経由でファイルを取り出すとKeyword Substitutionが行われません。 (Keyword Substitutionはクライアントの機能なので当然と言えば当然なのですが) そこで、webDAV経由でアクセスした場合、サーバ側でKeyword Substitutionを 行ってからファイルを渡すようにsubvsersionを変更したいのですが、 どこかに参考になりそうなパッチはないでしょうか?
連続でコピーで切り方法ありませんでしょうか。 svn copy -m "" file:///tmp/repo/trunk/{aaa,bbb} file:///tmp/repo/branches/{aaa,bbb} こんな感じでやろうとしたら”クライアントが引数を解析しているときにエラーが生じました” とエラーが出ますy。
380 :
デフォルトの名無しさん :2010/03/11(木) 22:59:57
Subversionなんてもう古い。みんなHGしようぜ〜!!!
、i`ヽ ,r‐'ァ `ヽ:: ::´ ヽ ヽ , -‐--、 / / ヽ \ I:::::::I_ _ / / ┌──────────── ヽ ヽ i,(;;;ノI、;;;)l ,,/ , ' < フゥゥゥオオオオォォォオオオオゥゥ! ヽ ` ー 、.,,ゝ´ヮ`,ノュ_, - ' r' └──────────── ` 、_ /::: `山'::::: / ヽ:::::::::::|::::::::"",r‐' 〉::::::::|::::::::::¨/ /;;;;;;;/;;;;;;;;;;/ /;;;;;;;/:::::::::::《 <;;;;;;;《:::::::::::::ヽ )) / ヽI,r''"""^~ヽ / ,/ ヽ ヽ
>>378 予想で申し訳ないが、WordとかExcelには無理なんじゃないかなぁ
>>379 svn copy -m "" file:///tmp/repo/{trunk,branches}/aaa
svn copy -m "" file:///tmp/repo/{trunk,branches}/bbb
以下同様に、という感じでやるかなぁ
ソースコード管理システムでバイナリーファイルを管理するのって・・・
世の中にはな、専用のバイナリファイルフォーマットを専用のエディタで編集することもあるんだよ。
FAQぽいけど、質問スマソ TortoiseSVNでインポートするのに、現在のタイムスタンプを保持することはできますか?
>>387 タイムスタンプは保持されてる。エクスポートするときにファイルのタイムスタンプが復元される。
>>385 Subversion以降の世代のバージョン管理システムは
CVS以前と比べてバイナリファイルの差分保持の効率性が飛躍的に向上しているので、
小さなファイルなら問題ない。
数10〜数100MBクラスになるとちょっと疑問だが。
1プロジェクトテラバイトクラスのムービーデータも扱っています。
>>388 エクスポートのときだけ初期タイムスタンプが復元されて、
チェックアウトのときは復元されない、で合ってますか?
>>391 チェックアウトも初回は復元されたかも。
試してないけど。
少しぼやけてきたので、具体的に再質問します。 現在のタイムスタンプのまま、リポジトリに格納したい Subversionではできる?できるとすると、方法とバージョンは何でしょう? TortoiseSVNではできる?できるとすると、方法とバージョンは何でしょう?
>>395 そもそもサーバー側の時間で格納される。
398 :
388 :2010/03/14(日) 20:19:52
tortoiseSVN 1.6.7にて確認 ログに表示される時刻 コミット時刻 更新で変化したファイルのタイムスタンプ 更新時刻 更新で変化しなかったファイルのタイムスタンプ 変化なし エクスポートしたファイルのタイムスタンプ コミット時刻 追加ファイルも同じ 388は勘違いだった。
無理でしたか。了解しました。サンクスです。
おれんとこは、こう tortoiseSVN 1.6.9 更新で変化したファイルのタイムスタンプ コミット時刻 subclipse+JavaHL 1.6.9 更新で変化したファイルのタイムスタンプ コミット時刻 subclipse+SVNKit 1.3.2 更新で変化したファイルのタイムスタンプ 更新時刻
makeコマンドってファイルのタイムスタンプでコンパイル対象を決めてるじゃないですか。 updateしたときにタイムスタンプが古くなっちゃうとbuildに支障をきたすので updateでは現時刻のタイムスタンプにしてます、 っていうCVSの説明をどっかで見ました。 SVNもこれを踏まえてるのかと。
>>401 updateかけた後は、distcleanしてすべてやり直し。
>>401 そう、svnもそのとおりで更新時刻に更新されるのが既定の動作。makeに都合がいい。普通はこれで問題ない。
だけど設定でコミット時刻に変更もできる。
>>330 >>333 >>376 ファイル追加したブランチをtrunkにマージして、
その後ブランチにswitchしたらその追加したファイルがバージョン管理から外れてた(ように見えた)。
addはできたけどcommitは既にファイルが存在するといわれてエラー。
削除してrevertしても復活せず。
チェックアウトし直したら何も無かったように復活した。
全部TortoiseSVNで行ってたのだけど、Tortoiseの問題かどうかは分からない。
>>404 同じブランチにswitchしたということでいいのかな?
>>405 そうです。該当のファイルを初めてコミットしたブランチです。
>>404 追加ファイルがあるブランチAからマージ後にコミットせずにブランチAにswitchしたのなら、追加ファイルが当然重複すると思うけど。
マージ、コミット、switchが普通の流れだと思うよ。
エラーがでたらとりあえずクリーンアップしてごらん。
>>407 説明抜けてましたが、マージ後コミットは実行してます。
trunkのAフォルダにtxt1があり。 /trunk/A/txt1 そんでtrunkからbranchesにAをコピー。 /branches/A/txt1 /branchesのAをチェックアウトしtxt1を修正。 wc/A/txt1' その後trunkのAフォルダにtxt2を追加。 /trunk/A/txt2 マージしようと思い、下記を実行そしたら、txt2が消えてしまいました。 svn merge file:///trunk/A file:///branches/A ./wc/A D /trunk/A/txt2 マージで消さない方法はありますでしょうか。
>>409 ディレクトリ単位でマージかけてどうする。
branchとtrunkのどちらにマージしたいのかわからないので、 trunkにマージしようとしているとする。 違っていたなら自分の説明不足を呪って解決法を推論しろ。 ------------------------------------------------- trunkのAフォルダにtxt1があり。 /trunk/A/txt1 <== r1 そんでtrunkからbranchesにAをコピー。 /branches/A/txt1 <== r2 /branchesのAをチェックアウトしtxt1を修正。 wc/A/txt1' <== r3 その後trunkのAフォルダにtxt2を追加。 /trunk/A/txt2 <== r4 ------------------------------------------------- svn co file:///trunk/A wc/A svn merge file:///trunk/A@1 file:///branches/A wc/A
>>409 trunkから分岐した後にtrunkにAとtxt1を追加したところから物語は始まるのか?
だとすると、コピーではなくtrunkからbranchesにマージすればbranchesにA/txt1が追加される。
branchesにtxt2でもなんでも追加修正して、trunkにbranchesを再統合すればマージされる。
気になったんだが
project名/trunk の分岐は project名/branches/分岐名 にするのが普通じゃないかな。
プロジェクト名って何だよ
ルートにttbおいてんでしょ
ttbってなんだ?と思ったら trunk, tags, branches の頭文字か
>>411 svn co file:///trunk/A wc/A
これやると、下記のエラーが出ます。
svn: 'wc/A' は既に、異なる URL にあるリポジトリ用の作業コピーとなっています
>>416 それの意味が分からないならマニュアルを読み直そうぜ
>>416 理解しているつもりです。
wc/Aは既に/branches/A でcoされており、当然の結果だと思いました。
私の理解がおかしいでしょうか。
それとも何かスイッチが必要でしたでしょうか。
>>416 ,418
coはチェックアウトのことなんだからそうなるに決まってるじゃないか。
何を言ってるんだお前は。
417じゃないが、マニュアル読み直せ。
おいおい
>>411 が18行目で
svn co file:///trunk/A wc/A
って書いているだろう!?
レンタルサーバにリポジトリを構築して
svn+sshを用いて複数ユーザでリポジトリを参照したいのですがうまくいきません。
助言頂けませんでしょうか。
環境は
・Mac OS X 10.6
・さくらインターネットスタンダードプラン
・xcode(3.2.1)付属のSCM使用
やったことは以下です。
・/home/usr/local/binにsvnをインストール
・/home/usr/var/svnにリポジトリhogeを作成
・RSA鍵のセットを作成
・/home/usr/.ssh/authorised_keysに公開鍵を登録
・/home/usr/.sshのパーミッションを700に変更
・/home/usr/.ssh/authorized_keysのパーミッションを600に変更
・authorized_keysの先頭に以下を記述(改行無しで)
command="/home/usr/local/bin/svnserve -t -r /home/usr/var/svn --tunnel-user=username",
no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty ssh-rsa
・SCMから、URLに以下を記述して接続を試みる
svn+ssh://
[email protected] /hoge
(「パスワード」には鍵を作成したときのパスフレーズを記入)
こうすると、以下のエラーが出て接続できません。
エラー:210002(Network connection closed unexpectedly)説明:(null)
424 :
422 :2010/03/22(月) 13:10:48
>>423 書き漏れがありました。
・/home/usrにbinという名前で/home/usr/local/binへのエイリアスを置いています。
さくらは知らないけど、ディレクトリ変じゃ無い? ・/home/usr/.ssh/authorised_keysに公開鍵を登録 ・/home/usr/.sshのパーミッションを700に変更 ・/home/usr/.ssh/authorized_keysのパーミッションを600に変更
ん? どこが? /home/usr/ = ~/ の意だろう Mac は詳しくないんでわからんが、とりあえず問題を切り分けたら? ・authorized_keys関連の設定のない状態でsvn+sshで接続できるか ・サーバにSSHでログインした状態では? ・SCMじゃなくてターミナルからは?
まさか、svn,sshが起動してないってことはないよな・・
svnクライアントは起動してるんじゃないかな エラーを見るとsvnが「svnserveから返事こねぇよボケ」といってるように見える しかしこの問題とは関係ない根本的な話として、 「複数ユーザでリポジトリを参照」する用途で レンタルサーバでsvn+sshを使うってのはどうなのw 1ユーザを全員で使うって…誰がコミットしたのかわからんぞ (文字通り「参照」だけでコミットしないのかもしれないが、権限上はできることになるし)
>>428 ユーザ毎に個別の公開鍵持たせれば区別できる。
>>429 確かに1つのサーバーに複数の公開鍵を登録できるけど、
鍵にユーザー名なんてつけられたっけ?
>>430 subversionのマニュアル嫁。ちゃんと書いてある。
432 :
422 :2010/03/22(月) 15:08:19
svn+sshはおろか、ftpすらタイムアウトで繋がらなくなってしまいました。
これまでも何度かあったんですが、これはアクセス失敗しすぎてブロックされた、
ってことでいいんですかね?
>>426 >・authorized_keys関連の設定のない状態でsvn+sshで接続できるか
さくらのユーザ名とパスワードではできました
>・サーバにSSHでログインした状態では?
試してません。繋がるようになったらやってみます
>・SCMじゃなくてターミナルからは?
だめでした。エラーは確か同じだったと思います。不確かですいません。
ところで、authorized_keysのcommandに書いた
"/home/usr/local/bin/svnserve"はもしかして
"/home/usr/bin/svnserve"って書くところなんですかね?
(/home/usr/local/binには直接アクセス権がないので?)
自分で立てたんじゃないの? アクセス失敗でもプロセスが残ってて上限まで使い切ったとか。 デーモンの再起動でいけないかな
434 :
422 :2010/03/22(月) 16:17:22
>>433 ターミナルから、sshでもftpでもtelnetでも接続できなかったもので
確認及び終了の方法がさくらの会員メニューコントロールパネルしかありませんで、
そこでも実行中のプロセスが確認できるのですが、何も実行中ではありませんでした。
この話はスレ違いですね。すみません。
subversionのcommitやupdateのレスポンスを上げたいときに、 なにを増やせばレスポンスあがりますか? CPUですかdiskですか?
>>435 基本的には全部。NICもな。
より正確には、ボトルネックを調べてその面を強化すればいい。
ボトルネックを調べてないので、すぐに対策が取れない状態です。 即効性があるのはなんでしょう。
>>437 つまりボトルネックをエスパーしろというわけだ
>>437 リポジトリはローカル?リモート?
プロトコルはfile://?svn://?
それくらい書けばアドバイスあるかも?
いや、だからボトルネック調べろよ
svn+sshとfile://を使用しています。 svn+sshのほうが多いです。
じゃ、ボトルネックはむしろSSHだろうな。
ではfile:///のみと仮定したとき、何の増強がいいのでしょうか。
全部
>>443 file://はリモートドライブだと遅いね。無線LANだともっと遅い。ローカルは速い。
リポジトリとワークでドライブ別けたら速くならないかな?
A鯖のtrunk以下に収まっている、約4,000フォルダから 毎回数100フォルダをバッチでbranchesの プロジェクトフォルダにコピーするのが遅いです。 /repo/trunk/{4000フォルダぐらい} /repo/branches/project?/ココへコピーする。
>>446 リポジトリ内で直接コピーをすれば一瞬で済みますががが
遅い遅いって実時間でどれくらいかかってんだ?
分岐じゃなくてワーキングコピーでのコピーなのか?
> 約4,000フォルダから
> 毎回数100フォルダをバッチで
このへんがよく解らんな。
なんかすごい特殊な使い方してると思う。
>>447 が書いてるけど、リポジトリ内でのコピーは一瞬で終わる。
実際にはファイルコピーしないから。
コピーするというのにコピーしないという不思議
wc - wcで svn copy /home/www/A/trunk/対象フォルダ /home/www/A/branches/対象フォルダ を数百回繰り返しています。 その後、コミットしていますが大変遅く困っています。
>>452 >wc - wc
って、Working Copy からWorking Copyってこと? 変な略し方すんな。
それから、リポジトリ内でコピーすれば一瞬だって今話をしてる最中だろ。
空気読め。
使い方、思いっくそ間違えすぎてて、どこから指摘すればいいかわからないレベル
>>452 それはひょっとして、履歴を保存するためにコピーしてるのか?
> A鯖のtrunk以下に収まっている、約4,000フォルダから > 毎回数100フォルダをバッチでbranchesの > プロジェクトフォルダにコピーするのが遅いです。 これの目的を書いてくれれば、いい解決方法を誰かが教えてくれると思うよ。
わかった。 file://を付けてなかったから、単なるファイルコピーしてたっぽい。 ちょっとスクリプト変更してくる。 svn copy file:///home/www/A/trunk/対象フォルダ file:///home/www/A/branches/対象フォルダ
そのままだと1ディレクトリずつコミットされるぞ。。
現在のリポジトリのバージョンが30として バージョン20の時点に戻したいとします。 updateでバージョン指定すればローカルでは特定バージョンに戻せるけど、それをコミットすることができません。 コミットするためには最新状態にしなければならず、updateコマンドをかけるとまた最新バージョンに戻ってしまう。 どうすればいいのでしょうか
>>460 svn merge -rHEAD:20 して、出来た結果をコミット。
463 :
460 :2010/03/22(月) 22:16:42
>>462 ありがとうございます。
なるほどマージする必要があるんですね
464 :
459 :2010/03/22(月) 22:20:23
>>461 リポジトリでコピーするように変更するんだよな?
svn cp {fromリポジトリ} {toリポジトリ}
↑が1コミットになるということ。実際は-mオプションでコメント必要。
今と同じようにループで数百回実行すると、それぞれコミットとして扱われる。
それにコミット作業数百回ループするとなると、一瞬で終わるとは言えないかも。
ちなみに
svn cp file:///home/www/A/trunk/{対象1,対象2,...} file:///home/www/A/branches/ -m "コメント"
みたいにすれば1コミット。
何度か言われてるけど、結構特殊な使い方してると思うよ。
なぜ全ディレクトリをコピーしないのか目的がはっきりしないからなぁ
本当はこういう事をしたかったんじゃないか? home/www/A/trunkを home/www/A/tags/version/
全ディレクトリが10ギガオーバーしているのでcheckoutするときに時間 がかかるのです。 また、4,000フォルダをチェックアウトしてwindowsのエクスプローラーで trunkを開くと落ちてしまいます。 なのでbranches単位でプロジェクトを構成し必要なフォルダのみ取得することで windowsの処理を軽減しています。
ワーキングコピーが10GBなのか、リポジトリが10GBなのか。
今調べましたが、リポジトリが43ギガでした。
>>466 ,468
何を管理してるのか知らんが、根本的に運用方法を誤ってないか。
でかいデータはファイル共有のまま保持して、スナップショット、バックアップで管理した方が快適だぞ。
よんじゅうさんぎが・・・
>>466 branchy単位というのも良く分からないな。
ディリクトリが大きすぎるなら適当なところをチェックアウトした後は、更新修正コミットのサイクルですむと思うんだけど。
なぜコピーが必要?
仕事の受注単位でbranches以下のプロジェクトが作成されます。
それ、ブランチちゃうんちゃう?
svn://server/受注名/trunk/ にすれば、チェックアウトする範囲が小さくならない?
475 :
459 :2010/03/22(月) 23:01:48
476 :
459 :2010/03/22(月) 23:04:40
あ、
http:// のとこはクライアントから見えるスキームで。
あと、未検証です。間違ってたらすいません
477 :
459 :2010/03/22(月) 23:19:30
よく考えたらsvn:externalsにすると挙動が変わっちゃうね。 ファイルコピーの場合、コピー後にオリジナルが変更されても影響受けないけど、 svn:externals はオリジナルの変更が反映される。
43ギガと名乗ります。
たくさんのアドバイスありがとうございます。
>>459 さんがやっている{対象1,対象2,...}と囲うやり方で対象の制限はあるのでしょうか?
テストしてみたら20フォルダまでしか出来ず、それ以上やると下記のエラーでます。
svn: 変更順序が不正です: ノードリビジョン識別番号を削除せず新しく追加しています
20個以内のコピーなら一瞬で終わるんですが。
svn cp file:///home/www/A/trunk/{対象1,対象2,...} file:///home/www/A/branches/ -m "コメント"
何十個もフォルダーを指定するのは一般的じゃないと思うよ。 もう少し単純に考えたほうがいいと思う。
480 :
459 :2010/03/23(火) 00:51:34
おはようございます。 今回やったのは リポジトリ ⇒ リポジトリです。
>>481 逐一報告とか情報小出しとか面倒だから、ひととおり自分でできる限りの調査をしてから
分かったことを全部まとめて書いてくれ。
A鯖のtrunk以下に収まっている、約4,000フォルダ 各フォルダの中身は高解像度の写真、eps 大体、一週間後とごとにフォルダが追加されていく。 /repo/trunk/{4000フォルダぐらい} 受注時branches以下へproject?を作成しtrunkから 数100フォルダをprojectコピーする /repo/branches/project?/ココへコピーする。 A鯖への接続はsvn+sshで行う。 svn copy -m "" svn+ssh://svn@A鯖/trunk/{A,B,C,D....} svn+ssh://svn@A鯖/branches/project?/ なぜか、svn+sshプロトコルは{}curly bracketでまとめて、コピーすることが出来なかったので svn copy -m "" svn+ssh://svn@A鯖/trunk/A svn+ssh://svn@A鯖/branches/project?/ svn copy -m "" svn+ssh://svn@A鯖/trunk/B svn+ssh://svn@A鯖/branches/project?/ svn copy -m "" svn+ssh://svn@A鯖/trunk/C svn+ssh://svn@A鯖/branches/project?/ と考えたが、svn+sshでの通信が増えてしまう。 それを避けるために、wc-wc間でコピーしようと考えた。 svn copy -m "" /home/trunk/A /home/branches/ svn copy -m "" /home/trunk/B /home/branches/ svn copy -m "" /home/trunk/C /home/branches/ やっぱり遅い。 url - url間でやるしかないと思ったのが昨晩でした。
なぜかもなにも、{}を展開するのはシェルの仕事なので…
$ cat folders.txt コピー すべき trunk以下の フォルダの リスト (全部だったら trunk -> project? 一発なんだけどね) $ project=project_x $ for folder in `cat folders.txt`; do svn copy -m "新規プロジェクト用にtrunkからコピー $folder" svn+ssh://A鯖/repo/trunk/$folder svn+ssh://A鯖/repo/branch/$project/$folder done みたいな。
…そういう問題ではなかったorz
だから、時間がかかるって実時間でどんだけかかるのか書けって。
wc-wc間で 30分〜1時間です。
次は、ワーキングコピーの内容をファイルコピーしたらどれくらい時間がかかるか計測しろ。 それで初めて、どれくらい遅いのかがわかる。
ファイルコピーしたら1時間罹りました。
ファイルコピーで1時間かかるものが、30分〜1時間で終わるんならsvnは全然遅くないじゃん。
何か良くわからんけど、そんな問題なのかな?
>>483 そもそもそれバージョン管理する必要あるの?
「受注」ってソフトウェアの開発とかを受注するんじゃなくて、画像の編集とか印刷とかWeb作成を受注したってこと? だとしたら、全員が毎回全部coする必要なくて、いつでも共通で使うものと「受注単位」のものを分けたら?
その画像ファイルに新旧があるのならともかく、フォルダーが増えるだけってのはバージョン管理の意味が泣くね?
すみません。 なかなか、時間が計れなくて。 trunkから取得されbranchesへコピーされた、データは作業者がcoし 修正しその後にtrunkへマージされます。
>>497 それって通常のSubversionの運用と根本的に違うくね?
そう?うちも大体同じだけどなー 4000フォルダは無いけど。
trunkから分岐して、必要なフォルダだけチェックアウトすれば一瞬だけどな。
てか、何気なく膨大な巨大バイナリが問題なく扱えてる実例が見れて安心した。
そうかねぇ。 一度、1ディレクトリに800MBほどのファイル群を置いてみたらコミット/チェックアウトが遅すぎて、 バカバカしくなってそこだけファイルサーバーからデプロイする運用に切り替えたこともあるんだが。
作業をするためにはブランチを作る、というルールが徹底されてそうな雰囲気だな。 それって分岐なのかね、と。 もう一度ディレクトリ構成を見直したらどうだろか。
バージョン管理とは関係なくて、4000フォルダーが並んでる?ディリクトリ構成が問題じゃないかな。 もう少し階層化を考えたほうがよさげ
>違うくね? 日本語でどうぞ。
毎週増えてく性質の物を、何で全員が毎回全部チェックアウトせねばならないのかを説明してくれ
それよりも一部を切り取ったブランチを作るから問題なんだよな。 trunkを丸ごとコピーしてブランチを作成すればよい。そうすれば今悩んでいるコピーの煩雑さはなくなる。 使う側がチェックアウトするのがでかくてたまらん!という問題に対しては、 必要なとこだけチェックアウト、もしくはtrunkをチェックアウトしておいて、swすればよかろ。
あー、つまり、普通の運用をすれば今の悩みはなくなるといいたかった
サブディレクトリをcoできるのを知らないとか?
どんな規模で何をやってるのか知らないけど、システム作った方が早くないか。 このまま増大し続けるファイルを操作する将来に掛かる工数を計算したら、 数百万くらい払ってもいいということにならないか?
何のために数百/4000フォルダをコピーしなければならないのか。 その数百というのは毎回違うのか。違うとすればどのように選択するのか。 10Gというのは数百フォルダをcoした結果なのか、それともtrunkをcoした結果なのか。 で、ファイルコピーに要する実時間は結局どのくらいなのか。
作業者はwindowsユーザで、巨大なtrunkを取得すると coしたディレクトリを開くだけでwindowsのレスポンスが低下してしまいます。 branchesの管理は外部プログラムを利用し、オーダーごと必要なフォルダをbranches以下に コピーしそれをcoするようになったのです。 そうなれば、windowsユーザは自分の作業に不要なデータを持たず、その仕事に必要な フォルダのみを取得することで作業が円滑に行えます。
だから、trunkを分岐してbranchiのサブホルダーの必要なところだけチェックアウトすればいいっていってるだけだけど。 分岐は一瞬だぞ。
svn copy -m "" svn+ssh://svn@A鯖/trunk/{A,B,C,D・・・} svn+ssh://svn@A鯖/branches/project/ このコマンドでは ”svn: 変更順序が不正です: ノードリビジョン識別番号を削除せず新しく追加しています ” というエラーで出来なかったのですが。 tortoisesvnを利用しssh+svn通信でrepositoryのbranchesに適当なフォルダを 作成し trunkから数100のフォルダをランダムで選択。 先ほど作成した、branchesのフォルダにrepository内でのコピーを行ったら 普通に出来ました。 logを確認していると100フォルダのcopyが1回のcommitで出来ています。 subversion(サーバ側)でtortoisesvn側で発行したコマンドをlogで確認できればいいですが。
リポジトリの分割は考えてないの?
tortoiseSVNはコマンドラインを呼び出してるわけじゃないから いちいちたくさんのフォルダーを選択するのってめんどくさくない?
そうではなくて、コマンドで、下記を実行したときはエラーで 実行できず。tortoiseSVNで複数のフォルダを選択しコピーが出来ていることが言いたかったです。 svn copy -m "" svn+ssh://svn@A鯖/trunk/{A,B,C,D・・・} svn+ssh://svn@A鯖/branches/project/
>>518 シェルの補完は実ファイルに対して有効じゃないんだが。おわかり?
それってどういう意味ですか?
43ギガのリポジトリとか壊れた時のショックが半端なさそうだな バックアップどうしてるの
>>521 まず、{A,B,C,D・・・}というシェル展開記法が可能なシェル(たとえばbash)で操作してるのか?
それから、状況がやっぱりつかみにくい。
svn copy trunk branches/オーダーN
とした場合、オーダーNをチェックアウトする処理、およびディレクトリの表示が重くなる。
それを避けるため、オーダーに必要なディレクトリのみが含まれたブランチを作成できればよいと考えた。
しかし、そのブランチを作成するのがどうもうまくいかない。
という認識であってる?
>>519 svn copy -m "" svn+ssh://svn@A鯖/trunk/A svn+ssh://svn@A鯖/trunk/B svn+ssh://svn@A鯖/branches/project/
つまりこれは不可能だといっている?
>> まず、{A,B,C,D・・・}というシェル展開記法が可能なシェル(たとえばbash)で操作してるのか? bashです。 >> それから、状況がやっぱりつかみにくい。 >> svn copy trunk branches/オーダーN >> とした場合、オーダーNをチェックアウトする処理、およびディレクトリの表示が重くなる。 >> それを避けるため、オーダーに必要なディレクトリのみが含まれたブランチを作成できればよいと考えた。 >> しかし、そのブランチを作成するのがどうもうまくいかない。 >> という認識であってる? 合っています。実行すると下記のエラーが出ます。 "Invalid change ordering: new node revision ID without delete" >> svn copy -m "" svn+ssh://svn@A鯖/trunk/A svn+ssh://svn@A鯖/trunk/B svn+ssh://svn@A鯖/branches/project/ >> つまりこれは不可能だといっている? 上記だと、たとえば200フォルダ合ったときにかなり長くなってしまうと思い、svn+ssh://svn@A鯖/trunk/{A,B,C,D・・・} で考えていました。そのやり方もトライしてみます。
いまrepositoryをすべてexportしています。 もう一回新規でrepositoryを再構築してみます。 また報告しますね。 おやすみなさい。
>>525 シェル展開される場合は以下の2つは等価だよ。
svn copy -m "" svn+ssh://svn@A鯖/trunk/{A,B} svn+ssh://svn@A鯖/branches/project/
svn copy -m "" svn+ssh://svn@A鯖/trunk/A svn+ssh://svn@A鯖/trunk/B svn+ssh://svn@A鯖/branches/project/
って、今意味を読み取れたが、
>>519 はURLなどについてはシェル展開の対象外だと書いているのか。
そんな賢くかつ不便なシェルあんの?
svn copy trunk branches/オーダー1 として、オーダー1の中の必要なとこだけチェックアウトじゃだめなのは何でなの?
529 :
519 :2010/03/24(水) 03:26:58
シェルの挙動に関して誤解してた。 a{b,c,d} という引数は ab ac ad に一方的に分解してくれる仕組みなんだな。ファイルが存在してないと置換されないものだと勘違いしていた。 この件についてはcygwinのbashとWindows標準のcmdで追試した。 当然のことながらcmdではこの置換は行われない。
cp -p hoge.xxx{,.bak} とかよくやるよね
>>526 は? export してリポジトリ作り直して、それでいいの?
履歴は要らないの?なんで Subversion 使ってるの?
おはようございます。 exportは下記のエラーが出るために試しています。 "Invalid change ordering: new node revision ID without delete"
初心者:ある目的(その目的は明らかにしない)のために、このような実現手段を取ったんですが その実現手段がうまくいきません。 上手い質問者:このような目的のために、こういう実現手段を取ったんですがうまくいきません。 この実現手段でうまくいく方法か、目的を実現するための別の手段はありますか?
Subversion使えば上手くいきますよとか言ってしまって、ディレクトリが少なかったときは うまくいってたけど、ディレクトリが増えて手に負えなくなっても引っ込みがつかないんじゃ ないの?
>>518 svn+ssh://svn@A鯖/trunk/{A,B,C,D・・・} の展開結果が
シェルで扱える長さを超えたって可能性は…ないよな、きっと。
普通にありそうだが。
その昔の膨大なフォルダーの昔のやつは修正されるの参照だけ? それによってはバージョン管理そのものが必要かどうか判断できる。
昔、リポジトリに日付フォルダが次々追加されてて困ったことある。
>>483 なぁ、一週間に一回受注が発生して、まぁ400フォルダ増えるとしようか。
1年後には20,000フォルダ増えるってことになるんだが。
>>540 増えるのはそんなに多くなくて、一人(?)の作業対象が数百フォルダなんでしょ。
で、そのうちどれくらいを変更するの?
その変更はtrunkに適用しないといけないの?
同じフォルダをcoした他者へは適用しなくていいの?
そのブランチは作業終了後どのような位置づけになるの?
というかそもそも今回の一連の話、 内容によってサブディレクトリを切れば問題なくね?
フォルダって日付とか注文番号?
544 :
デフォルトの名無しさん :2010/04/02(金) 22:38:34
あーやっぱSVNだよな。 落着くなあ。。。気持ちいいなあ。 Mercurialは日本語のファイル名が使えないからソース管理にしか使ってない。
hg可愛いよ
546 :
デフォルトの名無しさん :2010/04/17(土) 04:07:20
ディレクトリへの全員の書き込み権限を保存したいのですが そういうことは出来ませんか?
日本語でおk
たぶんできないと思う。 うちはパーミッションを設定しなおすスクリプトもリポジトリに入れてる。 フックとか使ったらいけるんかなぁ
ありがとうございます。 スクリプトも含めるのはいい案ですね。
550 :
デフォルトの名無しさん :2010/04/17(土) 15:11:34
551 :
デフォルトの名無しさん :2010/04/18(日) 04:25:44
ロールバックすると、ファイルは消えたのですが、ディレクトリが残ったままです。 これが普通の動作なのでしょうか?
はい。消えたらへこむこともあるでしょう
ってファイルは消えたんだ? むしろうちファイル消えない。。。読めてなくてごめん
554 :
デフォルトの名無しさん :2010/04/18(日) 13:47:06
Slikももう更新してるな。サクッとアップデート
>>548 >フックとか使ったらいけるんかなぁ
ムリだろ。
サーバー処理ではどうしょうもない。
クライアントフックなら可能だろうけど、
クライアント次第になるな。
ソースコード管理する場合に、 ロックよりマージがいい理由って何?
>>557 じゃあ、おまえが修正したいソースファイルを
俺がロックしたまま一週間出張に行っちまってもいいかい?
サブバージョンの競合製品を教えて下さい
VSSあるいは共有ネットワークドライブ
>>558 ロックされてても編集できるんじゃないの?
マージの場合も、チェックインされたら 上書きされね?
そうでしたか。 すいませんでした。
>>557 マルチコア環境(※1)だと排他ロックよりロックフリーなアルゴリズムの方が効率が高いんだ。
順次実行しかできない部分が多ければ多いほど、投入した資源(※2)ほど性能が上がらなくなるわけでな。
※1: と書いて「プロジェクトチーム」と読む。
※2: と書いて「プログラマ」と読む。
うちのご老体が何度言ってもコミットを5回6回に分けてコミットしてくる・・・ ファイル一つずつコミットとか辞めてくれー
>>567 それの何が問題なのかを伝えた?
つーか、何を問題にしているのか私も知りたい。
なぜまとめないと困るのかを伝えたかい? 理由もいわずにまとめてくれ、だとそうなる率は高いが。。
むしろtracと併用でチケットとチェンジセットあわせるから 同じファイルでも変更点ごとにコミットしてるな。ああでも ひとつのバグの変更点が複数ファイルにまたがるときは 一回でコミットするか。そういう話?
svn remove してから svn add する派もあるぞw 属性が毎回消えるw
removeしてaddは思いつかなかった。それはさすがに ひどいなww 履歴とかどうなるんだ?
もちろんえらいことになるw まあ、共有フォルダという認識なんだろうけど
>>570 今回の場合は後者だと思うんなぁ。
前者もやめてほしい。よくやられる。
>>571 コンフリクトがよほど気に食わなかったんですかね。俺様絶対という空気がw
複数ファイルを一気にコミットしようとすると eclipse+subclipse が固まったまま永遠に戻ってこない時が、たまにあるのじゃよ… それが怖いから、1ファイルずつちまちまと、 「イケるかのう? よしよし、じゃあもう1つどや? よーしよし」 とコミットしとるんじゃ… でもTortoiseSVNでコミットするとエラーが出たり固まったりすることはないので、 あまりに大量のファイルをコミットするときはそっち使ってます
自分の環境の悪さを盾にメンバー全員に迷惑をかけるってそれほんとに害しかないじゃん
>>554 なんかインスコ時にレジストリ登録し忘れててアイコンが出ないバグがあるから
フォーラムにregファイルうpしといた
と言っても他の人の投稿をちょっと直してファイル化しただけだが
ああ、アイコンオーバーレイ利いてないのやっぱりバグだったのか。 別に出なくても大して困りはしないんだが、ちょっと気になってたんだ
一回アンインストールして再インストールしたら表示されたよ
>>577-579 上書きインストール(Repair)で直るよ。アンインストールの必要はない。
アイコン消えるとか、そ〜ゆ〜ヤメて欲しいよ 再インスコって・・・ 1.6.8 はインスコすんの見送ろうかね
>580 サンクス。インストーラ取っておいてたからそのままRepairしたら直った。 困りはしないけど、やっぱ出てたほうが分かりやすいな
updateが遅すぎる
解決しました。
586 :
デフォルトの名無しさん :2010/05/10(月) 23:29:04
誤ってSVNのファイル削除とファイル追加で 系統情報が消されてしまったファイルが存在してて、 気付かずにそのファイルに何回かコミットをしていて、 やっと気付いて、過去の系統情報が現行のファイルに 繋がる形で復旧したいと思ったのですが、 そういうことって出来るのでしょうか? 苦肉の策で、mergeinfo属性をいじって、系統情報消失前の リビジョンのファイルからのマージということにもしてみたのですが ログが時系列にならないので微妙でした・・。
>>586 消失前のリビジョンのファイルをコピーしてそれにマージをすればつながらないかな?
eclipse 3.52 でSubversionプラグインの インスコを何度か試してるんですが、64%まで行くと必ず失敗してしまいます。 どなたかご教授お願いできませんか…。 An error occurred during the org.eclipse.equinox.internal.provisional.p2.engine.phases.CheckTrust phase. session context was:(profile=SDKProfile, phase=org.eclipse.equinox.internal.provisional.p2.engine.phases.CheckTrust, operand=, action=). One or more certificates rejected. Cannot proceed with installation.
>>588 証明書エラーなので証明書を信頼してやる
無事インストールできました。 有難うございました。
ブランチって何に使うの?
分岐したいとき。例えば、修正するときにテストが終わってからtrunkにマージさせたいときとか。
リポジトリの、db/transactions/ に大量のディレクトリができてるんだけど、 これって1週間以上古いものとかは消しちゃってもいいもんでしょうか。 それとも、ここには何も残らないのが正しいんでしょうか。
自己解決。svnadmin rmtxnsで定期的に古いものは消すことにしました。
595 :
デフォルトの名無しさん :2010/05/28(金) 14:32:23
.svn ディレクトリ群が本番環境にあがってしまうことにより 起こりうる事故を教えていただきたい。 基本.svn系は本番にあげちゃいけないよね?
それが判らないのに本番環境を管理しているの? 本末転倒じゃない?
597 :
デフォルトの名無しさん :2010/05/28(金) 14:40:33
だいたいパーミッションがちゃんと管理されてなくて色々丸見えとか ディレクトリトラバーサルとかで丸見えとか色々思い当たる節はあるけど ディレクトリトラバーサルができたら.svnうんぬんの問題じゃないし 他にどんな問題があるかなと思って。 エンジニア歴4年ぐらいだけど、本番環境を一から構築したことはなくて、 色々調べ中なんです。ご教示頂きたく。
>>597 ファイル名やディレクトリ名のパターンに基づいてパーミッションを設定してるときに、
.svn とか svn-base とかのパターンを考慮し忘れてて意図せずパターン漏れしたり。
そもそも .svn を置かなけりゃ、そんなのも気にしなくていいんだよ。
>>597 ソースが見える→バグが見つかる→そこをつかれて顧客情報が流出など。
ソースを書かなければバグはない。 作業が少なければ事故も少ない。
そして誰もいなくなった
別にそんな勢いあるスレじゃないしいつものことかと
ファイル名やディレクトリ名のパターンに基づいてパーミッションを設定してるときに、 .htaccess とかのパターンを考慮し忘れてて意図せずパターン漏れしたり。 そもそも .htaccess を置かなけりゃ、そんなのも気にしなくていいんだよ。
ファイル名やディレクトリ名のパターンに基づいてパーミッションを設定してるときに、 *.php とか *.cgi とかのパターンを考慮し忘れてて意図せずパターン漏れしたり。 そもそも *.php *.cgi を置かなけりゃ、そんなのも気にしなくていいんだよ。
何もせず部屋に引きこもってアニメでも見ていれば な〜〜〜んにも気にしなくていいんだよ。
そうだね、プロテインだね。
Railsがマンセーされている理由を垣間見た気がする。
.svn/が全ディレクトリにあるのが・・・ .git/, .hg/, .bzr/
>>608 同じディレクトリを複数のバージョン管理ツールに
同時に管理せたらどうなるのか、ちと怖いなー
たまにやるよ。 一時的に管理したいときとか便利。
TortoiseSVNを使用 リポジトリのチェックアウトは HDDの台数や使用容量に差があるので 異なるドライブにチェックアウトする事がある 各スタッフが任意に行う 相対パスではなく絶対パスでしか ファイルを操作できない状況にあるため 全員共通の絶対パスを通したい スタートアップにbatファイルを置き substでチェックアウトしたフォルダを ドライブとしてしまえば どこに置いてあっても共通の絶対パスが通る が、しかしここで問題が発生 例えば元はDドライブのどっかにあって substでYドライブとして割り当てたとする この時、Yドライブとしてコミットすると エラーしてしまう DドライブでもYドライブでも コミット出来るようにしたい tortoise subst などのキーワード エラーメッセージを端的に抜粋して などの方法で調べてみたけど 解決出来ませんでした どうしたら良いでしょうか
>>611 絶対PATHが必要になる運用を止める。
共通の絶対パスでないとダメなのにDでもYでもできるようにしたいという わがままをやめる。
ジャンクション使えば? 試してないけど
>>611 いつもsubstしたドライブにチェックアウトして使ってるけど問題ないけど。
DとY同時にってこと?ワーキングコピーを共有する使い方は良くないと思われるよ。
ネットワークの共有フォルダにしてサーバ名と共有名指定でいいじゃない 例えローカルで1台の環境でも使える。
ちょっと質問です。 cygwin 1.7で入れたcvs2svnにて昔のプロジェクトをsvnに変換しようとしているのですが、 途中でエラーがでて完了できません。 ERROR: Unable to convert a path 'branches/avendor/unko.txt へのショートカット.lnk' to internal encoding. Consider rerunning with one or more '--encoding' parameters or with '--fallback-encoding'. Exception exceptions.AttributeError: "'NoneType' object has no attribute 'error'" in <bound method Popen.__del__ of <subprocess.Popen object at 0xXXXXXXXXX>> ignored ログはEUC-JPで記録されているようで(nkf --guessで確認済み) それでいてマルチバイトのファイル名の扱いが気になります。 利用したコマンドはこんな感じです。 cvs2svn --encoding=EUC-JP --fallback-encoding=shift_jis -s /svn/hoge /CVSROOT/hoge Pythonは2.5.5でした どのへんが悪いものでしょうか?
619 :
617 :2010/06/16(水) 06:07:18
>>618 うまくいきました
いろいろ試したのですが、結局、
cvs2svn --encoding=euc_jp --encoding=utf_8 --default-eol=CRLF -s /svn/hoge /CVSROOT/hoge
でうまくいきました。sjis関係なかった?? orz
svnでのチェックアウト時にCRLFになってほしいのがLFになってしまったので --default-eol=CRLFをつけてあります。
この状態でcvsでチェックアウトしたのと変換後のsvnからチェックアウトしたのを
diffとってみたところ問題ないようなのでこのまま行きます。
ありがとうございました。
620 :
617 :2010/06/16(水) 08:51:24
ついでに質問なのですが、cvsのチェックアウトや変換処理等バッチ処理してしたいんですが、 cvsのcheckoutってcygwin版だと、CRLFに変換してくれるオプションってないんでしたっけ? wincvsだとデフォルトでCRLFになってるんですが、コマンドラインで操作したくて これってbinaryモードでマウントしているせいかな。かといってテキストモードにすると他で不具合あるし
GUI ではない、CollabNet 版 Subversion クライアントの、日本語メッセージファイルってのは 存在するのでしょうか?
>CollabNet版って現在 (p)
http://subversion.apache.org 配下にある奴?
はい。Windows 用の certified binary 扱いの物です。
元ソースファイルには .po が含まれているのですね。今ダウンロードして確認しました。
自分でコンパイルしないといけないのかな?
625 :
デフォルトの名無しさん :2010/06/17(木) 14:59:55
subversion1.4.2(Linux) TortoiseSVN1.6.5(XP) で開発に使っていますが、あるメンバーだけ、そいつがコミットするとそれ以前の他人の変更が元に戻ってしまいます。 まるで更新せずにコミットしたような感じです。でも先に他人のコミットを取り込まないと、コミットできないはずなのですが。謎です。 原因がわからず、でも調査のために開発の手を止めるわけにもいかず、困っていますが 何か心当たりのある方いませんでしょうか。
>でも先に他人のコミットを取り込まないと、コミットできないはずなのですが。 たとえば、 他人の修正を取り込んだ後に、 「以前のバージョン + そいつの変更」のファイルをどこからか(そいつのローカル バックアップとか)持ってきてチェックインかけているのでは? まぁ、Conflict 発生時に手動マージをサボって "Use mine" を選択しているだけだろうけど。
たぶん前者だよ。 なぜそうしてるかというと、たぶんconflict発生を嫌がって、チェックアウトディレクトリで作業していない。
そういう他人に害をなすやつはクビにしろよw
いるいる、そういうやつ。
そいつだけこっそりgitを使っていて、自分でも何をしているのか分からない可能性もある。
どういう差分がコミットされているかも調べずにここに聞きに来ている事から判断すると、 組織全体がダメだと思われる。
632 :
デフォルトの名無しさん :2010/06/18(金) 01:29:59
みんなも言ってるけど、どういう操作してるかを隣で見せてもらえば、 一発で分かる気がする。
633 :
620 :2010/06/18(金) 06:00:43
>>622 ども
WinCVS付属のCVSNTでチェックアウトしてみたらCRLFになりました。
サンクスです。
CVSNTでチェックアウトした場合は、
ローカルファイルへのリポジトリのパスのせいかcygwinのcvsでは操作出来なくて
CVSNTから使わないとダメっぽいのですね。
それだけ注意してみます。
>>631 差分をみたから他の変更がなくなってることが分かってるんだと思うよ
コミットする人が差分を見ないのが悪いということなら同意。
>>632 特にそのようなレスはないけど、見せてもらうのがはやいね。
オフサイトかも知れないしね。 ま、変なコミットを防御できない、取り消せないSubversionの欠点の1つではあるが。
>>634 いや、コンパイルしたらリンクが通らないぞ、がやがや、犯人探し、だと思う。
>>634 ・他人の変更をロールバックし、自分の変更をコミットする。
・他人の変更のロールバックと自分の変更を同時にコミットする。
全然違う。
どのような操作が行われたのかはサーバ上の履歴を見るだけだが、それすら
していないようなので、ダメな組織なのだろう。
レビュー受けてからコミットという運用もあるみたいだね。 その前にupdateしてコンフリクト解消していないと意味ないだろうけど。
もしかしてファイルの変更を検知しないエディタで作業してるんじゃないか? ファイル書き換え→コミット→先に更新しろと怒られる→更新→マージ→エディタが自動保存でファイル上書き→コミット というシナリオが可能じゃないか?
あー、可能かもしれないね。 自業自得ですまないあたりが厄介だなw
>>625 亀レスすまん。アク禁くらってた。
うちでも実際にあったよくあるパターン。
1. 最新ソース取得のため作業コピーを更新
↓
2. 必要なプロジェクトだけ他PCにコピって、そっちで開発
↓
3. コミット前に作業コピー更新
↓
4. 自分の成果物を上書きコピー
↓
5. コミット
↓
6. 本人は仕事したつもり
昔、うちの外注が下手打ちやがったことがある。
そんときは 3 と 4 が逆だっつーことを小一時間...(ry
自分で立てたFreeBSDで自ドメイン開設するほどの、結構、スキル高いやつなんだが、
それでも、作業コピーの更新と自分の成果物の上書きが実は逆だったということに
全く気がついていなかった。
>自分で立てたFreeBSDで自ドメイン開設するほどの これのどこがスキル高いんだ?w
サーバがsvnでもクライアントがgit、hg、bzrで防げることだね。
>サーバがsvnでもクライアントがgit、hg、bzrで防げることだね。 少数の人間が異なるファイルを編集している間はね。 自分のファイルを他人が修正し始めると、マージで地獄を見るぞ。
>>641 あるあるあるあr
10年くらい前にCVSで発注先がそれやって酷い目に遭ったわ。
バージョン管理システムの使い方をちゃんと教えられなかった俺にも責任はあったけどナー……。
>>644 同じマージ地獄でも、ローカルにコミットが残ることによる幸せ度は違うと思うが。
SVNで同じことしようとすると、個人毎にブランチを切るって話になって、
カオスが増すだけだと思うが。
「バージョン管理つかっているから起こりえない」だろうはずのことが 人為的ミスや教育ミスで簡単におこるんだな・・・
そりゃバージョン管理は意味までは見てくれないから当たり前。 マージをサボって古いコードになったのか エンバグしたから元のコードに戻したのか 運用的にはコメント付けを必須にするくらいかねぇ。 特定の人が繰り返しコードを上書きするのなら、その人とお話しするのが一番の解決策だと思います。 SVN 云々の話では無い。
>>648 > 運用的にはコメント付けを必須にするくらいかねぇ。
BTSでのチケット管理でしょ。
オレ高卒だから知らんけど、 svnやcvsって、大学やコンピュータ専門学校の授業では教えないの?
>>650 俺情報系大学の院まで出たけどCVSすら授業では教わらなかった
授業で教わるようなもんじゃない。
エディタの使い方とかと一緒で一般教養以前の知識。 大学でエンピツの使い方なんか教えるはずないだろ? > 650
美大で教わったけど
>>650 専門学校では全く教えてくれなかった。
業界に入ったら最初の仕事から使う事になって苦労したわ。
今ではバージョン管理無いと辛くて仕方ないけど。
>>653 自習するしかないとは思うが、「一般教養以前」と言えるほど単純なものとは思わん
お前がスーパーハカーだから気づかないだけだと信じたい
cvsが出てたんだから、rcsがかわいそう。 rcsまでは単純だったと思う。 分散型の登場で、rcsに先祖かえりしたと思う。
まぁディレクトリ全体を出たばかりの GNU-diff で Patch をつくり VAX に 転送して、一日の作業の保存完了。って時代もあったわけだしな
50年代とかキーパンチでプログラミングしてた時代は バージョン管理してたのかな。
打ち直したパンチカードを差し替えた残りが履歴だろ。 パンチカードはマージ、シャッフルが自由自在だ。時代はめぐる。
プログラムの再利用可能性 (全く同じ字面の行なら同じパンチカードが使い回せる) を追求した人とかいたらしいな
サブルーチンの束を借りてきて重ねて読ませればリンクの出来上がり。 今と変わらんな。
diff, patch は一般教養?
ファイル名の変更と内容の変更が衝突したときのダルさは異常。みんなどうしてる? ファイル名変更前は連絡するとかの運用カバー?
運用でカバー、かな。 1つのファイルを修正するのはたかだか1〜2人にして(そういう風に設計して)、 朝会(最大15分)で概要を知って衝突しそうなら、その担当者間で話し合って 解決するようにしてる。 あと、コミットログやTracのチケットをメールやRSSやチャットで通知して、 他の人の作業状況をできるだけ把握させるようにしてる。
衝突するだけなら別になんてことないんだけど、名前の変更とかぶるのはきついねぇ。 言語にもよるけど、クラス名=ファイル名とかにしてないのかな。 そうならクラス名変更の時だけ通知とかでどうにかなるかも。
667 :
デフォルトの名無しさん :2010/06/22(火) 01:04:49
668 :
デフォルトの名無しさん :2010/06/22(火) 01:06:48
安全なの?だれか毒見よろしく
URLがfile://〜だと、マージダイアログのURLの参照のボタンでリポジトリが開かずに、フォルダー選択ひらいてしまう。履歴は出るからパスはあってるはずなのに? うちだけ?
671 :
デフォルトの名無しさん :2010/06/23(水) 10:30:16
win2kで使っているけど、新しいの入れたら、ホットゾヌ起動時に 「プロシージャ エントリ ポイント DecodePointer がダイナミックリンク ライブラリ KERNEL32.DLL から見つかりませんでした。」 ってエラーが出るようになった。 なんで関係ないアプリに影響がでるんだろう。 前のバージョンに戻したらエラーは出なくなった。
DLL HELLですね
デリヘルだと!?
ちょっとスレ違いだけど、
>>323 >
>>312-313 > ・文字コードが違う環境間をまたいでバージョン管理する
> かつ
> ・ファイル名に、環境間で互換性のない文字(ASCII以外だと思っておk)が入ってる
> という場合。
こういうのってシステムを改良すりゃ解決できるような問題なの?
>>674 hgのことならcygwin utf-8化でカオスが増している。
>>675 そういう話ではなくて、システムを改善すりゃ解決できるような問題なのか、そもそも対応できないような問題なのかって話。
ruby1.9の文字列みたいな仕組みを取り入れれば解決できるのかなぁと、ぼんやり思ったのだけど。
仕組みを取り入れればって、そんなことなら全ての事柄全般その通りだろバーカ
所詮プログラムなんだし、近代的な OS のほとんどは UNICODE ファイル名や UNICODE 文字変換を サポートしているので 「やれば解決できる」問題でしかない。 問題となっているのは、すでにあるリポジトリをどうするか。 新しいリポジトリを古いツールで参照したときどうするか。 CVS/SUBVERSION 見たいな、リポジトリの中央管理アーキテクチャの場合は解決しやすい。 分散リポジトリの場合はめんどくさい
せっかくなので、SVNに話を戻すと、化け化けのファイル名がコミットされていて、すぐに消されていた。 多分犯人はEclipseかNetbeansだったのだと思う。 こういうことがあるから、SVNと言えども、ascii以外のファイル名は怖くて使えない。
クライアントのバグの話を持ち出されたら、 大文字小文字を区別する/しないファイルシステムを考えたら ASCII だって怖くて使えない。
そうだね。大文字小文字区別しない(拡張子が特に厄介) 「コピー〜」ってUnicodeで危険な文字を含むファイルを勝手に作る、 nulというファイルを作れないWindowsは怖くて使えないね。
あら。理解したようですね。>685
このスレ的にsvnだと別にいいんだけど、Windowsだと コピっただけで「のコピー〜」って名前で複製されるのがgitやhg的にすごい迷惑w
>685 Windousだと「.」で始まるファイル名が
だと思うよ。windowsは作れるもん。
ごめんおまいらアホみたいだから訂正 explorerだと「.」で始まるファイル名が
他でできるんだから explorer から作れなくたって別に…… メモ帳からだって作れるんだし
>>691 が?
その続きを言わないってのはなんかの釣り針なの?
>>693 > 693 名前:デフォルトの名無しさん [sage]: 2010/06/27(日) 07:08:02
>
>>691 > が?
> その続きを言わないってのはなんかの釣り針なの?
Windowsに限らずLinux,Unixでも普通の状態だと見れません。だから.svn入りのディレクトリを消す輩が現れます。
えっ
>>694 ワーキングコピーを消して何か困ることがあるのか?
全部のPCにsvnクライアントなんか入れられないでしょ。 で、共有サーバに展開したりするのね。 で、.svnが見れない、というよりsvnが何なのか分からないから消されるのね。
>>698 svnのシステムを使っておいて、svn全部の理解させるかはともかく、
しちゃダメなことは通達しておけよw
どうしても、svnを意識させないなら、webdav使うとか、更新感知して同期自動コミットさせるとか
やり方はあるだろうが・・・
>>698 > 全部のPCにsvnクライアントなんか入れられないでしょ。
これはおかしいだろ
svn覚えさせるコストが大変とかならわかる
ソースを修正しないならエクスポートでいいんだし、 修正するならsvn使わせればいいんだし Windowsでもtsvnじゃなくてコマンドライン版ならインストールに管理権限要らないし
>>701 > > 全部のPCにsvnクライアントなんか入れられないでしょ。
>
> これはおかしいだろ
> svn覚えさせるコストが大変とかならわかる
>
デザイナのPCにsvn入れるの?
>>699 >
>>694 > ????????
ls -a は言わずもがな、GNOME、KDEやsamba。
>デザイナのPCにsvn入れるの? Adobe の HTML デザインソフトの DramWeaver は SVN 内蔵しているのだが。
うちのデザイナやHTMLコーダーは普通にTortoiseSVN使ってるぞ。
>>698 .svn以下いじれないように権限設定すればいいじゃん
>>703 ソースいじるなら使わせればいいじゃん。
いろいろ文句つけといて後でいうのもなんだけど、よく考えたらうちのデザイナにはsvn使わせてないなw
TortoiseSVNはチェックアウトのリポジトリパスを普通のパス使わせてくれよ なんでいちいちfile:///形式にしないといけないんだ
WEBブラウザはローカルファイル開くときにfile://を入れなくてもいいよ。C:\hoge\test.htmlでも開いてくれる。 svnはfile://を入れないとダメだね。C:\hoge\だけじゃ開いてくれない。俺も不便だと思う。
ローカルにリポジトリ置いてるやつは分散型試してみろよ
Linux版のgitスレにTortoiseGitでSVNリポジトリうんぬんってあったけど、 本当に使える?
Webブラウザは普通ローカルパスいれるとfile://形式に自動で変換してくれるな TortoiseSVNにそういう仕組みがあったら便利かもね
え?まだ誰もパッチ書いてないの? こんな修正30秒もあればできるのになぜやらない?
ならやれよ。
>>716 SVNは集中型だからそのパッチが受け入れられなかった場合管理の仕様が無いから。
そろそろ、バージョン管理システムのバージョンを管理するシステムが必要ですね。
>>719 リポジトリが壊れたときように、リポジトリをsvnで管理するのかな。
そのバックアップリポジトリをまた、svnで管理する、と
>>720 こういうの助かるよ
svnからでかいプロジェクトを直接git-svnすると遅くて死ぬからな
>>722 一種のバックアップだもんね。これで、SVNが壊れても安心。
(´;ω;)TortoiseSVN 1.6.9 今更ながら使えねー VS2010 でコンパイルすんなよ、プログラムエラーや接続が切られたとかばっかでまともにソースが更新出来ない SVNの仕様?が変わったのか何なのかしらないが、.svn(_svn) が更新できなくてリポジトリ(ソース)そのものも更新が出来ない 1.6.8 までのは問題無く更新出来るのに、1.6.9 で出来なくなるって何よヽ(`Д´)ノプンプン
tsvnとvs2010使ってるけど問題ないよ。なんだろね? 1.6.8ぐらいからか、マージダイアログでfile://c:/repos/prog/trunkとかがurl入力表示されてるところで参照ボタンおおすと、リポジトリブラウザが開かずにフォルダ選択ダイアログが開くのが困る。svn://だと問題ないのに。直んないのかな?
>>724 (追記)
使ってるOSが、XPSP3だからなのかなぁ?いろいろソフトとかも入ってるから何かの競合もあるかもかだけど
昔、エクスプローラーごと持って逝かれたことがあったのを思い出した(゚∀゚)
1.6.8 問題なし
1.6.9 NGm9(^Д^)プギャー
まぁ 1.6.8 は問題無いからおとなしくそっちを使うか(;´д`)トホホ…
XPSP3で1.6.9使ってるけど特に問題ない
>>727 (その後)
アンインスコ&レジストリきれいきれい&消えなかったフォルダ削除して
1.6.9 インストールしなおした
結果、問題無く動いた(`・ω・´)シャキーン
お騒がせしましたorz
サーバ版のWindowsのBinaryPackage、Apacheとのバンドルしか無くなったのね・・・
作業ディレクトリでtrunkのファイルをあれこれいじった結果、やろうとしている事が一筋縄では 行かないようなのでbranch切ってそっちでやろうと思っています。 この時trunkのファイルを変更せずにbranchを切ってコミットするにはどうすればいいのでしょうか。 新たな作業ディレクトリを作りチェックアウトしsvn cp trunk/ branch/hoge/してコミット ↓ branch/hoge/に前の作業ディレクトリのtrunkで変更を行ったファイルを上書きし、コミット ↓ 前の作業ディレクトリを削除し、以降新たな作業ディレクトリで作業を行う 思いついた案はこれなのですが、もっといい方法はありますか?
>>731 そのままその作業フォルダーで分岐すればいい。
tortoiseSVNなら、分岐ダイアログで分岐先に切り替えるにチェックして分岐させるる。
分岐ってsvn cpのことだろ?
それだとコミット時にtrunkも変更されてしまうぞ。
やるとしたらこんな感じか。
svn cp trunk/ branches/hoge/
svn revert trunk/
→commit
なんか微妙な気もする。
>>731 の方法でいいんじゃね?
>>732 のtsvnの手順だと分岐後に分岐先に自動的に切り替えられる。この時点ではtrunkにコミットされない
ワーキングコピーは分岐先に切り替わってるのでそこで作業すればいいのだ
svn wc urlでワーキングコピーを直接ブランチにぶっこみゃいーだけやんか
737 :
デフォルトの名無しさん :2010/07/16(金) 11:22:25
>>729 TortoiseSVNが使ってるレジストリって何処と何処、なんて資料はありますか?
「ここを見れ」でOKなのでご教授くだされ。
アンインストール+ディレクトリ削除ではNGでした(´;ω;)
普通のアプリは、Softwareキーのところにあるけどね HKLM/Software/TortoiseSVN HKCU/Software/TortoiseSVN
740 :
731 :2010/07/21(水) 00:03:23
遅くなりましたがみなさんレスありがとうございました。 ブランチを追加することは余り無いので ブランチ追加だけのコミットをしてみました。
742 :
671 :2010/07/21(水) 09:47:04
win2k(TortoiseSVN1.6.8→1.6.10) TortoiseSVN1.6.10→(TortoiseSVN1.6.10)Repair→日本語パッチ→再起動 これで特に問題は出ていない。アイコンオーバレイも働いているし、エラーも今のとこ 確認できていない。 Repairが必要だったか分からないけど、何度もやるのも面倒だったんで最初からあて ておいた。
741 がいっている”修復”というやつが、おまえのやった” Repair”というやつだ。
1.6.10入れたらチェックアウト中に止まってしまう 1.6.8に戻したら直りました
またヘボいアップデートになったものよのぉ 1.6.10 はインスコせずにスルー確定だのぉ
TortoiseSVNの安定版の最新版はいつになったら安定版になるのか
>>747 だけんなんや?
んなこた ど〜でもいいわ
ヘボを再アピールか?
ドキュメントをろくに読まない人向けに書いてあげたのにw
アップデートじゃなくて、1.6.10を新規で入れた場合に
>>744 になりました
現在 trunkでLock状態のファイルが100個程度あります。 ロックしているユーザ数は20程度。 このtrunkからbranch切ると,branch側はLockが外れますが、 外さずにbranchするかまたは、trunk側のLock状態をcopyする 良い方法は無いでしょうか? trunkに留まる者とbranchに行く者が明確になってないので、 Lock状態をbranch側にも反映しておきたいのです。
>>752 そのロック、本当に必要か?
ロックとブランチは相性が悪いから同時に使わない運用を考えよう。
バージョン管理でロックする男の人って・・・
差分をマージできないファイルだったらロックするしかない。
その生き様がロックだ。
ソースコードもロックできるように設定しろって上司に言われた アホか
758 :
デフォルトの名無しさん :2010/08/01(日) 14:15:27
ロックしてストライキすれば良い。めでたしめでたし。
そんなネタ上司、日本で一人しかいないだろうから、
>>757 が
特定されるのは時間の問題。
リペア操作をユーザーに求めるってアホだろ インストーラーくらいしっかり作ろうよ 最近のトータスはアップデートが怖い Win2000に入れたら、別のアプリのインストールでエラー履くようになるし・・・ もうちいと安心できるもの作れないものかね?
761 :
デフォルトの名無しさん :2010/08/01(日) 16:58:08
1.6.10は入れるの恐いね。 安定版は1.5.9と考えた方がいいのかな。
763 :
752 :2010/08/01(日) 22:54:13
branchに行く人はロックし直してよね、ってやるしか無いですね。
その結果、branchからtrunkへのマージ作業がなんか面倒くさそうですが。
>>753 >>755 バイナリファイルはありませんので、本当はロックする必要は無いんです。
「作業中に他人の変更なんか受け取れるかボケ」
「俺が触ってるんだから、オマエらは触るなよコラ」
だそうです。
開発会社が混在してますが、ソースのツリーが綺麗に分離できなくて、
各社入り乱れ、さらにcommit基準が緩くてHEADでビルドエラーが日常茶碗蒸し、
中途半端な経験者が「前はこうやってたから」という理由で作られた今の基準は、
見直すべきなのかも。
>>757 あれへ?私と同じ部屋にいる人ですか?
>>763 そのでたらめな運用は見直したほうが良いと思うよ。
765 :
731 :2010/08/02(月) 01:15:04
ひでぇ
名前欄残ってた^^;
>731も関係者なのかと思ってしまったじゃないかw 某品川方面のSIerで>763のような運用をしているらしい噂を耳にしたことがあるけどビンゴ?w
私が上司ですがなにか
>>768 今すぐ、死んでください。お願いします。
あなたと、一緒なら
誰にも迷惑を掛けることなく孤独に死ね
772 :
デフォルトの名無しさん :2010/08/02(月) 18:39:03
アホな部下など信頼できん。Subversionもだ。ロック第一。 今すぐ信頼と安心のVSSに切り替えろ。
今更VSSなんかに戻れないと個人的には思うけど、 763みたいな運用ならVSSの方が向いてるな。デフォルトでロックだしね。
774 :
763 :2010/08/03(火) 00:37:11
今日も来ましたよ。
幸い?branch側に行く人で、ロック持ってる人はほとんど居ませんでした。
あと二ヶ月これで我慢して回しながら、(まだこれから一年近く続く)
10月以降の次フェーズ開始までに何とか軌道修正したいです。
しかしながら、修正はシリアルに、という考えが根強い様です。
マージの概念がピンと来ないみたい。(特に年寄り)
ソース持ち出しての開発もしている様なので、今後
>>641 の様な
事故が発生する懸念も・・・。末端まで教育が行き渡るかどうか・・・。
>>767 んー、ハズレです。もっと南ですね。
>>773 最初は「信頼と安心」のVSSも選択肢としてあった様でした。
しかし、導入費用をケチるというセコさ。
775 :
763 :2010/08/03(火) 10:16:43
需要は無いと思うけど,今回Lock関連でわかったことまとめ。 ・svn copyでLockは外れる。 ブランチ先およびタグからはスッキリ外れます。 合法?に外したい場合は悪用できるかも。 ・hotcopyで取得したバックアップリポジトリに対してはロックが維持される。 まあ,当たり前か。 ・synsyncで同期するSlave側にはロックが渡らない。 Slaveを2つ立ててMasterから5分おきにsyncしてますが, ロック情報は同期されません。 (copy-revpropsで出来る? 試してません。) Slaveを使用して復旧する際には注意ということか。
品川より南なら大田区かな?
マージが理解されていないというのにそこまでしてSubversionとブランチとロックを使うか?
運用見直しの機会と持ち出しもあるというのなら
>>739 や
>>720 のようなミラーを作った方が良いと思うが。
DVCSのマージの方が直感的だし。
svnsyncを使ってGoogleCodeのリポジトリをローカルのリポジトリへ複製しようとしましたが、 コマンド実行後にコマンドプロンプトが固まってしまいます。どうして? svnは、TortoiseSVN1.6.10についているのを使っています
田町とかでないの? copy元のロックも外れちゃうってこと?ロック使わないけど、それってまずいんじゃないのかな。
>>778 田町は品川より北。
品川と言っても品川駅は港区。
品川駅より南というと品川区も入る。
品川駅より南って誰が言ったのさ?
>>780 誰もいっていないけど品川っていうと品川駅のことを言うから混乱する。
あと目黒駅も。
tortoiseSVN で svn-commit.tmp を current directory 以外(例えば /tmp) に 作らせる方法を教えてください。 よろしくお願いします。
目黒駅は品が沸く
784 :
763 :2010/08/04(水) 01:18:34
品川で盛り上がってるところ悪いけど、スルーするよ。
>>776 開始当初にsvkをほんの少しだけ検討したけど、時間切れ。
Subversionならみんな知ってるから、という理由でstartし今に至る。
まあ、eclipseでjavaだから、自然にその方向になったと思う。
個人的にはMercurialに興味ありですが、移行も含めて運用を
切り替えるのはちょっとキツい。Trac&postgresqlも連携させてるし。
>>763 では大げさに書いてしまったけど、Heavyなロッカー達は
全体の1/4程度で、あとは、まあ、普通に運用してもらっています。
それでも「svn updateで作業コピーがファイルごと上書きされる」と思っている人とか、
「紛失」と出ても平気で無視した挙げ句、「フリーソフトは信用できん」とか言う人がいて
ネタには尽きません。(Linuxもsvnもeclipseもapacheもjreも全部「フリーソフト」と呼ぶ)
>>778 言葉足らずでした。copy元のLockは残ります。
それよりもsync先に渡らないのは新たな発見で、ライトスループロキシで
負荷分散構成するときはロック禁止にしないといけないことがわかった。
>>784 別に一気に別のDVCSに移行する必要は無い。Tracと連携しているのならなおさら。
オープンソース界隈ではマスタがsvnでもクライアントはgit/hgというのはごく普通。
でも最初のcloneが重いってことでgithub/bitbucketにミラーがある。
svnが更新されたらgit/hgも更新される。
そうすれば各人好み・得意のVCSを使える。
完全移行のタイミングは?というとsvnで言うところのブランチを切るタイミング。
新ブランチはgit/hgで旧ブランチはsvnという感じ。
openofficeがこんな感じだった思う。svnじゃなくてcvsだったそうだが。
そうすればTracでの管理も辻褄が合う。
>>784 コピー先にまでロックがかかると思った理由が分からないし
コピー先でロックが外れていることを悪用できそうだと思う理由も分からない
> branchからtrunkへのマージ作業がなんか面倒くさそう
変な親切心でbranchとtrunk両方にコミットする人がいなければ楽にすむよ。
普通にやればいいだけ。
787 :
デフォルトの名無しさん :2010/08/20(金) 21:21:01
1.6.10は入れるの恐いね。 安定版は1.5.9と考えた方がいいのかな。
>安定版は1.5.9 うわさ話だけで決定したいのなら 1.2 くらいの方が良いと思うぜ
どこが怖いかを提示せずに印象操作ですか?
http://tortoisesvn.net/majorupgrade Some of you may have noticed that the last two versions of TortoiseSVN did not always install properly if an older version was already installed.
To fix the problem, all you needed to do was to run the installer again and choose "Repair" in the dialog.
TortoiseSVNという特定のSubversionクライアントの旧バージョンのインストーラに バグがあったって話にしか読めないんだけど。 Subversion 1.6.10と何の関係が?
1.6.10は
リペア操作を求めるインストーラーがそもそも変だよな
>>744 なんてのも怖い
Windows2000のエラー
>>760 なんてのも裏で何やってんだトータス?って怪しすぎる
以前のバージョンUPでは
>>577-578 みたいなバグが発生したし、
もう直近のバージョンUPは信頼できない
>>789 上にさんざん書かれているのに、印象操作もクソもないだろ
Subversion本体とTortoiseSVNではバージョン番号がずれるから、
>>787 みたいな書き方では誤解を生む。
そういや今年の夏にリリース予定のsvn 1.7でgitみたいな オフラインコミットができるようになるとか言われてたけど、 WC-NGでそういった拡張性を確保するってだけで実際にできるようになるわけじゃないのね。
>>796 VC6 とか VC2003 使ってれば Windows95 でも動くんだけど。2005 からはダメ。
開発チームが古いOSでの動作をあきらめるかどうかであって、
MS のサポートとオープンソースは関係ないでしょ。
>>800 C/C++ならMSCを使うかMingWを使うかの判断が必要で
MSCを使うのであればMSの方針に左右されるでしょ。
古い開発環境使うだけで古いOSでも動作保証できるって頭がお花畑すぎるだろ
804 :
謎の現象 :2010/08/22(日) 15:50:21
ありのままに今起こったことを話すぜ さっきコミットしたものをチェックアウトしたらうまく動かないので調べたら コミットしたファイルが別のフォルダにコミットされていた 手元ではこうなっていて、動いているものが aaaaaa/aaaa.aaa aaaaaa/bbbb.bbb が何故かリポジトリでは bbbbbb/aaaa.aaa bbbbbb/bbbb.bbb に化けていて、aaaaaaフォルダがなくなっていた。 やったことは普通に右クリックでTortoiseSVN→追加、SVNコミット 5年ぐらいTortoiseSVN使ってるけど、ここまで不可解なことは初めてだぜ Subversion1.4.6 CentOS5.4 TortoiseSVN1.6.8 WinXP Pro 32bit
念の為に聞くが、そのファイル名、ディレクトリ名はほんとにaやbの羅列なの? まさかとは思うが、ディレクトリ名に「表」がついているとかってことはない?
能かもな
SubversionもWindowsシェルもUnicodeで扱ってるのに TortoiseSVNだけCP932で扱ってたら驚愕だな。
bbbbbbをチェックアウトしてaaaaaaにリネームしていた説
ディレクトリ名の最後の1文字の後ろ1バイトが「\(\x5C)」いわゆるバックスラッシュで死ぬパターン Windowsのシステムロケールが原因
811 :
804 :2010/08/23(月) 02:42:55
とりあえずおかしなディレクトリを消して追加し直して修復。1日様子見てますが再発はしてません。 ディレクトリ名・ファイル名は普通に英単語で、日本語一切なし。 リネーム、切り替えなんかの処理も一切なし。やったことは追加。 わかりづらいので実際のファイル名で書くと、同階層にtopとplayerディレクトリがあって、それぞれの下にindex.htmlがあった。 player/index.htmlを編集してコミット player/upload.htmlを追加してコミットしたら その2つのファイルがtopにコミットされていて、元のtop/index.htmlは上書きされていた。 不可解すぎて追う気がしないがとりあえず書き込んでみた。レスくれた人トンクス
>>805 ,806,809
Subversion でそれは無いわ。
subversionスレなのに馬鹿gitとかと勘違いしてる奴が多すぎるのはなぜ?
814 :
デフォルトの名無しさん :2010/08/23(月) 07:38:11
そっか、TortoiseSVNと思って使っていたら、TortoiseGit/TortoiseHg/TortoiseBzrだったって落ちか。
bbbbbb/aaaa.aaa bbbbbb/bbbb.bbb ってVSSくさいよな 実はVSSでした! なんつー落ちだったら最高にウケるぜ
なにこいつキメェ
817 :
デフォルトの名無しさん :2010/08/23(月) 22:14:30
TortoiseSVNはVSSクライアントの機能もあるのですか?
TortoiseVSS
確かにVSSのリポジトリは、そんなファイル名で構成されとるわな 笑
うちのオカンもロボットのことまとめてガンダムっていうし、ゲーム機のことファミコンとよぶし、 アクションゲームは全部Diabloっていうし、 GUIのバージョン管理ソフトをTortoiseSVNというプログラマがいてもおかしくはないよな
結局switch間違えただけなの? 履歴と別にコマンドラインのログの機能があればいいのにな。フックスクリプトで出来るかな?
コピーってゼロックスですか?
どのレスについて話しているのかわからん 安価付け炉や
824 :
デフォルトの名無しさん :2010/08/25(水) 12:29:29
>>822 その題名は多分、このスレの住人にはわからんと思うぞ。
ブランチ作って。 もう夕方ですが明日のブランチですか?
>>825 あなたはこのスレの住人ではないのですか?
>>829 ゼロックス、ホチキス、エスカレータは一般知識だからね。
>>821 そういや TortoiseSVN の操作ログは Application Data に記録されてるから、それがまだ
残ってて >804 が晒してくれれば何かわかるかもね。
804がその後出てこない事を考えると、 「リポジトリは実はVSSでした」 なんつぅー恥ずかしい事実が判明したんじゃねえの?
833 :
804 :2010/08/26(木) 07:13:31
まだその話題引っ張るの? ログは見たけど、特におかしい所はなかったなあ。 つーかバージョンまで書いてるのにVSSとかあり得んだろ。
834 :
デフォルトの名無しさん :2010/08/26(木) 08:39:41
「ブランチ作って」 「ブランチというコマンドありませんが」 「コピーだよ、コピー」 「コピーってゼロックスですか?」
今で言うと「コミュニケーションスキル」ってとこかな
>>834 「ブランチ作りました」
「お前どうやって作った?」
「エクスプローラでコピーしました」
「馬鹿野郎、svn copy だ」
>>831 マジで?それは知らなかった。参考になった
>つーかバージョンまで書いてるのにVSSとかあり得んだろ。 ありえる SVNとVSSの2つのクライアントがPCにはインスコ 当の本人は2つの違いを良く分かっていないケースだ 言いだしっぺが一向に出てこないだろ? 恥ずかしいイージーミスがあったはずだ 実際、ソース管理がなんたるかを理解できない御仁に会ったことがある。 その御仁は、誰かに質問するのが恥ずかしかったのだろう、なんと 毎日日付名のフォルダを作り全てのソースファイルのバックアップを取り、独自でファイル管理を始めていた。 SVNもVSSも何の事だか分からなかったらしい。
そんな御仁が質問主であれば、 一般ピーポーの想像を超えた、爆笑チョンボが隠れていると感じるんだよ。
なんなのこの粘着基地外 いい加減キモすぎる
>>840 質問者のレスを全然読めてないお前が爆笑チョンボだろ。
はてさて真相は如何に 840のチョンボ君は、自身の恥ずかしさを隠す為に必死に攻撃しているよwww
「VSS」の言葉にやたらと噛み付くヤツがいるな
>>804 の真性チョンボ君は、その中のだれかだ
845 :
デフォルトの名無しさん :2010/08/26(木) 17:06:43
VSSとか行ってる奴は
>>811 をあぼ〜んでもしてるのか?
サブバージョンあるある
>>836 エクスプローラでコピーしました
>>839 毎日日付名のフォルダを作り全てのソースファイルのバックアップを取り、独自でファイル管理を始めていた。
ある、ある
・なぜか納品用のブランチにマージされていないものが納品されていた ・どこにもコミットされてないものが納品されていた ・そんな奴が納品担当者
ACCESSのコードの修正の 差分をどうやって取ればいいのですか? VSSならできるのに・・・
>>849 ならVSSでいいんじゃね?
Excle はどうなの?
>>849 VBAのソースだけモジュール単位でエクスポートできなかったっけ?
うちはエクスポートでやってる>SVNでアクセス/Excelのコード管理 だけどbasやクラスモジュールはともかく フォームとかレポートは、普通のVBのフォームと違って VBAでエクスポートするとコントロールの情報が含まれないため そのまま他のファイルでインポートしても無意味な事が多いので 結局は元のエクセルやAccessファイルも一緒に保存することに… # コードの比較もしたいので結局エクスポートもする SVNはバイナリに比較的強いので助かるけど
以前にアップデートしたらチェックアウトできねーm9(^Д^)プギャーとカキコしたもれも やっとこ TortoiseSVN 1.6.9 → 1.6.10 に更新した ログに書かれていた通りリペアすれば正常にインストールは出来たのだが、もれの場合は以下の通りやってだった ※一旦アンインスコせずにリペアやるやり方では駄目だった 1.TortoiseSVN 1.6.9 をアンインストール(再起動) 2.TortoiseSVN 1.6.10 をインストール(再起動しない) 3.TortoiseSVN 1.6.10 をリペアインストール(再起動) 4.正常動作( ´∀`)bグッ! はよ、Win7 入れろよというお達しなのか・・・もれの PC じゃ XPSPx が関の山よヽ(`Д´)ノウワァァァン
>>852 まったくもって同じことをしていた
そのときにVBAを多人数開発ってのは難しいんだなと思ったよ。
>>853 TortoiseSVN 1.6.10 って変というかクセがあるというか・・・
2度インストーラーを起動させてリペアしないといけないって、作りがおかしいだろ
>>858 読みたくないから聞いてんだよ
日本語3行でまとめろ
なんか怪しげなTortoiseSVN 1.6.10ってインスコするの怖いね Win2000に入れると他のアプリインスコでエラー吐くようになるし XPでもホントに大丈夫か分かったもんじゃない ギャンブルもんだな
VMにインスコだろ常考
インストール先がVMである確率 5%未満 だが861にとっては常識
人柱としてVMって言っていると思うが
Subversionのためにもう一個Windows買えと
( ^ω^) おっ ( ^ω^) おっ ( ^ω^) おっ ^ω^
人柱でさえインストール先がVMである確率 5%未満 だが861にとっては常識
なんか変なのが湧いているな
人が多いときは目立たなくても いまの2chの過疎りっぷりだと目立つな
ただ単に 861=863=867 って事だろ
( ^ω^) おっ ( ^ω^) おっ ( ^ω^) おっ ^ω^
TortoiseSVN1.6.8で、ファイル1000個ぐらいaddしようとしてるんだけど、エクスプローラーで 全ファイル選択して右クリック→追加をやっても、何故か100ファイルずつぐらいしか追加できない。 仕方ないから何回もやってるが、そういう仕様なの?
>>871 そのひとつ上のフォルダからaddすれば1個じゃん。
おまい頭ええな
えっ
>>872 それだとフォルダ内の全ファイルになっちゃうじゃん
>>875 それで何か問題が?
すでにリポジトリに入ってるファイルは除外されるよ。
>>876 だからリポジトリに全部入れたくないんだってば
>>877 意味分からん。
入れたいファイルだけ先においてaddして、
入れたくないファイルを後から追加すればいいじゃないか。
それか、もっと複雑なことをするならコマンドラインでやればいい。
svn:ignoreとかそういう話ではないのか
>>871 >全ファイル選択して右クリック→追加をやっても
>>877 >だからリポジトリに全部入れたくないんだってば
ここ矛盾してるんだが。質問をちゃんと書こう。良い答えは良い質問から。
オレなら、登録したくないファイルを別ディレクトリに退避しておいて、ディレクトリをaddする。
元の質問した者だけど、いろいろ参考になった。お前らありがとう。
885 :
デフォルトの名無しさん :2010/09/11(土) 09:27:45
あるプログラムのソースコードをzipしたやつAと、そのアップデート版Bがあるとして、 Aをレポジトリに入れた後に、Bに取り替えて履歴を反映させたい場合はどうすればいいんだろう。 普通に上書きすると、削除したファイルとか反映されないし。
Excelのdiffを取るのにおすすめのプラグインは? あ、TortoiseSVNで
>>888 WinMergeプラグイン
Excelからテキストへの変換プラグイン
891 :
デフォルトの名無しさん :2010/09/14(火) 16:55:46
1人でphpの開発をしております。 本番サーバー、開発サーバー、バックアップサーバー、3台のサーバーがあります。 今はFTPで開発サーバーに接続、動作確認、開発サーバーから本番サーバーにrsyncで同期 という方法をとっております。 本番サーバー、開発サーバーとも、日毎にバックアップサーバーに保存しております。 開発にはsubversionがあたりまえ、というようなことを耳にしましたが、このような開発環境でsubversionを導入するメリットというのはどんなものがあるのでしょうか?
893 :
891 :2010/09/14(火) 17:03:11
>>892 ありがとうございます。
そちらに移動します。
Paypal「お前の国の奴相手に寄付の取り次ぎしたらあかんかったwwwサーセンww Stefan「ちょwおまw Tシャツでも売ればいいんじゃないですかね。
思えば paypal 使った最初が TortoiseSVN だった
あの亀がプリントされたマグカップなら欲しい
TortoiseSVN のログメッセージウィンドウの変更ファイルリストに svn:mergeinfo 属性のみが 変更されたファイルを表示しないようにする方法はないでしょうか? 1ファイルしか変更しなかったマージでも数百個のファイルが変更されたように見えて分かりに くいのですが。
>>898 ファイルに打たれているmergeinfo属性を消してみ。出なくなるから。
なんかの弾みでファイルにmergeinfoが打たれるとそうなる。本来ファイルにはmergeinfoはいらない。今は直ってるみたい。
>>899 追伸
判ってると思うけど、マージが面倒になるから分岐してる状態でmergeinfo消さないでね。
>>899 >>900 ありがとうございました。
マージするときに指定する、マージ先のファイルやディレクトリに必ず svn:mergeinfo
属性が付くみたいなのですが、これを消してしまって悪い影響はでないでしょうか?
多人数で開発しているので影響が不安なんですが。
>>901 マージするときに分岐より前のmergeinfoは無くても平気な様だね。一度全員がtrunkにマージしたところでやってみればいいと思うよ。掃除すると余計なmergeinfoはつかなくなる。
一度練習用に分岐させたテストのブランチでmergeinfoを掃除して練習して様子を見て納得したらやればいいと思う。
mergeinfoは2重にマージするのを防ぐものだからその心配が無ければ平気だ。最悪でもマージ時にマージするリビジョンを手動で指定すれば同じことができる。
WindowsVista に TortoiseSVN 1.6.11 を入れたのですが
checkout や commit の動作が異常に遅いです
svn+ssh://hogehoge とか
file:///hogehoge とか
どこのレポジトリでも遅いです
svn+ssh だと遅いというのはこちらに書かれていて
http://tortoisesvn.net/vistaproblems netsh interface tcp set global autotuninglevel=disabled
で解決済みです
Vista はやっぱり糞なんでしょうか?
904 :
903 :2010/10/05(火) 00:15:45
svn log -r HEAD:1 -v とか svn list とかは比較的速いレスポンスです svn checkout URL とか svn update とか svn add hogehoge とか ローカルファイルの更新に関わる部分で何か変なことが起こってる見たいですが Vista で同じ状況を経験したかたはいらっしゃいますか? (その他のアプリは正常に動いているので HDD が異常とかいったことはないです)
IPv6が邪魔してるとか?
906 :
903 :2010/10/05(火) 01:42:23
>>905 ローカル エリア接続のプロパティで
IP6 のチェックを外して実行しましたが
変わりありませんでした
908 :
デフォルトの名無しさん :2010/10/05(火) 02:36:01
gitは使い物にならないんでだめです
910 :
デフォルトの名無しさん :2010/10/05(火) 08:33:37
複数人で同時に編集できなくするフラグみたいな機能ありませんか? 前の会社で使ってたツールではチェックアウトという機能があって、編集するファイルを チェックアウトすると、コミットするまでそのファイルを他人が開けなくなる。 もちろんそれはそれで不便なことがあるので、使い所は選べたけど。
>>911 ロックすればいい。
が、そんなバージョン管理ツールの利点を殺すような主張をしてどうする。
Subversionではともかく、昨今の分散管理システムなら、pushを制限するとか できても面白いかもしれないね。
バイナリを編集するときはロックさせるだろ
>>913 pushを制限するのはsshとかhttpの認証でできる。
分散だから、きれいなリポジトリと作業用を分ければ良いだけ。
分散型でのコミッタの役割はきれいなリポジトリを管理すること。
lockの話からの派生なんだから特定のファイルのpushだけ制限できたらいいねって話だろ。 sshやhttpでそんなことできたっけ?
>>916 SVNみたいに.svnが各フォルダに無いから原理的にまず無理。
チェンジセット指向でファイル単位でロックすることがナンセンス。
やるとしてもgitだとsubmodule単位だろう。
>>903 俺の場合だけど、アンチウィルスのリアルタイムスキャンがじゃまして遅いという事があった。
その時使っていたのはMicrosoftSecurityEssencial。
AntiVirに変えてからは直ったけど、まぁ、特殊すぎて参考になLANかも。
なるほどロックを使えばいいのか、どうもでした お察しの通り、バイナリを編集する時にロックしたい感じです、マージできないので
ぽじれないのでとりあえず寝る おやすみ
げっ誤爆った _o_
922 :
903 :2010/10/05(火) 20:49:06
>>907 git良く知らなかったので調べてみました
かなり使い勝手が良いですね
TortoiseGitで速度も問題なかったので満足しました
とりあえずTortoiseSVNでなくても良いのでTortoiseGitを使うことにしました
ありがとうございました
>>908 とりあえずSubversionではSJISでもUTF-8でも使えたのですが
gitだとUTF-8に統一しないとだめみたいですね
特に日本語ファイル名のファイルがあると悲惨です
この点Subversionの方がちゃんと対応出来ていると感じました
あとTortoiseGitの操作中にいくつかTortoiseGit自身が死ぬケースがありました
まだβ版なので今後に期待です
それ以外では使い物にならないところってどんなものがありますか?
>>918 アンチウィルス止めて試すのはやってみたんですが
やっぱり糞遅かったです
Vistaダメポ
>>922 > それ以外では使い物にならないところってどんなものがありますか?
>
・リビジョン番号が無いこと
・Subversionのようなスマートなブランチ・タグが無いこと
・マージが簡単すぎること
・すべての操作が速すぎて余計な時間が発生すること
また出ちゃってるよ TortoiseSVN 1.6.11 インスコするの怖いから、どなたかどんなもんだったかご報告お願いできませんか
入れなきゃいいじゃん
入れない事を前提にした質問に「入れなきゃいいじゃん」か・・・
最初から入れる気がないならそもそも聞く必要性がまったくない。
アホだ こういう奴いるよな
931 :
デフォルトの名無しさん :2010/10/05(火) 23:45:54
Gitは仕事で全然使い物にならん
つPerforce
checkout したり commit する度に ソースファイルの日付が変わっちゃうんですが そういうもんですか? だれも気にならない?
日付が変わらないとmakeで不便だろ。
中身が変化していないのにタイムスタンプが変わることに対する違和感です もともとmakeなんかもタイムスタンプで中身が変わったと認識して必要なものだけコンパイルするんですよね? だったら中身が変わってないのにタイムスタンプが更新されたら余分なコンパイルが発生しませんか?
バイナリも一緒にコミットしてるならそうかもね
>>933 commitで変わるのはキーワード置換が有効じゃないのか
中身が変化していないなら Commit も CheckOut も起きないだろ?
>>933 これで我慢しとけ。
[miscellany]
use-commit-times = yes
それだ
>>935 checkout チェックアウト時刻になる。make問題なし
commit キーワード置換が無ければ時刻変更無し。make問題なし
update,revert 変わったファイルだけ今の時間になる。make問題なし。
checkoutとrevertでタイムスタンプが異なる事を容認できるならば、 ckeckoutでタイムスタンプが変わっても全然問題ないだろ。w
中身が変化していないのにタイムスタンプが変わるのか
checkout時にリポジトリ側のファイルとタイムスタンプを同じにしてくれればいいのに
>>946 checkoutは作業フォルダで編集やmakeの作業用だからタイムスタンプなんか気にする必要がない。
納品時なんかでタイムスタンプを一定にしたいならexportを使うとコミット時刻にタイムスタンプは一定にできる。
ファイル名とファイルサイズとタイムスタンプが同じなら中身は同じなのか? おめでたいな 検察に就職しろ
950 :
デフォルトの名無しさん :2010/10/07(木) 06:45:27
検察はタイムスタンプを過去にしたんだよね? 故意ではなくても時間・タイムゾーンが狂っているマシンもあるし、分散型ではコミット時間をいじれるし。
メールに添付で送ったりしたら受信側で日付変わってたり
メールはタイムゾーンのミスした恥ずかしい未来から来たSPAMがあるが、 Received:ヘッダに経路が残っているから偽装は難しい。
953 :
デフォルトの名無しさん :2010/10/07(木) 09:19:58
>>952 お前馬鹿だなー
ありゃリスト最上位に表示され続けるよう意図して未来の日付になってんだよ
ありえない日時のメールはフィルタリングで桶
955 :
デフォルトの名無しさん :2010/10/08(金) 00:51:25
スパムに引っかかるようなヴァカはフィルタリングなんて知らないからな 実に合理的
gitは遅いといわれるCygwinのgitでもSVNよりはまだ早いな。Linux上のgitはさらに速い。
git svnはともかく、git svn cloneはいろいろな意味で日が暮れて死ねるがw
TortoiseGitやTortoiseHgは、、、
ファイル数多いとファイル一覧すら操作できなくなったり、
落ちること多くて最近は使ってないな。今は知らん。今はそこそこ安定しているらしいが
>>903 >>922 うちではXPでもVistaでもTortoiseSVNは遅いけど、VistaがSP1以前ってことはない?
SP1前はファイルコピー自体かなり遅かったはずだけど。
さすがにないか
あとは経験上メモリ食っててスワップしてるとか
似たスペックの環境でXPとVistaでパフォーマンスがあまりに違うので、
Vistaにメモリ追加したら問題ない速度になったことある。物理メモリ足りずにスワップしてただけだった。
俺が素人なだけかもしれなんが、Windowsの空き物理メモリだけ足らずにスワップしまくってる場合の見分け方教えて欲しい。
速いとか遅いとか言うけど指標が無いな。 たとえばboostのライブラリのソースの新しいバージョンをコミットするのにどれくらいかかってリポジトリの容量はどれくらいになるかとかで比較したいな
>>957 分散型同士の比較ならいっぱいありますよ。
apacheのsvnリポジトリは結構でかくてベンチマークにはならないかな バイナリは少なそうだが
963 :
デフォルトの名無しさん :2010/10/10(日) 00:03:35
>>957 コミットの概念が違うから比較ができない
svnのコミット=分散型のコミットとプッシュ
結局、同等の行為を行った場合はsvnが最速って事やな
分散型に慣れたらsvnは遅すぎる svnsyncより分散型のcloneの方が速いでしょう確実に
svnのスレで何かと早い遅いというなら、svnの機能に対するこの動作が、svnと何かで何秒ですって言ってくれないとわからん
>>965 一人で勝手に「速いでしょう確実に」とか断言されても困る
どんな情報を基にして断言してるわけ?
>>967 え?
Gitが67MでSVNが61Mでしょ?
>>967 ローカルブランチで分散型同士でgitだけがダントツで速すぎて何か笑える。これって同じ条件なの?何でこれだけsvnがないの?
svnはcommitだけでいいのに、gitだとadd commit pushってやらないとダメだから こんなんどう考えてもsvnが最速だよね
svnだとリポジトリ内のブランチは一瞬だ
>>969 Entire Directoryの意味がわからなかったから試した。
.gitが30M、これを含めた全体が54M
>>973 その比較もsvnのリポジトリだけ空白とか。Entire Directoryはsvnの作業フォルダの.svn込みを指してるのか?
するとソースのテキストはは24Mぐらいで計ったんだろう。だったらsvnのリポジトリは3M位になりそうだね。
>たくさんのブランチはまったく無意味な存在だ。 BSDのことですね、わかります。
>>975 遅いと困るし気にするだろう。
ブランチー修正コミットの繰り返しーマージのサイクルだからブランチが遅いと困るだろう。
>>967 はgitのブランチ速いすごいだろうと大きいグラフで言ってるのに、意味がないの?
そもそもsvnとの比較がないとかどうなってるの?
gitのブランチはコミットに印つけるだけ?なので高速
等価な行為で比較すると、SVNは言われてるより遥かに高速だと言うのがバレてしまうから 何かを普及させたきゃバズワードとインチキベンチを使うしかないってのが嘆かわしい
>>979 他の使ったことないくせに 適当なことを・・・
適当じゃない数字プリーズ
>>980 「お前の主観」なんてゴミクズ以下なので、ストップウォッチで測った数字をよろしく
つかgitのマージのが酷い出来だと言われてるはず
>>967 ベンチマーク用のスクリプトどこー!?w
速度のとこの検証用のスクリプト見つからない
本当にないのだとしたら、
このページのドキュメントだけgithubで共有されてて、
結果だけがネットワーク的に翻訳されたり、ベンチ結果が追加されているように見えておもしろいんだが
985 :
デフォルトの名無しさん :2010/10/10(日) 02:48:36
>>982 $ time svn checkout -q
http://code.djangoproject.com/svn/django/trunk dj-svn
real 1m48.010s
user 0m6.613s
sys 0m7.338s
$ time git clone --depth 1 git://github.com/brosner/django.git dj-git
Cloning into dj-git...
remote: Counting objects: 6666, done.
remote: Compressing objects: 100% (4624/4624), done.
remote: Total 6666 (delta 3188), reused 4248 (delta 1723)
Receiving objects: 100% (6666/6666), 10.43 MiB | 292 KiB/s, done.
Resolving deltas: 100% (3188/3188), done.
real 0m52.488s
user 0m2.180s
sys 0m1.547s
違う場所のサーバーを比較してるの? 同じサーバーマシンと同じ経路で比較しないと何を比べてるのかわからなくなりそう。 ブランチ、コミット、マージも気になるね
>気になるね ならば自分で測れ
gitが早いって言いたい奴が測れ
>>975 近年ではFirefoxの方がセキュリティリスクが高いと言われてるのに、なにこの馬鹿主張
Firefox 1.x なんかが未だに数%存在してるわけだが、どうやって始末を付けるつもりなんだコイツらは?
初心者のPCにシッタカ君が無理やりインストールした古いFirefoxがマルウェア感染経路のかなり上位に位置してるってのは有名な話
スレタイ読めないカス市ね
さっさと次スレ立てろカス市ね
よく分からんが弾かれた、
ので
>>992 に任せるということでOK?
バージョン管理システムの比較は総合スレで
>>989-990 どこからFirefoxが出てきたかわからんし、発言をしているのは一人だが。誰とは書かないが。
本当の電波さん達を相手しないほうがいいかと
999 :
デフォルトの名無しさん :2010/10/10(日) 21:28:24
>>998 ワロタ
You are running Internet Explorer.
あなたは現在 Internet Explorer を使用しています。
For better web experience, please consider switching to Firefox.
よりよいウェブ体験のために、Firefox への切り替えを検討してください。
安全で快適なブラウザ Firefox 日本語版の無料ダウンロードは、ここをクリック。
ストップ IE キャンペーンの詳細については、Stop Using Internet Explorer! をご覧になってください(英文)。
http://www.shlomifish.org/no-ie/
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。