wiki:setup-git

Version 5 (modified by Pea, 10 years ago) (diff)

Added note to change to correct user.

How to Setup Git on server

First thing to do is create a git repo with the command

  1. Create a repository in webroot with the command
git init
  1. Using a text editor, create a .gitignore file

The next thing to note is that you don't want any uploaded files or configuration files to be in the repository

in that file (for WordPress sites) add the following lines:

/wp-content/uploads
/wp-config.php
*~
/.htaccess

As a starting point, try the GitHub .gitignore template.

Can be done by:

echo "/wp-content/uploads

click enter

Add

/wp-config.php

click enter

add

" >> .gitignore

click enter

Also add

echo ".htaccess" >> .gitignore
  1. Add files to the git repository with the command
git add .

Check status with

git status
  1. Do the initial commit with the command
git commit -am"Initial Commit"
  1. Create a bare repository outside webroot
cd ../include && mkdir code

The run

cd code && git init --bare
  1. Add a remote to our main git repo

From the webroot, enter the command:

git remote add code ../include/code
  1. push our main repo to the remote with the command
git push code master
  1. Add needed hooks for handling live and remote changes.
  1. Using a text editor (nano) with this command 'nano .git/hooks/post-commit.sample' (I think)

Use this code

#!/bin/sh

echo
echo "**** pushing changes to Hub [Prime's post-commit hook]"
echo

git push code

Ctr-x then y to save hit enter

The run

mv .git/hooks/post-commit.sample .git/hooks/post-commit
  1. add post-update hook in the bare repository
nano ../include/code/hooks/post-update.sample

Add the following

#!/bin/sh

echo
echo "**** Pulling changes into Prime [Hub's post-update hook]"
echo


cd $HOME/cn.glocal.coop/web || exit
unset GIT_DIR
git pull code master

exec git-update-server-info

NOTE: Change cn.glocal.coop to the correct domain

change the file name with the command

mv ../include/code/hooks/post-update.sample ../include/code/hooks/post-update
  1. From local web root initialize a git repo with the command
git init
  1. add a remote to the local repository with the command
git remote add code commnet@rose.mayfirst.org:cn.glocal.coop/include/code

NOTE: Change commnet to the correct user, rose.mayfirst.org to the correct server and cn.glocal.coop to the correct domain

  1. Pull in the remote repo with the command
git pull code master