Git Tips
Auto update working tree via post-receive hook
On the remote server (origin repository) we need to chmod +x .git/hooks/post-receive and write next code to this file:
#!/bin/sh
cd ..
env -i git reset --hard
Revert (reset) a single file
$ git checkout filename
This command is also used to checkout branches, and you could happen to have a file with the same name as a branch. All is not lost, you will simply need to type:
$ git checkout -- filename
Setting up a new remote git repository
Set up the new bare repo on the server:
$ ssh example.com
Welcome to example.com!
$ mkdir /var/git/myapp.git && cd /var/git/myapp.git
$ git --bare init
Initialized empty Git repository in /var/git/myapp.git
$ exit
Bye!
Add the remote repository to your existing local git repo and push:
$ cd ~/Sites/myapp
$ git remote add origin ssh://example.com/var/git/myapp.git
$ git push origin master
Set the local master branch to track the remote branch.