0
我在Bitbucket的Git倉庫中有PHP/Laravel/JS項目。Git:部署到OpenShift
該項目應通過其基於Git的部署系統部署到OpenShift。他們爲您的應用程序創建一個回購。你git clone
吧。當你需要部署git push
和OpenShift時,其餘部分:
- 停止應用程序(網絡服務器);
- 寫入項目文件並配置(例如nginx.conf)到正確的位置;
- 執行自定義的部署後操作(Laravel至少是:
composer update
和php artisan migrate
); - 重新啓動應用程序。
很酷,但:
- * .PHP,nginx.conf,定製後部署腳本等,應推到兩個OpenShift和到位桶;
- 縮小* .js,* .css - 僅限OpenShift;
- raw * .js,* .scss - 僅限Bitbucket;
- gulpfile.js,Vagrant的配置和其他開發人員 - Bitbucket;
- Laravel的緩存IDE配置 - 既不OpenShift也不Bitbucket。
完成它的最好方法是什麼?兩個.git-openshift和.git-bitbucket(具有不同的起源)而不是一個.git?那麼.gitignore呢?不要使用OpenShift的部署系統?我應該使用哪種工具?或者,也許,使用汞而不是Git Bitbucket?
謝謝你的答覆。但是我擔心我的(愚蠢的)思維方式與你的思維是完全不同的(正確的)。你的意思是說:「並且你的生產代碼已經交給那個分支」?那麼,現在我有生產分公司沒有歷史和單一文件.gitignore承諾。我有一個主分支,另一個.gitignore和準備部署的代碼。 'git在'git push origin production'之前應該做些什麼? – user3368115
@ user3368115檢查我的編輯,我已經添加了一個可能的工作流程 –
正如我在我原來的問題中寫的,我有4種文件:BB,OS,兩者都沒有。您的示例工作流程解決了「OS」類文件的問題,但不是「兩個」。好吧,'git checkout production'不會從工作樹OS文件(自動生成)中刪除,所以我可以添加 - 提交 - 推送它們。但'git checkout production'還會將兩個文件(* .php)還原到已部署的生產版本。我想部署他們的主版本。 – user3368115