私がWebサーバーのホスティングに例えると、gitのデータは/var/git
にあるはずなので、私のgitリポジトリは/var/git/myrepo
にあるはずです。
[〜#〜] q [〜#〜]:それは正しい推測ですか?
ここに正しい答えや間違った答えはありませんが、あなた自身の個人的な宗教によって指示されたものと、システムのhier(7)
マンページの内容を除きます。
典型的なLinux hier
マンページ ; 典型的なBSD hier
マンページ )
/var/git/*
個人的に私には理にかなっているようです。それは私が私を保つ場所です。
/srv
の下のディレクトリ(または共有ファイルシステム)に配置します。これが目的です。
/srv
ディレクトリは システムが提供するサイト固有のデータ を対象としています。標準から:
これを指定するこの主な目的は、ユーザーが特定のサービスのデータファイルの場所を見つけられるようにし、読み取り専用データ、書き込み可能なデータ、およびスクリプト(cgiスクリプトなど)に単一のツリーを必要とするサービスを合理的に配置できるようにするためです。特定のユーザーのみが関心を持つデータは、そのユーザーのホームディレクトリに保存する必要があります。
/srv
のサブディレクトリに名前を付けるために使用される方法は、現時点ではこれがどのように行われるべきかについてコンセンサスがないため、指定されていません。/srv
の下でデータを構造化する1つの方法は、プロトコルによるものです。ftp
、rsync
、www
、およびcvs
。大規模なシステムでは、/srv
、/srv/physics/www
などの管理コンテキストによって/srv/compsci/cvs
を構造化すると便利です。この設定はホストごとに異なります。したがって、どのプログラムも、既存の/srv
の特定のサブディレクトリ構造や、/srv
に必ず格納されるデータに依存するべきではありません。ただし、/srv
はFHS準拠のシステムに常に存在し、そのようなデータのデフォルトの場所として使用する必要があります。ディストリビューションでは、管理者の許可なしにこれらのディレクトリにローカルに配置されたファイルを削除しないように注意する必要があります。
SELinux対応システムでは、デフォルトのディレクトリは/var/www/git
であり、リポジトリはそのサブディレクトリにある必要があります。または、使用できます。 /srv/git
およびファイルコンテキストを同等に設定します。
semanage fcontext -a -e /var/www/git /srv/git
/home/git/
これは最初は少し型破りに思えるかもしれませんが、このディレクトリはSudo useradd git
。 gitユーザーcd
に切り替えて、すぐに実行できます。
$ mkdir .ssh; chmod 700 .ssh
$ touch .ssh/authorized_keys; chmod 600 .ssh/authorized_keys
ピアの公開鍵を、作成したauthorized_keysファイルに入れます。
お先にどうぞ git init --bare
あなたのプロジェクト、「url」はただ...それを待ちます...
git@<server>:<project>
それは完全にあなた次第です。ただし、システムのアップグレードなどを簡単にするために、git data dirを別のパーティションまたはディスクに配置するのが最適です。もちろん、十分なディスク容量があることを確認する必要があります。
Voretaq7が言ったように、そのような問題についての正誤はありません。ただし、ソフトをフォローしたい場合、データベースソフトはデータを
/var/lib/soft
たとえば、debian上のPostgresql 9.1の場合、フォルダは
/var/lib/postgresql/9.1/
だから私は個人的に選択します
/var/lib/git
私のArch Linuxには/srv/http
はApache(システムのデフォルト)で、node.js httpサーバーにも使用します。同様に、すべてのgitリポジトリを/srv/git
。
私はGitLabを使用しており、/srv/git
もその場合のgitのホームフォルダーです。
最終的に、それはあなた次第です。あなたのディストリビューション内の他のサービスと同様のフォーマットに固執することは覚えやすいことを私は発見しました。
Gitにフロントエンドを使用している場合は、ディストリビューションによってパッケージ化されているフロントエンドが配置したい場所に移動してください。それ以外のものは、不必要な非互換性を生み出しているだけです。
まず、/ srvを使用するという提案に関しては、すべてのgitリポジトリがWebサイトに使用されていると想定しています。それはあなたにとって本当かもしれませんが、あなたはウェブサイトではないソフトウェアの一部を持っているかもしれません。
次に、コードリポジトリを/ var/www/htmlまたは/ srv/htmlの外部に保存することで、2つのメリットがあります。リポジトリに任意のレベルでシンボリックリンクを作成して、ライブラリを非表示にするのが簡単になります。また、リポジトリの場所がまったく変更された場合でも、仮想ホストの構成を変更する必要はありません。代わりに、シンボリックリンクを調整するだけです。
私は/ var/repoを使用していましたが、/ var/gitの方が良いと思います。今後はそれを使用する予定です。
サイト構成を維持するためにgit reposをダウンロードし、それを展開して保存します。
/ data/repos/$ REPO_GROUP_OR_USER/$ REPO_NAME