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


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

バージョン管理システムについて語るスレ2



1 名前:デフォルトの名無しさん [2008/07/08(火) 21:38:48 ]
バージョン管理システムについて語りましょう。

関連スレ
CVS 1.3 [UNIX板]
pc11.2ch.net/test/read.cgi/unix/1093611448/
CVS導入スレ〜 Rev.3 [プログラム板]
pc11.2ch.net/test/read.cgi/tech/1113141518/
Subversion r9 [プログラム板]
pc11.2ch.net/test/read.cgi/tech/1202086238/
subversion バージョン管理【サブバージョン】 [Linux板]
pc11.2ch.net/test/read.cgi/linux/1154701996/
git スレッド [Linux板]
pc11.2ch.net/test/read.cgi/linux/1197798039/

前スレ
バージョン管理システムについて語るスレ
pc11.2ch.net/test/read.cgi/tech/1193332500/

747 名前:デフォルトの名無しさん mailto:sage [2008/11/17(月) 19:33:08 ]
>>746
en.wikipedia.org/wiki/Comparison_of_revision_control_software
Bazaar: HTTP, SFTP, FTP, custom, custom over ssh, email bundles, WebDAV (with plugin)
Git: custom, custom over ssh, rsync, HTTP, email, bundles
Mercurial: HTTP, custom over ssh, email bundles (with standard plugin)


748 名前:デフォルトの名無しさん mailto:sage [2008/11/17(月) 20:43:18 ]
>>747
FTP, SFTPがあることにびっくりだよBazaar!

749 名前:デフォルトの名無しさん mailto:sage [2008/11/17(月) 22:20:07 ]
主観は入りまくりだけど、そこがよい
>>741

750 名前:デフォルトの名無しさん mailto:sage [2008/11/17(月) 22:39:12 ]
>>735
表面が化けてちゃ、おいしさも半減なわけですが。
いちいちvimでなんかみたくないし、Tortoiseで化けるのは
設定でなんとかなるの?

751 名前:デフォルトの名無しさん mailto:sage [2008/11/17(月) 23:11:22 ]
>>750 
Tortoiseの方は.bzr/.branch/branch.confで
「encoding = エンコーディング」を指定したら
logメニューからの表示は文字化けしなくなった。
diffメニューからの表示は文字化けするようだ。

コマンドラインから起動する場合はbzr qdiff --encoding=ARGで
一回実行すればエンコーディングのオプションはbranch.confに記録される。


752 名前:デフォルトの名無しさん mailto:sage [2008/11/17(月) 23:15:17 ]
>>741
Gitのマージアルゴリズムはhgやbzrよりも劣るんじゃなかったっけ。
最近はそうでもないのかな?


753 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 02:47:52 ]
Mercurialで、不要になったbranchを閉じるって、今のところ実装されてないんだね。
↓一応、対策は提案されてるけど。
www.selenic.com/mercurial/wiki/index.cgi/PruningDeadBranches

開発チーム内に余計なbranchを作る奴が居ても、ずっと放置か。
hg branchしてない、名無しのheadでも同じ事だよね。

今のところは、リポジトリのcloneによる(概念的)branchの方が整理をつけやすくて
安全って事なのかな。

754 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 03:01:03 ]
>>748
そう。さくらのレンタルサーバーとか、FTPやsftpが使えれば、サーバーに
bzrをインストールしなくてもクライアントにだけbzrがあれば使えるのが強み。
これに慣れると、gitとかサーバー側にインストールするの面倒。

755 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 03:06:22 ]
>>750
中身がしっかりしてれば、表面なんてどうにでもなる。
あるひとつの条件で、たまたまsvnが化けずにbzrが化けたからって、
svnの方が良いと考えるのは軽率すぎる。

bzrで化けるときの対策方は>>751が教えてくれたけど、TortoiseBzrで
WinMerge使えるようにはしたいね。今忙しいけど、手の空いたときに
試してみる。



756 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 03:17:06 ]
>>754
sshfs でマウントしてしまえば git だろうが hg だろうが自由自在だと思うが.

757 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 03:25:17 ]
Windowsでsshfsとかできないじゃん
sshfsする一手間が面倒じゃん
そもそも、安いレンサバだとssh使えないでFTPだけ使えるとかあるじゃん。

