12119


初めてAndroidの開発に携わっています。  
Gitを使うことになったのですがバージョン管理システムに慣れておらず苦労している段階です。

今回の質問はGitで使用するサーバについてです。

Gitのクライアントソフト (Git For Windows)
のインストールまでは出来たのですが、サーバを何にするか決めあぐねています。皆さんはどのようなサーバソフトを使用しているのでしょうか。

**想定している条件**

・ソースは外に出せないので、サーバは社内LANに設置 (なのでGitHubは使用できません)  
・サーバは Windows Server 2012, IIS7.5, SQL Server 2012R2  
・日本語が文字化けしないこと  
・なるべく情報量の多いソフトであること

正直言ってTeam Foundation Serverしか使用経験が無く、ソースをコミットしたり、取得するのに使った程度です
(後はたまにPLからTFS内蔵のチャットで指示が来るくらいです)

皆さんの使用しているGitのサーバでお勧めは無いでしょうか。


CC BY-SA 4.0
2015-07-07T09:04:19.330
12115
2019-12-16T06:39:47.280
2019-12-16T06:39:47.280
3060
10098
question
git
社内LANの閉じた環境で使用する Git サーバを構築するには？


TFS や Subversion 等と異なり、Git
をはじめとする分散型バージョン管理システムは各々がリポジトリを所有し、それを同期することで共同作業を行います。そのため、いわゆる「サーバーソフトウェア」というものは必要ありません。

Git
の場合は「作業ディレクトリ」と「履歴等を格納する.gitディレクトリ」をセットにしてリポジトリとして扱いますが、作業ディレクトリを持たない「bareリポジトリ」を作ることができるので、これを中央サーバのように扱うことが多いです。Git
のリポジトリはただのディレクトリですから、これをSSHやSambaで外部からアクセスできるようにして、そことローカルとの間で履歴を push/pull
する、という流れになります。

[Git チュートリアルとトレーニング| Atlassian](https://www.atlassian.com/ja/git/)

Github、Bitbucketといったサービスではこういった bare
リポジトリの管理をブラウザ上で行えるほか、BTSなどの機能を備えています。オンプレミスで動作するものも、Atlassian
Stash、GitLab、GitBucket等が存在します。

> サーバはWindowsServer2012/IIS7.5/SQL Server2012R2

Windows
上で直接動かすということであれば、Javaで動作するStashやGitBucketがお手軽なのかなとは思います。が、チームメンバー間で履歴を同期したいだけであれば、bareリポジトリをサーバー上に作成し、そのディレクトリを共有するだけで可能です。

[Windows PCをGitのリモートリポジトリとして使用する方法 - MoonMt.Lab IT開発技術
調査報告書](http://d.hatena.ne.jp/MoonMtLab/20140314/1394807213)


CC BY-SA 3.0
2015-07-07T09:56:55.783
12119
2015-07-07T12:57:59.527
2015-07-07T12:57:59.527
5337
8000
12115
answer


検索するとあれこれ出てきますが、httpでgitを使うには、Git\libexec\git-http-
backendというプログラムをhttpdでScriptAliasすればいいだけらしいです。  
私自身はIIS触ったことないので設定を具体的に説明できなくて申し訳ないですが、ドメインがあるなら、Windows統合認証に設定したrealmに上記のプログラムをCGIとして登録すれば設定は完了です。


CC BY-SA 3.0
2015-07-07T12:52:13.707
12123
2015-07-07T12:52:13.707
8136
12115
answer