5

私は git を使用して、ソースの変更を (からプッシュした後に GitHub からdev) ライブ Web サイトの Web アプリにプルしていました。私の .git ディレクトリ/レポは、ほとんどのプロジェクトが Web アプリをビルドして ' git init' などで git の使用を開始するときと同じように、Web ルート (一般にはアクセスできません) にあります。これでよろしいですか?

「OK」とは、サーバーに .git リポジトリを配置し、ビルド スクリプトを使用して展開するためのより良い場所があるかもしれないし、ないかもしれないことを知っていることを意味productionしますが、あなたの回答では、何よりもまずそれが「わかりました」セキュリティ、ベストプラクティスなどの観点から現在行っている方法. これは、ライブ サイトに変更をデプロイし、git リポジトリを維持する最も簡単で簡単な方法のようで、私にとってはうまく機能しています。

「いいけど、もっといい方法がある」なら、それらの提案も気になります。

4

1 に答える 1

9

それは問題ありませんが、より良い方法は、履歴が Web ルートのフォルダーにないことを確認することです。これは、作業ディレクトリの場所を git に知らせる git レベル オプションを使用して回避できます。

git --git-dir=some/path/.git --work-tree=my/web/root/projectX pull

それを更新します。スクリプトを作成していて、これらのオプションを繰り返したくない場合は、2 つの環境変数を設定してから、それらのオプションをスキップできます。

git リポジトリを別の場所に置いて、archive コマンドを使用して作業フォルダーを取得することもできます。

git archive | tar -xzvf

また、接続文字列やパスワードなどを履歴に残さないことも検討してください。展開の時点で、展開スクリプトでこれらのファイルを操作します。

于 2012-10-24T02:10:36.577 に答える