758 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 06:49:18 ]
>>755
bzrは日本語全く問題ないんではなかったのか?
問題ありありなわけだが。嘘つき。
単一プラットホームで化けるなんて、中身がどうのこうの以前の問題だろ。
いくら、小手先の対策示しても意味ない。

759 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 11:33:44 ]
>>758
そもそもdiffってのは、二つのファイルのエンコーディングと、ファイル名のエンコーディング、
合計3つのエンコーディングが混ざってるから、「完全」なんてありえないんだよ。

たとえば、コンソールでdiff出力してファイル名が化けるのは、ファイル名をUTF-8で出してるから。
svnで化けないって事は、svnはlocaleやコードページに変換してるんだろうな。
でも、そのdiffで作ったパッチを、メールでLinuxユーザーに送ったらどうなると思う?

「問題ない」といってるのは、「ソ連」みたいな0x5c問題や、環境依存のファイル名エンコーディングを
そのままリポジトリにぶち込んでしまってほかの環境でファイル名が化けたりといった、日本語
ファイル名を扱う上での話をしてるんだよ。

760 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 15:21:47 ]
それってdiff一般の話じゃないよね。
bzrのdiffの実装がそうなってるってこと?

761 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 20:01:04 ]
>>760
コンソール上のdiff一般の話だよ。
diffが化けないのは、(1)コンソール、(2)ファイル名、(3)二つの入力ファイルの内容
すべてのエンコーディングが一致したときのみ。
ファイル名に関しては、diffで作ったパッチを送信したりすることを考えるとエンコーディングを
統一するべきで、統一するならUTF-8が妥当。なので、コマンドプロンプトをchcpでUTF-8
モードにするか、 diff | gvim - みたいにテキストエディタで見るしかない。

Linux でも、 diff の出力はリダイレクトでファイルに保存するかパイプで直接エディタで見るのが基本。
Bazaar Plugin の extdiff を使えば、外部の diff プログラムと連携できる。Windowsなら
WinMergeとか使うと吉。

762 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 20:02:56 ]
>>755
せっかくなので外部コマンドとエイリアスの使い方を書いておきます。
当面はコマンドツールとの併用になるでしょうから。

bzr diffでWinMergeを使いたいならオプションとして--using=WinMergeを指定します。
WinMergeの注意事項としてはmlang.dllによるコードページの検出オプションを
有効にしていないと付けないと文字化けします。

オプションの入力を省略したければbazaar.confファイルを
編集してエイリアスを設定します。
設定ファイルの位置はbzr versionで見つかります。

[ALIASES]
diff=diff --using=WinMerge

763 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 20:10:06 ]
ちなみに、GUIのdiffプログラムだとテキストエディタと同じで文字コード指定が
簡単にできたり自動認識したりすると良くて、その点 TortoiseBzr の中の qdiff は
機能不足。(これはBazaarの問題ではないが、周辺環境が揃ってない一例)

俺はソースをはじめテキスト類は全部UTF-8で書いてるから qdiff でも全く文字化け
しない。
Windowsも早く日本語の標準マルチバイトエンコーディングをUTF-8にすれば良いのに、
いつまでcp932なんて使ってるんだろう・・・

764 名前:デフォルトの名無しさん mailto:sage [2008/11/18(火) 23:43:44 ]
cp932なのはwindowsが悪いけど、
今のbzrだと文字コードのせいですんなり使えないね。

765 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 01:05:57 ]
Mercurialのレポジトリをhgwebdir.fcgiで公開してるんだけど,これってすごく重くない?
うちのサーバがボロってのもあるかもしれないけど,大きめのファイルを開くと一気に
ロードアベレージが跳ね上がってしまう.
pdfファイルに至っては選択するといつまでたっても応答が返ってこないでCPU食いつぶしてるし.
これってこういうもんなの?



766 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 01:51:29 ]
>>765
スペック、構成、設定、ロードアベレージは具体的にどのプロセスが、IOとCPUのどちらで
重いのか、hg serve と比べてどれくらい遅いのか。

これくらいまとめてから質問しようぜ。

767 名前:765 mailto:sage [2008/11/19(水) 10:04:11 ]
>>766

