Some Git Tips useful for contributors and developers
There are two common places for git config, global (~/.gitconfig) and project wise (/path/to/the/project/.git/config).
You can set your preferred name and email for different projects:
[user] name = email =
Please note, that email set in the global user config (~/.gitconfig) will get used in all repositories that do not set per repo value.
To show both for author and committer information for checking the credit is given to the submitter, set fuller format for git log and git show
[format] pretty = fuller
To rewrite history, including separating out components from FreeBSD src, see the examples in git-filter.
commit count (replacement of revision number)
git rev-list --first-parent --count HEAD
Show your diff while writing commit msg
If you want to see your uncommitted diff while writing a commit message, either run:
git commit --verbose
…or configure it accordingly:
[commit] verbose = true
Show (long enough) hash
git rev-parse --short <long hash>
It's handy to tracking multiple branches simultaneously with git-worktree(1)
cd freebsd-ports; git worktree add -b 2021Q3 ../freebsd-ports-2021Q3 freebsd/2021Q3 cd freebsd-src; git worktree add -b stable/13 ../freebsd-src-13 freebsd/stable/13