1

その瞬間、私はH:ドライブにあるローカルのgitリポジトリを持っています。ファイルに変更を加えて保存すると、ここに保存されます。次に、ファイルとブランチをgitサーバーのリモートリポジトリとの間でコミット、プッシュ、プルできます。

私がやりたいのは、ファイルを処理することです。ファイルをローカルHドライブに保存する代わりに、テストサーバーに保存して、ブラウザーでそのサーバーから実行およびテストできるようにします。すべてのテストが完了したら、テストサーバーからライブサーバーにファイルをマージしてライブシステムとしてそこに配置するか、テストサーバーとライブサーバーからファイルをプルしてローカルにマージする必要があります。マスターブランチをライブサーバーにプッシュバックしますか?

また、ブランチがライブマスターブランチにマージされてライブサーバーにプッシュされる場合、ライブサイトとして実行できるように、gitリポジトリからすべてのファイルを「解凍」するにはどうすればよいですか。

私は実験しgit archiveて読み進めてgit bundle、これによってある種の「アンパック」ができるかどうかを確認しましたが、これまでのところ、実際に作業できることは何も達成できていません。

これが私が説明したように機能することは可能ですか?もしそうなら、どのようにそれを実行しますか?

それが不可能な場合、または私が見落としていたこれを行うためのより良い方法がある場合は、私に知らせてください。

4

2 に答える 2

1

アンパックの意味はわかりませんが、探しているのは変更を展開する可能性だと思います。アプリを開発していて、そのためにステージングまたは開発ブランチを使用しているとしましょう。テストサーバーでアプリをテストしたい場合は、まずすべてをリポジトリにプッシュする必要があります。Capistranoを調べてみてください。Capistrano を使用すると、使用しているプログラミング言語に関係なく、アプリを簡単にデプロイできます。そのための手順は、最初に「sudo aptitude install capistrano」または「gem install capistrano」を使用して Capistrano をインストールすることです。これで、アプリをローカルに移動して「capify」と入力できます。. Capistrano はいくつかのファイルを作成する必要があります。.config/deploy.rb を開いて、リポジトリ、ターゲットサーバー、およびターゲットサーバーにプッシュするブランチのデータを挿入する必要があります。いくつかの HowTo がありますが、default.rb はかなり見慣れているはずです。これで、Capistrano を介してテスト サーバーがリポジトリのステージング ブランチにリンクされ、「cap staging deploy」を使用して、ssh 経由でアプリをテスト サーバーにデプロイできます。すべてが機能する場合は、ステージング ブランチをローカルでマスターにマージし、それをリポジトリにプッシュできます。Live システムはリポジトリのマスター ブランチにリンクする必要があるため、「cap production deploy」と入力して、アプリを Live システムで動作させることができます。データベースの移行に注意する必要があるかもしれませんが、全体としてはそれだけです。

簡単なインストール/構成で、現在よりもはるかに優れたワークフローが得られます.

サーバーへの ssh アクセスがない場合は、git-ftp を参照してください。これがあなたの問題を解決するのに役立つことを願っています.

于 2012-12-05T15:12:41.363 に答える
0

テストサーバーがLAN上にある場合は、Sambaをそのサーバーにインストールしてから、そのWebルートをH:ドライブとしてマウントできます。リモートサーバーの場合は、何らかのSSHFSクライアント(Expandriveなど)が機能する可能性があります。

于 2013-01-24T06:04:40.840 に答える