You may use software downloaded from Perforce for any purpose you want and for as long as you like, provided no modifications are made to the software. The Perforce Server supports only two users and five client workspaces unless used with a Perforce License .
一方企業では (スコア:1, 興味深い)
1社にOS/言語/開発環境/バージョン管理を全て委ねるのは、非常に問題あるとも思われるが、責任は会社持ちという従業員的立場からすれば楽チンきわまりない。
オープンソース界隈の「ソフト毎に操作が違う」なんて面倒な事が無くて。
Re:一方企業では (スコア:3, 参考になる)
だけだら、管理した気分になって、管理してますというポーズだけ作れて、
自分達の書いたコードの品質維持に責任持たなくていいなら、すごくお勧め。
実際なにも管理してないから、品質維持コストゼロ(維持される品質もゼロ)だし。
wild wild computing
Re:一方企業では (スコア:0)
管理システムは単体で使う場合や、他の管理システムと有機的に併用する場合など、
様々な使い方があって、他の管理システムと組み合わせて使う場合には
VSSの様なシンプルなものは逆に使い勝手は良いです。
ソースコード管理システムが下手に機能拡大したものだと逆に使い難くなって
用途には合いにくい場合が起き易くなりますが、シンプルイズベストというのを
それなりに実感する場面は多いですね。まあ最終的には用途が全てを決めますが。
#道具なんぞ使いこなしてなんぼ。
Re:一方企業では (スコア:0)
必要最小限の機能じゃなく、機能不足なんだと。
CVSやSVNがいいとは言わない。
あれはあれで機能に色々混乱が有るから。
が、差し引きで考えれば少なくともVSSよりはマシだ。
Re:一方企業では (スコア:0)
数千人規模のプロジェクトとかだと困ったりするの?
Re:一方企業では (スコア:0)
リポジトリ壊れると復旧手段がないから。
analyzeかけてみ、以前のコードが取り出せなくなってたりする。
おかげで普段からanalyzeかけてメンテナンスで結構大変。
本当に管理出来てますか。
以前のタグでソースをひっぱたら(リポジトリが壊れているらしく)正常にとれないなんてことになってませんか。
# Windowsファイル共有でリポジトリを共有して操作するのがそもそも駄目なんだろうなぁと思う。
ローカルPCで個人使用の範囲までではなかろうかと思います。
MS自身あれの駄目具合を認識していてのTeamSystemなんでなかろうかと。
Re:一方企業では (スコア:2, 参考になる)
SVNはむしろ「そういう運用でも全然平気だぜ」が最近は売りのひとつらしい。
かくいう私の職場も、(リポジトリURLの) svn:が旨く動いてくれなかったので file:で運用を開始したが、数年間ぜんぜん問題なく稼動している。
(少なくともWindowsの)共有フォルダにリポジトリを持ちたければ、
file://共有ホスト名/共有フォルダ名/以下お好きに/…
って感じね。
(スラッシュの数は正にこの通りだから間違えないように。
特にfile:の直後はスラッシュ2つだ。
これがローカルフォルダだと file:///c:/xxx/yyy というようにスラッシュ3つになる。
個人的にはリモートのほうが数が少ないのは直感に反するんだが…まあそれはそれ。)
(すさまじくオフトピだが、MSYSのbashで共有フォルダにcdする(できるんだなこれが。cmd.exeではできないのに)ときは、同じく //ホスト/共有フォルダ/xxx…)
今(?)のリポジトリの内部形式であるfsfs型とかいう奴は、ようするに自力でジャーナルファイルシステムもどきをやってるようなものだ。
リビジョン番号そのまんまがファイル名になってるファイルがリポジトリフォルダの中にはそれぞれ有り、そのファイルが「その回のコミットの情報」すべてを持っている。そして過去リビジョンのファイルは二度と更新されない。いちど作られたらずっとimmutableだ。こんなやりかただから滅多に壊れないぞと。
欠点としては過去バージョンを一通り舐めないと答えが出せない問い(svn logとか色々)に対する答えが帰ってくるのが遅いって点。だがそのかわり確実性は有る。
(Win9xで公開したフォルダだって平気だぜとか豪語してるようだ。もっとも9xではOSそのものの確実性のほうがよっぽど不安で全くお勧めできないが。)
SVNは以前「Apache入れないと運用できないんだぜ」とかいうデマのせいで普及が遅れた時機もあったが、今ではこのfile:ベースで紹介してるWebサイトも結構あり、むしろCVSより導入がずっと楽なんじゃないか?と思ってもらえる(実際そうだし)機会が多くなってる。
なお、こんなやり方なので、サーバ「プログラム/プロセス」が不要だってのは味噌だ。共有フォルダさえ開けてあればそれで運用できるわけ。何かをインストールする必要は無いんだ。
しかもトータスSVNとかでは、それ自体の機能で(adminコマンドとか使わず)リポジトリのクリエイトをやらせてくれる。
こうなってくると導入はすごく楽だ。以前あった書籍の謳い文句じゃないが、普通の人が普通使いできるバックアップツール(?)と呼ぶに値するモノにかなり近づいていると思う。(あとひといき)
たしかにLinusが求める機能/性能は無いのかも知れない。他にも色々な要望を満たせてないかも知れない。が、その範囲内では、SVNは結構健闘してると思う。機能も性能も。そして「使いやすさ」も。
少なくとも「Better CVS」という任はそれなりに果たしていると思う。
あと、ここで読み書きしてるかたがたには釈迦説法だろうが、CVSの概念を綺麗に焼きなおした功績は大きい。混乱しきったCVSの内部モデルを、徹底的にリファイン(リファクタリング??)し、「すべてはコピー」という美しいモデルにまとめたことは、賞賛に値するし、そのぶん今後の拡張性(つまり皆さんが指摘してる機能不足の解消)の可能性も高いと思われる。
Re:一方企業では (スコア:0)
うちの使い方では壊れたことが無いのでその手の心配はしたことがないですね。
数年以上運用してる範囲ではその手の苦情が来たことは無いですし。
もっとも、壊れたところで前日までの状態にならすぐにバックアップから
戻せますからそんなに支障ありません。規模としては数十人程度ですから
大きくありませんけど。
とはいえ、プロジェクト単位で細かく区切って開発を終えたものはフリーズして
データが大きく・長期化しない様にしてますが。ま、過去のプロジェクトの履歴を
見る頻度
ClearCase (スコア:3, 興味深い)
ClearCaseはITILでいう「ソフトウェア構成管理」を実装し、「変更管理」製品であるRational ClearQuestと連携できます。
1.OSの認証情報を使うので、PAM/Unix、ActiveDirectory/Windows環境で、認証に煩わされることなく、大規模展開可能(小規模だとActiveDirectory環境の構築が手間)。
2.プロセスを複数サーバに分散可能(水平拡張の設計思想)。
3.地理的に離れている場合は、MultiSiteというエディションで、レプリカ機能を提供。
4.APIとコマンドラインが充実しているのでシェル化が楽。
5.トリガという機能でコマンド前後にスクリプトを仕込める。
6.Eclipse Plug-inが存在するので、EclipseベースのIDEと連携可能。
7.Antタスクにも要素が用意されているので、サーバビルドをするなら、ビルド/リリースの自動化も可能。同一セグメント上にあって、シェルを書けば、だけど。
一個も出てないのがかわいそうなので、メリットを紹介しました(裏返すとデメリットでもある)。
IBM系の開発プロジェクトだと、結構使われているんではなかろうか。
Re:ClearCase (スコア:2, 興味深い)
機能的にもSubversionと対して変わらない(EclipseプラグインはSubversionより劣る)。
自分のところではSubversionとCVSがほとんどです。Eclipseとの相性がいいので。
CCがいいと思ったのはClearQuestとの連携くらいですね。
ボロクソ言ってるけど金の問題さえ何とかすれば使ってもいいと思うんだけどなぁ。
本当に融通が利かなくて困る。
# さすがにAC
Re:ClearCase (スコア:1)
IBMの前のRationalのさらに前のClearCase社が立ち上がった時からのユーザです。
もちろん会社が、ね。
でそのClearcase社が立ち上がった時に、無期限のClearCase/Multisiteライセンスを買ったんで
いまだに保守料金なしで使い続けてますね。なんでもHPなどいくつかの会社でもその無期限
ライセンスを保持してましたよ。スタートアップ時に出資してたという理由で。
当時の日本の代理店さんはうちの窓口になるばかりでバージョンアップしてもお金を取れずに
可哀そうなことをしました。
Re:ClearCase (スコア:0)
それともオープンソースなSCMは使ったこと無いのかな。
Re:一方企業では (スコア:3, おもしろおかしい)
・VSSはMSDNのライセンスで使えるので追加投資がない(Windowsでそれなりの規模の開発やってれば、MSDNに入っていると思います)
・クライアントはGUI、管理もGUI、初めての人でもクライアントインストールしてもらうだけで簡単に使える、しかもインストールも当然GUI
・いちおうCUI操作にも対応しているのでバッチファイルとかに組み込める
・天下のMicrosft社製。何か困ったことがあっても、これもMSDNのライセンス内のサポートで全部解決してくれる。
・致命的な何かが起きてもMicrosoftが悪いといえば「仕方がない」となる。これがOSSだったりしたら、「選定した奴出て来い、何とかしろ!」となる。
先生!何か違います! (スコア:2, すばらしい洞察)
○致命的な何かが起きたら、「お前たちが何とかしろ」となる
#仕様なんて飾りです、偉い人にはそれが分からんのですよ。
Re:一方企業では (スコア:2, 興味深い)
特にチェックアウトするとロックがかかる仕様には殺意を覚えます
Microsoftの中の人はホントにこれでプロジェクト管理してるのかなぁ
Visual Studio 2005ではなんちゃらスイートとかって大規模開発用のも有ったと思うんですがあれってどうですか?
# 職場じゃ未だVS6なので関係なし
# ってか自分は6.0で止まってるんで最近のを教えて貰いたかったり
脳味噌腐乱中…
Re:一方企業では (スコア:1, 興味深い)
VSSには多重チェックアウトという設定が昔からあります。
スキルの低い技術者にはマージは高度な機能として
既定ではやらなくて済む設定になっているだけです。
上級者はプロジェクトメンバーのスキルを勘案して
設定を変えるので問題ありません。
むしろ私は、CVSに排他チェックアウトがないのか散々さがして
「CVSつかえねー」って思ったクチです。
まわりのメンバーのスキル的に不安だったので。
Re:一方企業では (スコア:0)
# ってか、管理粒度がファイル単位で排他ロックで充分なら、
# rcs使ってみんなで共有ディレクトリつっつけばいいじゃん、古きよき時代のように。
# ローカルに持ってきて更新する手間が無駄。
Re:一方企業では (スコア:0)
当時見つけられなかったんです。ありがとう。
社内のUNIX, Linux使いに聞いても「分からない」だったんで、、
RCSってのは知らなかったです。
少し調べてみたけど運用形態までは分かりませんでした。
VSS等でローカルコピーを作成して編集するのは
チェックインするまで(あきらかに)不具合があるものを他人に公開しないで済むという
重要な理由があると思うんだけど、RCSでスムーズに出来るんですか?
Wikipediaを見る限り、シングルユーザー向けっぽいんですけど、、
Re:一方企業では (スコア:1, 参考になる)
複数人で使いたければ、
リポジトリ(と呼ぶのもなんだが、ようはRCSって名前のディレクトリ)を
おのおの対応するソースが有るフォルダの下に
「シンボリックリンクで」置いておけばいい(乱暴にいえば)。
そういう環境を人数分作ればいい。
そのためだけにRCSを今更使うのはお勧めしないけどね。
というかあれはそれこそシングルユーザで、
「リポジトリなんか作らずに済む気楽さ」を重んじたいときに
はじめてメリットが有る。
あとそれこそSVNは最近はロックもサポートしてるようだ。
デフォだとMIMEタイプごとにロックかマージか決められてる、んだっけかな?
設定いじればロック対象を増やせる…と思う。
関心持ったことないので未確認だが。
いずれにせよバイナリファイルの扱いはCVSよりSVNのほうが数段良いらしいので、
(そしてテキストも負けてなんかいないので)
Linusみたいな状況に置かれないかぎりSVNはお勧め。
Re:一方企業では (スコア:1, 興味深い)
CVSを知っててRCSを知らないとは、時代が変わったものだなぁ(遠い目)
Re:一方企業では (スコア:0)
Re:一方企業では (スコア:1)
というか、逆にロックがかかってくれないと困ります。
Re:一方企業では (スコア:0)
もちろんMS社内では別のシステムを使ってますよ。有名な話だと思うけど。
Re:一方企業では (スコア:2, 興味深い)
Visual Studio 2008 の開発プロセスの方では VSS ではなく Visual Studio Team Foundation Server に移っているようです。
参考情報は 5000個のバグと戦った、MSが「Visual Studio 2008」RTM出荷 [atmarkit.co.jp] 辺り。
Re:一方企業では (スコア:0)
気楽でいいなあおい。
こちとら、たしかにこっちも「従業員」ではあるんだが、
なんかトラブったときは「とにかく!なんとか!しろ!」とドヤされるばかりだ。解決するまで許してなんてくれねぇ。
つまりトラブルの芽は実質的に自分らに跳ね返ってくる構造。
良好な開発体制を整えるのは、ほかでもなく保身のためですよ。
(もちろんそのほうが開発しやすくもあるが。)
情けは人のためならずって?
というかそれ以前に、
例えばソース(リポジトリごと)飛んだら、どうすんだよ?
飛んだソースは最終的には自分らで書き直させられないのか?
だったらオメデトウだが、こっちはそうじゃないので、
お仕着せのバックアップ体制より数倍マシなバックアップを
(バックアップはべつに重複してても減るもんじゃないから)
自前でかけてるよ。
Perforce (スコア:0)
個人では購入できそうにないし、身近に使用している組織もないので、見たことは無いですけど。
Re:Perforce (スコア:0)
Perforceは2ユーザ/5ワークスペースまでなら無料で好きに使えますよ。ダウンロードするだけ。perforce.com のサイトより:
あとオープンソースプロジェクトに使う場合は申請すれば無料のライセンスが得られたはず。
個人的には、少人数でちょこちょこやっている小規模なプロジェクトでは突出したメリットは無いかなあという感じですが。