単に愚痴るだけのつもりだったんだけど,そのくらいの情報は出しとかないと
毒にも薬にもならんわな.すまん.

サーバ機のスペックは
CPU: Celeron 2.4GHz (詳しいことは忘れた.4年前くらいのセレロン)
メモリ: 256MB
OS: Ubuntu 8.10

このマシン上でlighttpdからhgwebdir.fcgiを呼び出してる.
hgwebdir.fcgiはHGENCODINGをUTF-8に指定したくらいで,
他は特ににいじってない.
各レポジトリはbz2,gz,zipでのダウンロードを許可していて,
pushにはDigest認証が必要にしてある

で,pdfを開くと応答が返ってこないんだけど,このときCPU使用率が
跳ね上がっていることを確認済みで,IOなどは特に異常な数値は示し
ていない.原因になっているプロセスはwebサーバを走らせているユー
ザの権限で動いている
python /usr/share/hg/cgi-bin/hgwebdir.fcgi

他の形式(テキスト形式のファイルや画像)だと,pdfよりサイズが
大きい場合でも一時的にCPU使用率があがるものの,きちんと表示される.

あと,hg serveだと動作が軽快にはなってるみたいなんだけど,
pdfを開こうとすると上で書いたのと同じような症状になって応答が
返ってこなくなる.

768 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 10:12:13 ]
>767
知らんけど、内部でPDFをテキスト化するツールとか、Ghostscriptとかを
呼び出そうとしてトラブってるんじゃないの? Prostscriptの記述がバグって
無限ループしてるとか、展開サイズが大きすぎてメモリ不足になってるとか。

769 名前:デフォルトの名無しさん [2008/11/19(水) 12:10:57 ]
TortoiseHg 0.5での質問があります。

・日本語ログがupdate revisionで化けるので、事実上日本語ログが使えなくない?
・GUIで hg mv する方法はないのでしょうか?
・pushした日本語ファイル名がWindows以外の環境で化ける、というのは本当でしょうか?

770 名前:766 mailto:sage [2008/11/19(水) 12:21:38 ]
>>767
ん、メモリが少なめだから、全体的にロードアベレージが高いのは
リポジトリがキャッシュからすぐに消えちゃってる可能性がある。
pdfに関してはIOが低いならメモリの問題じゃないんだけど、Mercurialは「pdfだけ」
という処理はしてない。変なプラグインは入れてないよね?

ということで、こっからエスパー。
pdfって、ブラウザプラグインで、ブラウザの画面内に表示してない?
その場合、HTTPクライアントはブラウザじゃなくてプラグインになってるから、
それが分割ダウンロードとかしようとして負荷をかけてる可能性がある。

Adobe Readerのブラウザプラグインを無効にして、ブラウザが
「テンポラリファイルに保存→スタンドアロンのAdobe Reader 起動」
するようにしてみて。

あと、hg serveで軽くなるなら、fcgiの設定が良くない(メモリ食い)という可能性がある。
fcgi使ったこと無いんだけど、スレッド数やプロセス数を減らせない?
lighttpd も同時接続数を3くらいに減らしてみて。

771 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 12:31:35 ]
>>769
最後の問題、ファイル名エンコーディングをロケールから判別して、リポジトリに
入れる前にUnicodeへデコードするパッチを日本人が本家MLに送ったんだけど、
「ファイル名はファイルの内容と同じでバイナリ弄らない」とか言われてrejectされた。
なので、今は win32mbcs という拡張で対応しないといけない。一人でも対応してない
ヤツがpushしたら、そのリポジトリはcp932ファイル名で汚される。

ただし、これはコンソールのエンコーディングがUTF-8じゃない場合の話で、
TortoiseHgだと最初からUnicodeでファイル名を使ってるかもしれない。
俺は TortoiseHg 使ってないんだけど、コンソールとTortoiseで日本語ファイル名を
やり取りしてみたら?

772 名前:769 [2008/11/19(水) 12:36:20 ]
> ・pushした日本語ファイル名がWindows以外の環境で化ける、というのは本当でしょうか?

そもそも、Mercurialでは日本語ファイル名がコミットできないようです。

TortoiseHgでは、コミットウインドウでファイルを追加してもcommitボタンが押せず、
全選択チェックボックスを押すとcommitボタンが押せるのですが、
正常コミット時のように閉じてくれず、hg stで確認しても変化なしでした。

