gitを社内LANで運用しようと考えていますが、どんな方法がおすすめですか?


目的はソースコードのバージョン管理ではなく、各部門のdocx,xlsx等のドキュメントのバージョン管理です。
仕事柄、各部門(多数)のマニュアルの変更が頻繁にあります。またこれらのマニュアルは監査等で第三者機関からチェックされるので、きちんと管理されるべきですが、現状きちんと管理されているとはいえません。

そこでバージョン管理システムの導入を考えています。

かといって私はまだgitに関する全体像を把握できていないため、このような場合にどんな環境構築を採用すべきかなどがよくわからない状態です。

求められる条件は下記のような感じだと思います。
・クライアント環境はWindows7
・gitサーバはWindows7あたりで(予備機が余っているので)
・社内のイントラネット環境
・誰にでもできるようにGUI操作でクローン、コミット、プッシュ等ができるように
・対象ファイルはdocx、xlsxなどのドキュメント系
・マージ機能は視野にいれていない、とりあえずバージョンの管理さえできたらいい


(つづきは補足に書きます)

回答の条件
  • 1人3回まで
  • 登録:
  • 終了:2015/09/28 23:00:17
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。
id:triox

質問者から

triox2015/09/28 21:16:17

ちなみに、git未経験の私が試したことは下記です。

(1)「サルでもわかるgit入門」を一通り経験(ttp://www.backlog.jp/git-guide/)

(2)ttp://d.hatena.ne.jp/MoonMtLab/20140314/1394807213

 このサイトのとおりにWindowsPCをGitのリモートリポジトリとして使用する手順を踏んでみた。

①クライアント:Git for Windwos + Tortoisegit環境

②サーバ:Git for Windows + Tortoisegit環境でベアリポジトリを作成し、リモートリポジトリとして公開(daemon起動)

③クライアントへのクローンは成功するも(git://プロトコルで)、クライアントからリモートへプッシュができない(git://プロトコルで)。サーバ側では「write error:Invalid argument」が出ている。

④原因調査で詰む。他の方法が目についてそちらが気になりだす。(「社内LANでgitサーバ構築するにはGitblitが簡単」「GitBucketが便利」などの魅力的な記事多数)


まだまだ調査不足の段階だとはわかっていますが、どのような方法をおすすめしますか?

また、リモートリポジトリを作成する時点でサーバの役割は果たしていると思うのですが、「Gitblit」などでサーバ構築(?)する理由はどんなところですか?

長くなりましたが宜しくおねがいします。

ベストアンサー

id:Calros No.1

回答回数30ベストアンサー獲得回数1スマートフォンから投稿

ポイント100pt

そもそもの問題として、バイナリファイルをgitで扱うことはお勧めできません。mergeができないので確実に同時には一人しか編集しないことや、つねに最新の版が手元にあることを確認した上で編集することなどのルールを決めないと運用は難しいと思います。そういった状況であればよりシンプルなsubversionなど別の版管理ソフトを使うことを検討してみてもいいかもしれません。

gitのサーバの構築の方法についてですが、最初に構築する手間と追加で付いている機能(ブラウザからベアリポジトリを作れたりwikiがついていたりブラウザから版を見れたりします)が変わります。リポジトリは滅多に作らずpush,pull以外の機能を求めないのであればどの方法でも難易度はさほど変わらないと思います。Linux以外で構築したことはないので具体的におすすめできる方法はないです。

id:triox

ありがとうございます。
「subversionからgitへ移行して感動した」などの言葉づらだけよく目にしていたので、勝手に「subversionは古いもの、gitを使うべき」という頭になっていました。メリットデメリットあるのですね。また、サーバの話も大変参考になりました。

2015/09/28 23:03:09

その他の回答0件)

id:Calros No.1

回答回数30ベストアンサー獲得回数1スマートフォンから投稿ここでベストアンサー

ポイント100pt

そもそもの問題として、バイナリファイルをgitで扱うことはお勧めできません。mergeができないので確実に同時には一人しか編集しないことや、つねに最新の版が手元にあることを確認した上で編集することなどのルールを決めないと運用は難しいと思います。そういった状況であればよりシンプルなsubversionなど別の版管理ソフトを使うことを検討してみてもいいかもしれません。

gitのサーバの構築の方法についてですが、最初に構築する手間と追加で付いている機能(ブラウザからベアリポジトリを作れたりwikiがついていたりブラウザから版を見れたりします)が変わります。リポジトリは滅多に作らずpush,pull以外の機能を求めないのであればどの方法でも難易度はさほど変わらないと思います。Linux以外で構築したことはないので具体的におすすめできる方法はないです。

id:triox

ありがとうございます。
「subversionからgitへ移行して感動した」などの言葉づらだけよく目にしていたので、勝手に「subversionは古いもの、gitを使うべき」という頭になっていました。メリットデメリットあるのですね。また、サーバの話も大変参考になりました。

2015/09/28 23:03:09
  • id:miscellaneousness
    なぜ、バイナリファイルをGitで管理しようと思ったのでしょうか?
    Gitのお薦め設定ではバイナリファイルが壊れる可能性がありますし、ロック機能が無いので同時に編集してしまうリスクがあるので、Subversionの方が良いと思うのですが。
  • id:yoshitaku0627
    バイナリ扱うならPerforceをオススメします!
  • id:motokix
    解答終わってたのですが
    ①クライアント:Git for Windows + Tortoisegit環境
    ②共有フォルダ上にbareリポジトリ.gitリポジトリを作成
    ③共有フォルダからリポジトリをクローンする
    ④クローンしてきたフォルダでファイルを置き コミット
    ⑤Push先はリ共有フォルダ上になっているはずなので、やり取りできる。
    誰かがコミットし忘れたりするといろいろ大変になりますが。管理できますよ。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません