実稼働サーバーがマスター ブランチより先にあると考えているように見える理由について、私は混乱しています。私はファブリックを使用してデプロイし、github のマスター ブランチからサーバー上で git pull を実行します。実稼働サーバー自体で認識している変更は行っていません。また、実稼働サーバーでコミットも行っていません。
git status
収量:
# On branch master
# Your branch is ahead of 'github/master' by 57 commits.
#
nothing to commit (working directory clean)
私が知る限り、運用サーバーにあるものは、開発環境のマスター ブランチと一致します。少なくともこのサイトは同じように動作しますが、これには戸惑います。github マスターと同じページで本番リポジトリを取得し、このメッセージの表示を停止する方法についてのアイデアはありますか?
編集 (2013 年 4 月 11 日):
明確にするために、ファブリックを使用して展開すると、次のように実行されます。
git pull github master
サーバー上。
上記の元の質問に書かれた私のgitステータスの結果は、サーバー上にあります。サーバー上でコミットすることは決してありません。開発環境でのみコミットし、それを github にプッシュし、次にそれをサーバーにプルします。それが私が混乱している理由です。実稼働サーバーから github に何もプッシュしたくないのは確かです。これは私のワークフローの反対方向です。
2 回目の編集 (2013 年 4 月 11 日):
fabfile git コードは次のとおりです。
def prepare_remote_deployment_area():
"""Prepare the production host with updated resources"""
with cd(DEPLOYMENT_ROOT):
run('git pull github master')
これは deploy から呼び出されます:
def deploy():
"""Deploy an update (committed to GitHub) to production"""
check_git_status()
check_git_status(on_remote=True)
prepare_remote_deployment_area()
restart_uwsgi()
restart_nginx()
restart_celery()
繰り返しますが、開発環境で行った変更が本番環境に反映されるという意味では、これはすべて機能しているようです。プロダクションリポジトリがgithubマスターよりもはるかに進んでいると考える理由がわかりません。