2018年9月11日火曜日

Gitでコミットすると同時にサーバー上のウェブサイトを自動更新

gitでシンプルなデプロイ環境を作る
https://qiita.com/zaburo/items/8886be1a733aaf581045

上記を参考に試してみましたが、途中つまずいたので手順をメモしておきます。

<サーバー上>
1.サーバーにリモートリポジトリとなる、test.gitディレクトリ(ベアレポジトリ)を作成し、test.gitディレクトリに移動する。
  $ mkdir test.git
  $ cd test.git

2.test.gitディレクトリをベアレポジトリとして初期化する。※sharedは他ユーザーと共有する場合。無しでもよい。
  $ git init --bare --shared

<ローカル>
4.自分のローカルのGit作業フォルダのリモートレポジトリとして上記test.gitを登録する。
  パスの例 ssh://example-user@example.co.jp/var/www/html/test.git

5.ローカルからリモートへpushする。

<サーバー上>
6.testディレクトリを作成する。
  $ mkdir test

7.test.git を test にクローンする。
  $ git clone test.git test

8.test.git/hooks 内に post-receiveファイルを作り以下を記述
  <post-receiveファイル内>
  #!/bin/sh
  cd /var/www/html/test
  git --git-dir=.git pull

9.post-receive に実行権限775を与える。
※改行コードはCR+LF(Windows用)ではなく、LFのみにすること。

10.ローカルで修正・コミットしてリモートにpushすると
  http://example.co.jp/test/ サイトが更新される。


<コマンドでの作業の流れ>
1.ローカルで修正
2.git add .
3.git commit -m "コメント:修正しました"
4.git push origin master ※このときユーザーのパスコードを要求される
5.完了

0 件のコメント:

コメントを投稿