7

Git を使用してバージョン管理され、ローカル開発エリア ( WAMP ) にある WordPress テーマを開発しています。smartgit を GUI として使用して、コミットを Bitbucket にプッシュします。マスターと開発の2つのブランチがあります。開発ブランチをステージング エリア (ライブ サーバーにインストールされた WordPress) にデプロイしたいと考えています。

これを実現するftployを使用してみました。ただし、展開するブランチを選択できないようで、実際の最終的な展開のためにマスター ブランチの展開を予約したいと考えています。共有ホスティングを使用していますが、SSH アクセスが可能です。

開発ブランチを共有ホスティングにデプロイするにはどうすればよいですか? Git がサーバーにインストールされていません (インストールできません)。

4

5 に答える 5

7

git-ftpを見てください:

私はスクリプトベースのプロジェクト、主に PHP に git-ftp を使用しています。低コストの Web ホスティング会社のほとんどは、SSH または git のサポートを提供しておらず、FTP のみを提供しています。

そのため、git 追跡プロジェクトをデプロイする簡単な方法が必要でした。プロジェクト全体を転送するのではなく、前回以降に変更されたファイルだけを転送するのではなく、git がそれらのファイルを教えてくれるのではないかと考えました。

異なるブランチで遊んでいても、git-ftp はどのファイルが異なるかを認識します。普通の FTP クライアントではそれができません。

于 2013-02-20T00:38:56.863 に答える
7

Git 自動デプロイ用の 7 つのアプリを提案する記事があります。

  • Beanstalk — <a href="http://beanstalkapp.com" rel="nofollow noreferrer">http://beanstalkapp.com
  • デプロイ — <a href="https://www.deployhq.com" rel="nofollow noreferrer">https://www.deployhq.com
  • スプリングループ — <a href="http://www.springloops.io" rel="nofollow noreferrer">http://www.springloops.io
  • ウェルカー — <a href="http://wercker.com" rel="nofollow noreferrer">http://wercker.com
  • Octopus Deploy [.NET] — <a href="https://octopusdeploy.com" rel="nofollow noreferrer">https://octopusdeploy.com
  • カピストラーノ [Ruby] — <a href="http://capistranorb.com" rel="nofollow noreferrer">http://capistranorb.com
  • Bamboo + Phing [PHP] — https://www.atlassian.com/software/bamboo
于 2015-09-20T20:30:59.190 に答える
4

私は FTPloy の創設者であり、ブランチ選択機能をリリースしたことをお知らせしたいと思います。

于 2013-06-13T20:57:07.883 に答える
1

私が望むことを正確に実行するこのスクリプトを使用することになりました。実際には、ftployを構築したのと同じ人によって書かれましたが、スクリプトにアクセスできたため、どのブランチがデプロイされたかを判断できました。ちなみに、ftployのロードマップには、Bitbucketプロジェクトのブランチを選択できることが含まれていることがわかりました。

于 2013-02-20T03:05:32.743 に答える
0

あなたは SSH アクセスを持っているので、git post-receive フック スクリプトで rsync コマンドを設定できるように思えます。https://github.com/EugeneKay/scripts/blob/master/bash/git-deploy-hook.shを参照してください。 これを gitolite で使用しましたが、github フックでも同様のことができると確信しています (誰でも) ?)

于 2013-05-31T23:19:30.457 に答える