Quantcast
Channel: ウィリアムのいたずらの、まちあるき、たべあるき
Viewing all articles
Browse latest Browse all 7274

みずほ次期シスのSVNとTISのGit

$
0
0
前のエントリ

で、みずほ次期シスが延期になったことを書いた。

みずほ銀、システム統合再延期 動作テスト延長 運用18年以降
http://blog.goo.ne.jp/xmldtp/e/f72555197e9aea3a6775a1cfc83656ae


このみずほ次期シス、2ちゃんねる等では、
この開発の構成管理がSVNを使っていて、
(2ちゃんねるによると)うまくいっていないという話が
いろいろとでている

一方金融系というと、TIS。
TISでは、Gitを使っているという話をJJUGでしている

20160128 jjug Nightセミナー_Git実践入門
http://www.slideshare.net/syobochim/20160128-jjug-nightgit


この差はなにか?という話、書いたっけ?



一応書いておくと、
構成管理は、競合が起きない範囲においては、タイトルに日付だろうが、SVNだろうが、Gitだろうが、
なんでもいい。問題は、競合が起きたとき。


ある文書・プログラムをAさん、Bさんが使用していて、
Aさん、Bさん間に直接コミュニケーション手段がないとき
Aさん・Bさんが朝みた文書に対して修正して、
夕方コミットしようとしたとき、
Bさんはコミットできて、Aさんは(Bさんがコミットしたので)
競合が起こったとする。

そのため、競合を起こしたBさんが修正した最新版に、
Aさんの修正を追加して、
あらたにコミットしようとしたとき、

Bさんの修正は、どういう目的で、なんのためにやっているのか
Aさんにはさっぱりわからないので、
Bさんが修正したら、Aさんは実は修正が要らなかったなんていうことは
わからず直してしまう。直せば、コミットできる。これが正になる。

このように、SVNの場合、集中管理し、その修正間に競合が起こったとしても、
どうしたらいいのかわかんなくても、とにかく直さないといけないから、
直してコミットする。このためにおかしなソースができやすい。
これは、タイトルに日付を入れる場合も同じ。



一方、Gitのほうは、運用上、AさんBさんでブランチを切って、
それをマージすることになる。その際、プルリクエストを出して。
ということで、マージする際に、マージする人は、AさんBさんが
どういう目的で、どういうことをやっているのかをレビューできる
(AさんBさん両方の内容を知って)。
なので、Bさんが修正したら、Aさんは実は修正が要らなかったという
ことは、このレビューで気づき、間違ったコードが入りにくい。



その点で、「分散開発においては」SVNよりGitのほうが、安全で
SVNでみんなコミットできるようにしてしまうのは危険
(具体例:2ちゃんねるのみずほ次期シスの板)
というかんじなんでしょうか・・・

この観点で言うと、SVNを使っている人が、タイトルに日付を入れている
人をdisっていたりするけど、「問題はそこじゃない!」w


Viewing all articles
Browse latest Browse all 7274

Trending Articles