コマンドラインのhgでは、

 > hg ci -A -m "initial commit from command line"
 adding ・が怖い、・の・フトSJIS.txt
 removing ・が怖い、・の・フトSJIS.txt
 ・が怖い、・の・フトSJIS.txt not tracked!
 ・が怖い、・の・フトSJIS.txt does not exist!
 nothing changed
というように言われ、hg stで確認しましても変化ありません。

実はWindowsでのhgは日本語ファイル名に対応してなかったのですね・・・。
TortoiseHg 0.5と付属のコマンドラインのhgで確認しました。

ファイル名:表が怖い、噂のソフトSJIS.txt
中身は適当な感動コピペをSJISで保存です。

773 名前:769 mailto:sage [2008/11/19(水) 12:40:13 ]
>>771
ああ、わかりました。
標準でSubversionのようにUnicodeへのデコードなどはやってないわけですか。
で、ロケール(日本語WindowsだとSJIS?)で入ってしまう、と
(そもそも入りすらしなかったけどw)

ファイル名とかログのエンコード周りは基本的なことだと思うのになあ。
OSSで使うならなお更なのに・・・

774 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 12:46:20 ]
>>773
入りすらしないのは、0x5c問題だと思うよ。
0x5cが入ってないファイル名だと、コミットはできるけど、そのままリポジトリに入っちゃう。
(から、win32mbcs が必要。 mercurial.ini の [extensions] で win32mbcs= という一行を追加)

そもそも「ファイル名はバイト列として変更せずに扱う」というポリシーが間違ってると思うけど、
外国人には伝えにくいからねぇ。gitは最初からWindowsなんて気にしてないし。

Python3.0になると、文字列=unicodeになるから、「ファイル名のバイト列」自体消滅する。
MercurialもPython3.0対応する時点で嫌でもポリシーを修正するはず。
その前にBazaarに乗り換えたほうが幸せな気もする。

775 名前:765 mailto:sage [2008/11/19(水) 13:03:46 ]
>>768
Mercurialのレポジトリブラウザってpdfをテキスト化して表示するの?
コード眺めた感じそれっぽい部分は見当たらなかったけど.

>>770

> pdfに関してはIOが低いならメモリの問題じゃないんだけど、Mercurialは「pdfだけ」
> という処理はしてない。変なプラグインは入れてないよね?

そうなんだよね.なんでpdfに限ってこんなことになるのかがよくわかんない.
プラグインもなにも入れてないです.

> Adobe Readerのブラウザプラグインを無効にして、ブラウザが
> 「テンポラリファイルに保存→スタンドアロンのAdobe Reader 起動」
> するようにしてみて。

やってみたけど,症状はかわらずです.
というか,テキスト表示できないタイプのファイルってチェンジセットから
選択すると,最初に"これはバイナリファイルですよ"みたいなページに
遷移するよね?そのページのrawの項目を選択するとダウンロードが始まる,
みたいな.
pdfの場合,チェンジセットから選択したあとの最初の遷移の段階でとまって
しまうので,そのあたりは関係ないような気もする.

> あと、hg serveで軽くなるなら、fcgiの設定が良くない(メモリ食い)という可能性がある。
> fcgi使ったこと無いんだけど、スレッド数やプロセス数を減らせない?
> lighttpd も同時接続数を3くらいに減らしてみて。

いちおうlighttpd側でmaxprocsを3にはしてあるんですけど,だめですね.



776 名前:769 mailto:sage [2008/11/19(水) 13:05:29 ]
>>774
> (から、win32mbcs が必要。 mercurial.ini の [extensions] で win32mbcs= という一行を追加)
いけますタ!
hg と TortoiseHgの両方でいけることを確認しました。
どうやらすごいFAQみたいですね。

それにしても、TortoiseHgがコミットログやらファイル名やら化けまくりで実用に耐えられないなあ・・・
プログラマはそんなでもないけど、デザイナとか複数人で使う時に、
英語ファイル名、英語ログ強制はまず使ってもらえないわ w

バージョン管理ソフトとかこういう環境的な物の導入には、
手回しが一番重要だということはわかっているつもりだけど、さすがに致命的すぎる。

