最近、Amazon EC2でubuntu-serverをセットアップしました。gitサーバーとして使用したいので、リポジトリをそこに保存できます。
だから、ubuntuサーバーでgitをセットアップする方法の詳細な指示はどこにありますか?これらすべてのSSHキーとそのようなもの、複数のユーザーなど。
最近、Amazon EC2でubuntu-serverをセットアップしました。gitサーバーとして使用したいので、リポジトリをそこに保存できます。
だから、ubuntuサーバーでgitをセットアップする方法の詳細な指示はどこにありますか?これらすべてのSSHキーとそのようなもの、複数のユーザーなど。
回答:
aking1012が提案したように、チュートリアルを使用してGitサーバーをインストールできます。または、EC2インスタンスにSSHサーバーをインストールすることもできます(おそらく、セキュリティを確保してデフォルトポートを変更するのが賢明でしょう)。
Gitは、サーバーを使用せずにリポジトリを初期化してから、SSH経由でリモートからアクセスできます。したがって、Ubuntu Serverでのこのような指示はそれを行う必要があります。
GIT_DIR=project.git git init
cd project.git
git --bare update-server-info
cp hooks/post-update.sample hooks/post-update
最後に、サーバーにSSHをインストールします。
sudo apt-get install ssh-server
次に、SSHを構成してセキュリティを確保する必要があります。
プロジェクト(開発マシンにすでにあるデータ)をオンラインにするときです。
git push ssh://<username>@<remote-git-hostname>/path/to/project.git master
これで、クローン作成を開始できます。開発用マシンに行きます:
git clone ssh://<username>@<remote-git-hostname>/path/to/dir.git
そして、より安全な認証のためのsshキーを生成するために、SSH認証に関するこの記事を読むことができます。
openssh-server?
ssh-serverは、少なくともUbuntu 10.04では、openssh-serverのエイリアスのようです。
~/.ssh/config、ユーザー名/ホストアドレス、キー入力、ポートなどを処理できます。
http://scie.nti.st/2007/11/14/hosting-git-repositories-the-easy-and-secure-wayは、目的に合わせてわずかに変更できます...同様のチュートリアルhttp:// blog .agdunn.net /?p = 277。
公式ドキュメントhttps://help.ubuntu.com/community/Gitに必ず従ってください(セクションGitとプロジェクト管理のセットアップ)
私にとって最適なソリューションは、WebDAVのセットアップでした。
sudo a2enmod sudo dav_fs
sudo a2enmod dav
新しいファイルを追加し/etc/apache2/sites-availableて名前を付けます(例:)git.yourserver.com。それを編集して、次の行を追加します。
<VirtualHost *:80>
DocumentRoot /var/www/git.yourserver.com/repos
ServerName git.yourserver.net
Options Indexes FollowSymLinks MultiViews
<Location />
DAV On
AuthType Basic
AuthName "git repos"
AuthUserFile /var/www/git.yourserver.net/password.dav
Require valid-user
</Location>
</VirtualHost>
/var/www/git.yourserver.comとディレクトリを作成しますrepossudo chown www-data /var/www/git.yourserver.com/repossudo htpasswd -c /var/www/git.yourserver.com/password.dav user_login という名前のユーザーのパスワードを入力します user_loginsudo chown root:www-data /var/www/git.yourserver.com/password.davsudo chmod 640 /var/www/git.yourserver.com/password.dav今、sudo a2ensite git.yourserver.comそしてsudo service apache2 restart。
/var/www/git.yourserver.com/reposディレクトリを入力して作成します。たとえば、myrepo.gitcd myrepo.gitgit --bare initgit update-server-info次に、リモートサーバーからログアウトし、ファイルを編集するローカルディレクトリに移動します。
git clone http://user_login:user_password@git.yourserver.com/myrepo.git
そしてあなたは終わった。コミットした変更をサーバーに送信する場合:
git push origin master
を使用して、必要な数のユーザーを作成できますsudo htpasswd。-c古いファイルは削除されるため、ユーザーを追加するときにスイッチを使用しないでください。
ユーザーとセキュリティを管理するためのgitoliteアプローチも気に入っています。現在テスト中のEC2用のGit + gitoliteサーバーAMIがあります。試してみてください。ドキュメントはここから入手できます。
このアプローチを使用すると、プライベートリポジトリを備えた中央のGitサーバーを数分で実行できます。あなたがそれらに精通していない場合、gitoliteとEC2の学習曲線があります。