3

私は Git と Gitolite にかなり慣れていませんが、昨日、なんとか起動して実行することができました。

問題は、多くのプロジェクトを含むフォルダーがあり (それを と呼びましょう/projects)、それらを Git に移行しようとしていることです。Gitolites/repositoriesフォルダーをこの/projectsフォルダーにシンボリック リンクしたので、すべての新しいリポジトリが/projectsフォルダーに作成されます。それは大丈夫です。

しかし今、フォルダー内のすべてのプロジェクト (サブフォルダー) のリポジトリを作成したいと考えてい/projectsます。Gitolite で新しいレポを初期化すると ( と呼びましょう)、既に作業しているファイルで古いフォルダーを使用する代わりに、/myprojectと呼ばれる新しいフォルダーが作成されます。myproject.gitmyproject

では、Gitolite を使用して、個々のプロジェクト フォルダーをすべて Git リポジトリに変換するにはどうすればよいでしょうか? これらすべてのファイルを手動でダウンロードして追加したくありません。

4

1 に答える 1

3

これがGitolite の仕組みです。Gitoliteは作業ツリー (ファイルでいっぱいのディレクトリなど) ではなく、ベアリポジトリ (フォルダ)を管理します。xxx.gitprojects/myprojects/

したがって、リポジトリを /projects にシンボリック リンクしないでください。両方の目的は大きく異なります。

「gitolite で移行された git リポジトリを構成する方法」に従って、各プロジェクトを直接開始して独自のディレクトリ ( /projects/myproject/.git) にインポートし、Gitolite にインポートできます。


Pierre De LESPINAYは、公式ドキュメントのコメントで s に言及しています。

付録 1: 既存のリポジトリを gitolite に取り込む

  • リポジトリを に移動し$HOME/repositoriesます。
  • 次のことを確認してください。
    • それらはすべて裸のレポです。
    • すべてのリポジトリ名は " .git" で終わります。
    • すべてのファイルとディレクトリは、gitolite ホスティング ユーザーが所有し、書き込み可能です (特に、root としてコピーした場合はそうです)。
  • 実行しますgitolite setup
    この手順を忘れると、書き込みアクセス制御も忘れてしまう可能性があります。

ワークステーションに戻ります:

  • リポジトリが通常のリポジトリである場合は、それらをconf/gitolite.conf管理リポジトリのクローンに追加してから、変更をコミットしてプッシュします。
  • リポジトリが、conf ファイル内の一部のリポジトリ正規表現とすでに一致するワイルドカード リポジトリである場合は、次のように手動で gl-creator ファイルを作成する必要があります。
echo username > ~/repositories/path/to/repo.git/gl-creator
于 2013-01-29T18:34:01.960 に答える