> その前にBazaarに乗り換えたほうが幸せな気もする。
そちらを検討してみます。

いろいろ教えてくれてありがとう。

777 名前:769 mailto:sage [2008/11/19(水) 13:06:19 ]
> バージョン管理ソフトとかこういう環境的な物の導入には、
> 手回しが一番重要だということはわかっているつもりだけど、さすがに致命的すぎる。

バージョン管理ソフトとかこういう環境的な物の導入には、
ソフトウェアの使い勝手よりも、むしろ
手回しが一番重要だということはわかっているつもりだけど、さすがに致命的すぎる。

778 名前:766 mailto:sage [2008/11/19(水) 14:24:59 ]
>>775
あらら、エスパー失敗か。

じゃぁ、その pdf ファイルの先頭 4096 バイト内に 0 というバイトが存在しないと予測。
Mercurialは先頭4096バイトの中に 0 が有るかどうかでバイナリとテキストを判別しているから、
テキストだと思って頑張って表示しようとしている可能性がある。

779 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 14:33:54 ]
>>774
> (から、win32mbcs が必要。 mercurial.ini の [extensions] で win32mbcs= という一行を追加)

環境変数 HGENCODING に cp932 を設定するのとでは何か違いある?

780 名前:765 mailto:sage [2008/11/19(水) 17:35:50 ]
>>778

それであたりっぽい.util.binaryが問題の部分だね.
開発ブランチだとファイル全体で0というバイトの有無を判定してるので,
そっちを使ってみることにするよ.

今サーバが落ちてるので,結果がわかり次第また書き込むわ.

781 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 17:57:13 ]
Mercurialは、どんなにTortoiseの完成度が高くなっても
デザイナーには使えない。概念的な部分の複雑度が高すぎる、
ってのが俺の印象だな。
プログラマーさえ、チームの2割もまともに理解できる奴いないと思う。

782 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 19:14:28 ]
PDFってテキストファイルの中に一部バイナリ埋まってるような構造だからなぁ

783 名前:765 mailto:sage [2008/11/19(水) 20:44:14 ]
765です。>>766さんの指摘で問題解決したので報告します。

問題の原因はファイルがバイナリかテキストかを判定するutil.binaryが、ファイルの先頭4096バイ
ト中に0というバイトがあるかどうかをチェックしていたことでした。

なので、この問題はutil.binaryを書き換えることで解決可能です。最初は開発版を使おうかと思って
いたけど、書き換えのみでとりあえず解決できたのでそうしました。ちなみに、バージョン1.0.1
のものを書き換えました。

書き換え自体は簡単なのでここには書かないけど、わからなければ開発版のコードを見れば大丈夫。

以上報告でした。付き合ってくれた方々ありがとう。

784 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 21:04:22 ]
git format-patch でできたパッチを適用するのは git am しかないんでしょうか。
メールボックスとかシランので、単に git format-patch でできたパッチを適用したいだけなんですけど。

785 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 21:17:51 ]
>>784
git am 0001-patch-name.patch
でいけました。メールボックスじゃなくてもいけますね。すんません。



786 名前:デフォルトの名無しさん mailto:sage [2008/11/19(水) 21:51:03 ]
hgのwin32mbcs拡張は前見たときは単に0x5c問題だけ回避してるように見えたんだけど
リポジトリに記録されるエンコーディングをユニコードにしてるって本当?

787 名前:デフォルトの名無しさん mailto:sage [2008/11/20(木) 01:09:34 ]
>781
基本的に理解力の低い人は、理解できない部分は無視してくれるので(例外は居るが)
まずはバックアップ支援ツールとして広め、ちょっとずつ高度化してくのが吉かと。

788 名前:デフォルトの名無しさん mailto:sage [2008/11/20(木) 14:48:10 ]
>概念的な部分の複雑度が高すぎる

ってのを読んだ限りだと、こいつは自分で使ったことが無いんだろうな

789 名前:デフォルトの名無しさん mailto:sage [2008/11/20(木) 19:27:17 ]
>788
いや、使ってみた感想だよ。俺が主に使ったのはLinux版のコマンドラインでだが。
他のメンバーは、より簡単なSubversion + TortoiseSVNでさえ、何度も繰り返し教えて
やっと使えるようになった状態だし、デザイナーが触るファイルにはロック機構が要ると思う。

