Git Lifecycle: Daily Cradle-to-grave

Of all my git habits, these are by far the most common. Oddly and despite mostly using IntelliJ IDEA where there are already sophisticated GUI interfaces, I use the command line 99% of the time because, uh, habit.

Command Notes
git clone [email protected]:windofkeltia/project-name.git clone a (GitLab/GitHub/Bitbucket/etc.) repository locally
git checkout -b branchname switch to named local branch
git fetch,   git pull latest from branch's remote repository
gvim (or IntelliJ IDEA) filename edit, make changes to filename
git status observe current repository's status, list of changed files
git diff filename examine diff of changes to filename before committing
git add filename [ filenames ] file or files to list of files published, ready to commit to local repository
git commit -m "message" commit all published files to local repository
git commit -m "message" filepath commit only filepath to local repository
git commit --amend -m "message" amend the last commit (if not pushed)
git log --name-only status of committed files, only filepaths
git log --name-status status of committed files including filepaths
git log --stat status of committed files including filepaths and commit information
git push push to remote repository, good back-up strategy
git branch list branches
git diff branchname differences between branchname and current branch
git fetch download changes from remote into local repository
git pull download changes from remote into local repository and merge
git merge branchname merge branchname into current branch
git merge branchname merge branchname into current branch
git branch --delete branchname remove unneeded repository; won't delete if unpushed changes
git branch --delete --force branchname when git pushes back, but you're certain or don't care