git reset –hard vs git checkout -f
When creating a Git alias that points to a function, sometimes Git provides the wrong tab completion by default (e.g. filename completion instead of branch name completion). This is how we can tell Git, which type of completion to use.
Tom McFarlin writes about setting up a git workflow for creating a built release. Good strategy for creating a distro that has your required components and assets so that it's ready for install.