プログラマでさえ、衝突時のマージがうまく出来ない奴も居るし、別branchの変更点を
trunkに取り込む為のマージ操作が出来る奴も限られてる。

で、この現状を見た時、より難解なMercurialを無事に導入出来るとは思えなかった。

790 名前:デフォルトの名無しさん mailto:sage [2008/11/20(木) 19:34:37 ]
svnの操作がどうこうよりもSCMについての根本的な理解が欠けてるだけなのでわ

791 名前:766 mailto:sage [2008/11/20(木) 21:03:38 ]
>>789
Subversion から

792 名前:デフォルトの名無しさん mailto:sage [2008/11/20(木) 23:18:43 ]
>789
だからまずはバックアップツールとして使って貰えと。
いきなりコンフリクトの解決方法云々は、性急過ぎる。
SCMの歴史を追うように、RCS的な使い方から順に、
少しづつ教えていった方が理解は早いぞ。

というか、いきなり高度な事を教えると基礎がおろそかに…

793 名前:デフォルトの名無しさん mailto:sage [2008/11/21(金) 08:40:27 ]
>>789
俺もチーム内で広めようと思っているんだけど、
こんなの使えねー、っていうのをなるべく避けるいい方法ないかね。

まずは、
バックアップツール=個人で使ってもらう




補完キボン

794 名前:デフォルトの名無しさん mailto:sage [2008/11/21(金) 11:08:45 ]
バックアップツール=個人で使ってもらう

毎日終業後に、SCMボランティアとして >793 が各メンバーのワーキングディレクトリを
チェックして回り、trunkとマージしてあげる

「>793 っていい人だよね」

795 名前:デフォルトの名無しさん mailto:sage [2008/11/21(金) 11:30:55 ]
1年くらい前にSubversionを使わせるようになったけど
使わせるにあたって最近は分散型が流行ってて
こんな事が出来るようになると言っておいた

慣れてくると、こんな事が出来るようになると便利なのにって
思うようになるから、予めそう言う知識の断片だけを
頭に入れて貰ってから使わせてる

で、最近は分散型にも徐々に興味を持ってくれるようになった


問題は俺がSVKしか使えないことなんだけど



796 名前:デフォルトの名無しさん mailto:sage [2008/11/21(金) 15:17:05 ]
svnのコマンドを拡張して分散型として使わせてくれたらうれしいんだけどね。
そもそもコンセプトが違うし無理か。

797 名前:デフォルトの名無しさん mailto:sage [2008/11/21(金) 15:45:44 ]
>>796
それが svk
ただし、サイズ的にも速度的にも効率悪い。

798 名前:デフォルトの名無しさん mailto:sage [2008/11/21(金) 15:47:16 ]
あ、あと、Bazaarリポジトリを svn:// プロトコルで見せようというプロジェクトもある。
まともに開発されてるのかは知らないけど。

799 名前:デフォルトの名無しさん mailto:sage [2008/11/21(金) 16:30:50 ]
つ git-svn
google code projectでもgit使える。

Google Open Source Blog: Develop with Git on a Google Code Project
google-opensource.blogspot.com/2008/05/develop-with-git-on-google-code-project.html


800 名前:デフォルトの名無しさん mailto:sage [2008/11/21(金) 16:54:15 ]
gitはコマンド違いすぎるだろjk

801 名前:デフォルトの名無しさん mailto:sage [2008/11/21(金) 21:39:31 ]
>793
(1)バックアップツールとして広める
(2)ある程度慣れてきたら、ブランチを切ったりマージする方法を教える。
 他人の持ってるファイルを修正する必要が出てきた時や、
 複数のバージョンを管理しなきゃならなくなった時を見計らって教えると良いかも。
(3)頃合を見計らって集中管理を始めるか、分散型だったらpush/pull等を教える。

802 名前:デフォルトの名無しさん mailto:sage [2008/11/21(金) 23:47:12 ]
・diffツールとして広める
のほうが良くね?

803 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 02:21:41 ]
俺はファイルサーバ(レポジトリ)に自動でアップロード・ダウンロードを
してくれうソフトとして広めた。
これだと考え方が集中型に固定されてしまう気がしないでもないが……。

