アカウント名:
パスワード:
反応が薄いですねえ。
Disるわけじゃなく、純粋に質問したいのですが、GitがSubversionより良いところってどんなものなのでしょう。 私は小規模なプロジェクトにしか関わっていないせいか、類似ソフトにしか見えないのです。
私は逆にGitのよいところが知りたいです。
非常に小規模なプロジェクトなため、分散管理にメリットは感じられません。 対象OSが、Windows なため、環境を整えるのも結構手間取りました。 日本語の扱いも多少難がありますし。
対象OSが、Linux だったり、大人数が係わるプロジェクトだとGitの方がいいのかな、と思いましたが。 今のところ、TortoiseSVN + SVK に落ち着いています。
とりあえず家マシンはバージョンアップしました。 会社のは夏休み後に(忘れないようにしないと)
#何でLinus は subversion を、あんなに攻撃するんでしょうか?
> + SVK
SVKのリポジトリを自分のPCローカルじゃなく複数のPC(のユーザ)から共同で使えるようにする方法って、あったっけ?あるなら是非ご伝授を。
#SVKリポジトリをSVN鯖に食わせちゃえば動くっちゃー動くんだが、なんか怖い。
なんでそんなことしたいかというと、上流(ぶっちゃけ仕事だ)がSVNリポジトリ握ってて、そいつらがアホ運用をするもんだから、(たとえば「レビューが終わるまでCOMMITするな」とか。なんのためのVer管理なのか理解してないたぐい※)こっちはこっちの自衛のために内輪のみんなが使うリポジトリを建てつつ、それを上流と自動連動できるようにSVKにしておきたい、と。
Ver管理を行っているのは、不具合、その他が起こった場合にどこでバグが発生したのかのチェックとそのVerへ戻せる環境を作る為のはずです。
別にレビューなしでコミットしても、過去バージョンには戻せますよね。レビュー云々は運用次第だからどうでもいいけど、作業のスナップショットとしてコミットするのは問題ないと思います。まあ、作業終わりでコミットされるの嫌なら分散SCM使って、ローカルとマスターリポジトリで運用してはどうでしょう。
#やたらリビジョン番号あがるのをいやがったり、ログが汚れるのをいやがる人がいるけど、そんなん気にしても仕方ないよなあ
そういう subversion の"使いにくさ"を踏まえて、 git が開発された訳ですが。
そもそも git 使ったことあります?
この話題の元ACです。
上流は何を考えているのやら、と思います。たぶん、「管理」という概念を何か勘違いしている人間が上流で「管理」権限を握ってる、といったことなのでしょう。
>何のVer管理のメリットがあるのか聞きたいですね>そのVerへ戻せる環境を作る為のはずです。
ほかのひとも言っていますが、どの段階をCommitしようが「戻せる」わけですし、交通整理をしたいならCommitするかどうかじゃなく、Truncや(運用で決めたしかるべき)BranchにいつCommitするか、で整理するほうが上策です。
>小規模なプロジェクトならしょうがない
いえ。「大規模」なプロジェクト(をおこな
>問題発生した時どこまでどうやって戻せばいいの?>ある修正を行うことに対するリビジョンはできる限り少なくするのが当たり前と思ってます。
いや、だから、それは「バージョン」(リビジョン)管理じゃなく「タグ」管理によって実現してください。戻す単位はタグで管理してください。修正の「単位」もタグで単位付けをしてください。
そして両方を同じツールで地続きに管理するほうが、二重管理にならなくて扱い易いってことです。
>プログラマの生産性とか(中略)では無くて
(バージョン管理が)生産性に寄与しないんだったら、邪魔とまでいわないけど控えめに言っても「無駄」なツールだ、と
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
アレゲはアレゲ以上のなにものでもなさげ -- アレゲ研究家
Subversionは人気がないのですかね? (スコア:1)
反応が薄いですねえ。
Disるわけじゃなく、純粋に質問したいのですが、GitがSubversionより良いところってどんなものなのでしょう。
私は小規模なプロジェクトにしか関わっていないせいか、類似ソフトにしか見えないのです。
Re: (スコア:0)
私は逆にGitのよいところが知りたいです。
非常に小規模なプロジェクトなため、分散管理にメリットは感じられません。
対象OSが、Windows なため、環境を整えるのも結構手間取りました。
日本語の扱いも多少難がありますし。
対象OSが、Linux だったり、大人数が係わるプロジェクトだとGitの方がいいのかな、と思いましたが。
今のところ、TortoiseSVN + SVK に落ち着いています。
とりあえず家マシンはバージョンアップしました。
会社のは夏休み後に(忘れないようにしないと)
#何でLinus は subversion を、あんなに攻撃するんでしょうか?
Re: (スコア:0)
> + SVK
SVKのリポジトリを自分のPCローカルじゃなく
複数のPC(のユーザ)から共同で使えるようにする方法って、
あったっけ?あるなら是非ご伝授を。
#SVKリポジトリをSVN鯖に食わせちゃえば動くっちゃー動くんだが、なんか怖い。
なんでそんなことしたいかというと、
上流(ぶっちゃけ仕事だ)がSVNリポジトリ握ってて、
そいつらがアホ運用をするもんだから、
(たとえば「レビューが終わるまでCOMMITするな」とか。なんのためのVer管理なのか理解してないたぐい※)
こっちはこっちの自衛のために内輪のみんなが使うリポジトリを建てつつ、
それを上流と自動連動できるようにSVKにしておきたい、と。
Re:Subversionは人気がないのですかね? (スコア:0)
Subversionの管理者やってますが、逆にレビューが終わってないのをCommitするのに
何のVer管理のメリットがあるのか聞きたいですね
Ver管理を行っているのは、不具合、その他が起こった場合にどこでバグが発生したのかのチェックと
そのVerへ戻せる環境を作る為のはずです。
まぁ、小規模なプロジェクトならしょうがないですが・・
Ver管理 = バックアップと思ってる人が多すぎる。
1日の作業が終わったらCommitとかどうやって履歴を管理しろと言うのか
バックアップに使うのなら個人の環境で取るかブランチ作って勝手にやってくれ
Re:Subversionは人気がないのですかね? (スコア:1)
別にレビューなしでコミットしても、過去バージョンには戻せますよね。
レビュー云々は運用次第だからどうでもいいけど、作業のスナップショットとしてコミットするのは問題ないと思います。
まあ、作業終わりでコミットされるの嫌なら分散SCM使って、ローカルとマスターリポジトリで運用してはどうでしょう。
#やたらリビジョン番号あがるのをいやがったり、ログが汚れるのをいやがる人がいるけど、そんなん気にしても仕方ないよなあ
Re: (スコア:0)
レビューは都度tagを打って行えばいい。
>まぁ、小規模なプロジェクトならしょうがないですが・・
いちいちレビューしてからcommitするなんていう、ちんたらした体制こそ小規模向きですよ。
それとも、そこまで慎重にやらないとひどいコードが溢れるような環境なんでしょうか?
だったらバージョン管理より、まず優秀な人材を揃えるなり教育をする方が先では?
まあ釣りだと思うけど。本気でレビューしてからcommitなんてやっているならどこか教えてくれ。
絶対に関わらないようにするから。
Re: (スコア:0)
UnitTestレベルのテストを通してからCommitするとの意味で反応しました。
単体テストも何もしてないものを後で戻せるからといって
バカみたいにリビジョン上げる人は多いですが、trunkはある程度綺麗に保つっていうのは
ソース管理するに当たって必要な条件だと思ってます。
前にも書きましたが、修正単位でCommitを意識しないならbranche作ってやって欲しいです。
VSSじゃなくSubversion使ってるなら尚更ですね。
Re:Subversionは人気がないのですかね? (スコア:2)
そういう subversion の"使いにくさ"を踏まえて、 git が開発された訳ですが。
そもそも git 使ったことあります?
Re: (スコア:0)
Windows環境での開発を行う場合、個人では使えますが
日本語使えないなど制限多すぎて、後1年ぐらいは待ちですね。
後、Trac、Redmineなどのバグ追跡系との連携もまだまだ未成熟なので。
ただ、外注時の分散開発などでのソース同期はかなり使えると思います
今時点でWindows環境ではMercurialですかねぇ
Re: (スコア:0)
この話題の元ACです。
上流は何を考えているのやら、と思います。
たぶん、
「管理」という概念を何か勘違いしている人間が上流で「管理」権限を握ってる、
といったことなのでしょう。
>何のVer管理のメリットがあるのか聞きたいですね
>そのVerへ戻せる環境を作る為のはずです。
ほかのひとも言っていますが、どの段階をCommitしようが「戻せる」わけですし、
交通整理をしたいならCommitするかどうかじゃなく、
Truncや(運用で決めたしかるべき)BranchにいつCommitするか、で整理するほうが上策です。
>小規模なプロジェクトならしょうがない
いえ。「大規模」なプロジェクト(をおこな
Re: (スコア:0)
> Commitは面倒だ、Commit頻度をいかに少なくするかが生産性の鍵である、
> と思い込んでる人のほうが多かったりします。
> 困ったもんだ。
こういう結構やってる人のコメントを見ると
やはりバージョン管理行う目的に非常に差異を感じます。
> Commitは面倒だ、Commit頻度をいかに少なくするかが生産性の鍵である、
たぶん、管理者はこんな事考えてなくて、勝手にバンバン増やされたリビジョンで
問題発生した時どこまでどうやって戻せばいいの?
っていうだけだと思います。作った人ならそりゃわかるでしょうが・・
Re: (スコア:0)
>問題発生した時どこまでどうやって戻せばいいの?
>ある修正を行うことに対するリビジョンはできる限り少なくするのが当たり前と思ってます。
いや、だから、
それは「バージョン」(リビジョン)管理じゃなく「タグ」管理によって実現してください。
戻す単位はタグで管理してください。
修正の「単位」もタグで単位付けをしてください。
そして両方を同じツールで地続きに管理するほうが、二重管理にならなくて扱い易いってことです。
>プログラマの生産性とか(中略)では無くて
(バージョン管理が)生産性に寄与しないんだったら、
邪魔とまでいわないけど控えめに言っても「無駄」なツールだ、と
Re: (スコア:0)
Re: (スコア:0)
ただ、Git、Mercurialなどの分散管理システムと違って
説明されている「タグ」ってSVNで言うTagの事ですよね?
タグ付けって単なるリビジョンのその時点でのスナップショットでしかないので
修正単位でタグ付けするためには、Commit順序を厳密に管理してないと
好ましいもののみ集まった「タグ」にはならないですよね?
普段、ブランチでリビジョン上げておいて集まったリビジョンをTrunkへマージして
タグを作るっていうんならわかりますが、そのリビジョンを集めるのも
好き勝手にリビジョン上げられているとどうやって把握してマージするのでしょう?
チケットに紐づいてるのは全部マージだろって話でしょうが、
管理者にとってはもの凄い負担です。
そういった使い方だと、やはりブランチで勝手にやっててもらって修正が終わったら
まとめてトランクにマージしてね。っていうぐらいしかまともに管理できる方法は思いつかないですね
Re: (スコア:0)
プログラマとして履歴を取りたい物と、プロジェクトとして履歴を取りたい
物が一致してないのが問題だとは思います。
本来であればGitなどの分散管理システム使えばうまくいきそうなのはわかってるのですが
Windows環境、日本語問題など通常の開発現場に持ち込むのはどうにも躊躇しています
こういうソース管理ってかなり大切な部分だと思うのですが
日本の開発現場だとほんとおざなりだと思います。
こういう議論できる場も人もほとんどなくて開発に流される事が多いので
今の議論も結構楽しかったりします
Re: (スコア:0)
リポジトリの粒度を考えるのが面倒というなら、確かに分散系のが向いてる。
ただ根本問題として、修正単位一つ一つに対して、戻せるようにしたいという要求がちょっとズレているというか、マイクロマネージメントの傾向が高すぎるんじゃないかな。
開発中盤でそんな事はしないだろうから、おそらくリリース直前の状況と思うけど、それはバージョン管理ではなくリリースエンジニアリング技術の問題になるのだと思うよ。
つまりリポジトリ管理者であるあなたの権限の外側に問題がある = 全体のマネージメントがおかしいので、プロマネにクレームを挙げるべきかと。