レンタルサーバーにgitを仕込み、ローカルのリポジトリからpushしていたのですが、サイトの修正が反映されなくなりました。cloneはできていて、修正したログも残っているのでpost-receiveの設定を見直しました。
特に変化なし。
bareリポジトリのpost-receiveをたたく
サーバーではbareリポジトリを作成していて、.git/hook/post-receiveを作成しています。そちらを叩くとファイルのコンフリクトでエラーがでました。
$ cd post-receveまでのパス
$ ./post-receive
error: Your local changes to the following files would be overwritten by merge:
思い返せば、gitではない方法でファイルを修正していた気が・・・。
一旦、公開しているサーバーデータで、コンフリクトしたファイルのバックアップを保存して削除しました。
その後もう一度post-receiveを叩きpushできるようになりました。
$ ./post-receive
まとめ
せっかくgitで管理しているのでファイルを直接修正するのではなく、gitで管理をするのが大事ですね。
コメント