804 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 05:36:36 ]
anond.hatelabo.jp/20081120002535
こんな事態を避ける為にもバージョン管理システムを使いましょう

805 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 05:44:27 ]
SubversionのVが大文字・・・



806 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 07:42:04 ]
修正履歴というと ChangeLog のこと?

807 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 08:29:45 ]
>>805
確かに「大恥かくでしょうがww」って書いといて SubVersion はないよな。

>>806
ChangeLog をソースのどこかに入れてるところもあるけど、>>804 のリンク
先が言ってるのは

// int i = 10; // DEL: 2008/11/10: Bug 1234 by ○○
int i = 11; // CHG: 2008/11/10: Bug 1234 by ○○
float f = 1.23; // INS: 2008/11/09: Bug 1230 by △△

みたいな奴だと思う。

808 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 08:48:06 ]
// add 2008.11.22 nanashi-default
hoge.huga();
// add end 2008.11.22 nanashi-default

前の会社これだったな。CVS入れていても。


809 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 09:04:03 ]
>>808
うちもそうだった……

つかコーダの人はCVS使えない
(結合試験完のソースを管理者に渡してコミットしてもらう)
辺りが間違いの元だったんじゃないかと……

810 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 09:07:12 ]
>>808
うちもSubversion使ってるのにもかかわらず、そうする奴がいる。
本来のソースが見づらくなるんだよな。

811 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 09:15:18 ]
> (結合試験完のソースを管理者に渡してコミットしてもらう)

刑務所みたいなふいんきを想像した

812 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 13:44:43 ]
>>810
いるいるwww 俺はコーディング規約で明確に禁止した。

813 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 19:40:49 ]
そういう奴らはDiffの使い方がわかってないんだよ。
TortoiseSVNやRapid入れて過去ログとの比較を教えてやったら二度としないと思うけどな。

814 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 19:51:07 ]
コミット時にフックを掛けて弾くのも効果ある

815 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 20:27:51 ]
>813
diffの使い方が分かってないと言うよりは、blame/annotateの使い方が分かってないんだろ。



816 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 20:36:06 ]
blameはよくわからん

817 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 20:41:17 ]
TortoiseSVNなら、blameの結果が専用ビューワーで超見やすい。

818 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 22:07:02 ]
ところで、

いい加減TortoiseSVNのアップデートは自動でできるようにならんかね?
アップデートのたびにホームページ行ってダウンロードして上書きインストールしてから再起動・・・って
いちいち面倒だっつうに。

819 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 22:13:53 ]
アップデートのたびにホームページ行ってダウンロードして上書きインストールしてから再起動するプログラムを作る

820 名前:デフォルトの名無しさん mailto:sage [2008/11/22(土) 22:26:38 ]
それこそsvn updateで行えるべきだ

821 名前:デフォルトの名無しさん mailto:sage [2008/11/23(日) 01:01:08 ]
>>820
もまえ天才

822 名前:デフォルトの名無しさん mailto:sage [2008/11/23(日) 07:39:40 ]
diffはちょっと馬鹿なとこがあって、メソッド1つ追加したら
次のメソッドの説明コメント1行目まで差があることになったりするよな。
確かにそういう解釈にならんことも無いんだが、
あれ、どうにかならんかなあ。

}
//------------
+//func2
+//------------
+void func2 () {
+ ...
+}
+
+//------------
//func3

823 名前:デフォルトの名無しさん mailto:sage [2008/11/23(日) 07:57:15 ]
異なる行を取る仕様上、そういう動作にならざるを得ないのでは
どうしても気になるならコメント一行目が違うように記述するとか…?

// func2 --------
// 説明
// -------------

// func3 --------
うーん…

824 名前:デフォルトの名無しさん mailto:sage [2008/11/23(日) 09:33:02 ]
diff はコメントとかを意識してるわけじゃないからなあ。
言語仕様を意識した diff を作るか、>>822 のバカな認識を
変えるしかないと思う。

825 名前:デフォルトの名無しさん mailto:sage [2008/11/23(日) 09:37:17 ]
>>824
言ってることはそれなりに正しいのに、たったの三文字で台無しだ。



