2017-03-31 9 views
0

異なるリポジトリのデータを保持するために同じgit bareリポジトリを使用できますか?言い換えれば、私ことができます。多くのクローンで1つのgit bareリポジトリを使用

は(BARE REPO呼ばれる)gitの裸のリポジトリ

  • gitのクローンが統合-b REMOTE REPOからmasterブランチデータと

    クローンを作成します--single-ブランチ[email protected]:ConsolidateService.git

  • exec git add。
  • タッチが
  • 幹部Gitは
  • 幹部のgitがリモート のsshを統合追加 "READMEを追加" -mコミットREADME.md:
  • を//[email protected]/var/repos/app.makeatoy.git幹部のgit pushはREMOTE REPOのB

    からmasterブランチ・データとBARE REPO

    再クローンそれの内容を消去マスター

を統合します

  • gitクローン-bテスト - シングルブランチ[email protected]:TestService.git
  • exec git add
  • タッチは
  • 幹部Gitは
  • 幹部gitのリモートテストに のsshを追加し、 "READMEを追加" -mコミットREADME.md:
  • を//[email protected]/var/repos/app.makeatoy.git execのGitのプッシュテストマスター

REMOTE REPOのC

からmasterブランチ・データとBARE REPO

再クローンそれの内容を消去210

  • git clone -b prod --single-branch [email protected]:ProdService.git
  • exec git add。
  • タッチは
  • 幹部Gitは
  • を "READMEを追加" 幹部のgitがリモート生産 のssh追加-mコミットREADME.md://[email protected]/var/repos/app.makeatoy.git
  • をexec gitプッシュプロダクションマスタ

可能であれば、ベアリポジトリの内容をどのように消去しますか?

TIA

+0

ベアリポジトリでは、1)リポジトリの名前を取得し、2)使用されているブランチの名前を取得することによって受信後のフックを使用したかった。次に、Webコードを配備する場所を生成するというアイディアでした。例:リポジトリapp1/branch:testの場合、コードはディレクトリapp1-testにデプロイされます。リポジトリapp1/branch prodの場合、コードはディレクトリapp1-prodなどにデプロイされます。 –

答えて

1

裸のレポを作成し、異なるプロジェクトからリモコンを追加するだけです。 gitには、関係のないブランチだけです。それぞれからフェッチした後に何かを削除する必要はありません(裸のレポには作業ツリーがないので、削除するものはありません)。

+0

応答のおかげで:-)したがって、データを裸のリポジトリにプッシュすると、どこに行きますか?操作が完了したら、/ dev/nullに何かをプッシュするのと同じですか? –

+1

それはレポに入る。しかし、裸のレポの中には削除するものはありません。それはデータベースのようなものです。追加/修正/コミット/削除などのための「エンドユーザーファイル」はありません。 – eftshift0

+0

もちろん、わかりました。もちろん...裸のレポの中には情報があります。しかし、もしあなたが何かを押すと、その中にあるもの(gitがオブジェクトや参照、設定ファイルなどのリポジトリのメタデータを保持するために使うすべてのファイル)を削除すると、うまくいきません。必要に応じて、initを再度実行することができます。空のディレクトリだけです。 – eftshift0

関連する問題