1

これは重複した質問である可能性が非常に高いですが、私の質問に対する満足のいく答えが見つかりません. 状況はこれです。ssh経由で通信できるWebサーバーがあり、gitがインストールされています。その上に、Web サイトを表すフォルダーがあります。以前は、全員が (FTP 経由で) 同時にサーバーで作業するか、コピーをそのマシンにダウンロードしてそこで作業し、FTP で戻すだけでした。

私が今欲しいのは、そのフォルダーを git リポジトリにすることです。これをローカル マシンにクローンすることができます。それに取り組み、変更をサーバーにプッシュします。

どうすればいいですか?サーバー上にレポを作成しようとしました。このリポジトリを複製できますが、何もプッシュできません。裸の git リポジトリについていくつか読んだことがありますが、サーバー上のリポジトリを実際の Web サイトのフォルダーとファイルにしたいので、これは私の問題ではうまくいかないようです。

誰かが助けてくれるか、正しい方向に向けてくれることを本当に願っています。

前もって感謝します!

4

3 に答える 3

0

ここから始めます: http://git-scm.com/book/en/Git-on-the-Server。このドキュメントは広く入手可能で、非常に包括的で、git サーバーのセットアップに関するすべてを網羅しています。

于 2012-10-25T07:51:18.463 に答える
0

git リポジトリを配置ディレクトリから分離することを強くお勧めします。

リポジトリをサーバーにプッシュし、サイトの新しいバージョンを本番環境にデプロイするには、異なるワークフローに従う必要があります。実際、1日に何度もgitリポジトリにプッシュする必要があります...

すでに ssh アクセスがある場合は、単純に次のようにする必要があります。

  • あなたが見つけた標準的な方法で、裸のリポジトリを使用してください
  • scpまたはrsyncに基づいて1行の展開スクリプトを作成し(もちろん、このスクリプトをコミットする必要があります)、開発用コンピューターの1つからこのスクリプトを実行します

編集 :

Web サイトの 1 行の展開スクリプトの例を次に示します。

rsync -avz --del --stats --exclude="deploy.sh" /path/Chrall/web/* someid@someweb.org:/var/www/canop/chrall

そして、私は通常、実際のプロジェクトでもう少し複雑な (4 または 5 行と構成) スクリプトを使用します (私の github リポジトリの 1 つを参照してください)。

于 2012-10-25T07:52:25.853 に答える