826 名前:デフォルトの名無しさん mailto:sage [2008/11/23(日) 10:24:16 ]
コメントを関数の中で定義すれば?
void func2 () {
//------------
//func2
//------------
...
}


827 名前:デフォルトの名無しさん mailto:sage [2008/11/23(日) 12:19:43 ]
ここでpythonのコーディング規約が優れていることが判るわけですね。

828 名前:デフォルトの名無しさん mailto:sage [2008/11/23(日) 12:59:52 ]
>>825
三文字? もしかして「バカな」に逆切れ?

>>826
ソースの見辛さと diff の見辛さの二択なら、ソースの方を優先すべきだと思うが。

829 名前:デフォルトの名無しさん mailto:sage [2008/11/23(日) 14:29:28 ]
ずらすだけならむずかしくない

830 名前:デフォルトの名無しさん mailto:sage [2008/11/23(日) 22:51:43 ]
git add したファイルを取り消すにはどうしたらいいですか。
#なんかgitのマニュアルはわかりずらい。

831 名前:デフォルトの名無しさん mailto:sage [2008/11/23(日) 22:52:25 ]
>gitのマニュアルはわかりずらい
禿同

832 名前:デフォルトの名無しさん mailto:sage [2008/11/23(日) 23:00:20 ]
ちょっとした煽りに過敏に反応する世代がこのスレに居るとはな

833 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 04:25:13 ]
TortoiseHg使って、公開鍵認証が必要なssh経由でcloneしようとしたら、結構面倒だった。

インスコそのままだとパスワード方式しかダメで、ホームディレクトリのmercurial.iniを
書き換える必要がある。Program Files以下の同名ファイルを見たら、cygwin sshの
設定がコメントアウトされてたんで、それをコピペしたらこれが罠で、秘密鍵のパスフレーズを
入力不可能な標準入力で入力待ちしてしまって、アプリが固まる。

諦めて標準のTortoisePlink.exeを使う事にして、mercurial.iniで「-i 秘密鍵へのパス」
オプションを追加すると、やっとGUIダイアログでパスフレーズを聞いてくれるようになった。
もっともその前に、puttyを落としてきてOpenSSHの秘密鍵をputty形式に変換するという
さらにめんどくさい作業が必要。以上、作業メモ。

834 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 07:07:23 ]
>>832
>ちょっとした煽りに過敏に反応する世代がこのスレに居るとはな
そのまんま832のことじゃないか

835 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 08:33:17 ]
>>833
たぶん、普段から putty と pageant なり、mingw の ssh なりを使っている人には
面倒じゃないんだろうな。

putty の設定で、秘密鍵ファイルの設定がレジストリに書かれていたら、
-i オプションが無くても秘密鍵は自動で選ばれるし、 pageant を使っていると
秘密鍵のパスフレーズ入力も無い。

Bazaar も pageant あると自動で利用してくれるから、 pageant お勧め。



836 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 12:34:14 ]
>>833
前にBitBucketにコミットしたときは、pageant立ち上げておくだけで行けたけど

837 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 19:02:37 ]
一番いいのはどれなの?

838 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 20:17:18 ]
linuxerならgit一択
*NIXerならhgかbzr

839 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 20:28:55 ]
darcs使いとしては,最近のdarcsのガラパゴスぶりに泣けてくる

840 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 21:06:19 ]
でも hackage の都合上選択肢は darcs しかないという

841 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 21:33:06 ]
Linus儲ならgit、Shuttleworth儲ならbzr、それ以外ならhgでおk。

842 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 21:43:48 ]
subversionより、いいのってあるの?

843 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 22:46:29 ]
とりあえず hg の mq は最高ってことで。

844 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 23:02:42 ]
>>843
rebaseで良くね?

845 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 23:14:16 ]
よく分からんけど、Mercurialのrebaseって、gitの機能をパクったの?
mozilla.orgと関係有るっぽい?



846 名前:デフォルトの名無しさん mailto:sage [2008/11/24(月) 23:16:06 ]
rebaseってsvn由来じゃ?

847 名前:デフォルトの名無しさん mailto:sage [2008/11/25(火) 22:40:01 ]
ポリシーに合ってる機能ならどんどんパクるべきだろ。






[ 続きを読む ] / [ 携帯版 ]

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

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