Zerocat Label  v0.1.0
General Documentation for the Zerocat Label.
Git Usage

Resources

How to Write good Commit Messages

Useful Invokes

They mostly come from reading the "Pro Git" book.

git init
git clone

git stash

git commit --no-status
git commit --uno
git mv
git rm
git add --patch
git add

git diff --cached  `# same as --staged`
git diff
git log --follow <filename>
git log --pretty=format:"%h %an %s" --graph
git log --abbrev-commit --pretty=oneline --graph
git log --abbrev-commit --pretty=medium
git log -p -2
git log
git status -uno
git status -s

git config --add format.pretty oneline
git config --list
git remote -v
git difftool --tool-help

#set up new-branch to track remote new-branch
git checkout new-branch

#show differences between commits/ branches/ tags/ etc.
#in detail...: git diff <from> <to>
git diff master documentation
#in short...: git diff --stat <from> <to>
git diff --stat <refspec> HEAD, #you can omit 'HEAD'

#delete branch upstream
git push origin :my-obsolete-branch

#delete local copies of already deleted upstream branches
git fetch --prune #refers to all local copies of remotes

Details

Tools

Beyond Git

How the Zerocat Label uses Git for its Projects

Getting Started

Roles and Responsibilities

Workflow: Contributing via branching

Contributor:

git branch my-new-branch ; git checkout my-new-branch
git add new-file-in-branch
...
git commit
...
git push origin my-new-branch  # Announce this via email
git branch --set-upstream-to=origin/my-new-branch my-new-branch
...
...
git push origin --delete my-new-branch  # We are done with the branch, delete on server

Others:

git pull origin             # Now new remote branches are visible
git checkout my-new-branch  # Sets up tracking branch (git branch -vv)
...
...
git branch --delete my-new-branch  # We are done with the branch, delete locally

Project Maintainer:

git checkout master ; git merge my-new-branch