Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
28
Help us understand the problem. What is going on with this article?

More than 3 years have passed since last update.

@tukiyo3

メモ: Gitリモートリポジトリにpushして自動更新してもらう方法

リポジトリの新規作成

1. サーバーでbareリポジトリを作成

bareリポジトリを作成
# mkdir -p /opt/repo/src.git
# cd /opt/repo/src.git
# git init --bare

2. サーバーでbareリポジトリをclone

リポジトリのクローンを作成
# cd /opt
# git clone /opt/repo/src.git

3. ローカルでサーバーのbareリポジトリをclone

リポジトリのclone
# git clone ssh://192.168.11.11/opt/repo/src.git

4. ローカルでなにかコミットする

何かファイルを作ってコミットしておく。
# cd src
# date > memo.txt
# git add memo.txt && git commit -m "memo"

5. ローカルでサーバーにpush

リモートリポジトリにpush
# git push --all

自動更新用にHookスクリプトを作成

1. サーバーで作業

# cd /opt/repo/src.git/hooks/
# cp -a post-receive.sample post-receive

2. サーバーでpost-receiveを編集

post-receive
+ cd /opt/src
+ git --git-dir=.git pull

3. ローカルからサーバーにコミットをpushする

何かファイルを作ってコミットしておく。
# echo "hoge" > memo.txt
# git add memo.txt && git commit -m "hoge"
リモートリポジトリにpush
# git push

4. 変更を確認する

これで、/opt/src/memo.srcの内容が自動で更新される。

28
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
28
Help us understand the problem. What is going on with this article?