Git


 * Popular source code management system.
 * Was born in Linux community and spread by Github
 * How to disappear completely and never be found.
 * zsh setting
 * svn2github mirroring
 * subtree merge instruction

magit

 * Best git-mode on Emacs.
 * keybindings
 * 'E': run rebase -i

github

 * popular git hosting service
 * issue to pull request
 * needs to use API
 * searching inside repository
 * repo:author/name
 * GitHub PubSubHubbub hooks
 * changing root directory

subtree

 * document
 * used to import external repository with prefix
 * article about submodule vs subtree
 * easier than submodule since not initialization is needed

status

 * run this command before any git operation.

reset

 * use to revert codes.
 * "git reset HEAD^1" is useful to change the recent history.

checkout

 * use to switch branches and clear repository.

branch

 * branch managing command

stash

 * use to save and pop temporary edit or crossing over branch.
 * git stash save
 * save current changes
 * git stash pop
 * pop saved stash

remote

 * Deleting branch that can't be deleted by pusing :branch.
 * Use 'prune'.

push/pull

 * use for merging and publishing to external repository.
 * deleting remote branch
 * git push remote_name :deleting_branch
 * 'pull' is harmful so use fetch instead.

commit

 * use to make commit
 * don't forget to check that code compiles correctly before this.
 * "-a" option is useful but make sure all code can be committed.

config

 * Document
 * Repository configuring.
 * for global setting use ~/.gitconfig

Attribute

 * Document
 * Indent setting is useful.