[GIT] History and Configration
All those e-mail addresses and SHAs are making it hard to see commit messages in your history. Try viewing the log with one commit per line.
git log --pretty=oneline
The client called with an urgent question about chew toys, and now you can't remember what you last modified. Bring up a summary of file changes.
git diff
You've finished adding elephants to the catalog. You need to write up a change log for the client, and you want to ensure you don't miss anything. Compare the master
branch to yourelephant
branch to show what's new.
git diff master elephant
You rebased your latest commit after a commit from your co-worker, but now the page is rendering strangely. To figure out why, get a diff that includes the previous commit, as well as its parent.
git diff HEAD~2
Well, you see the changes, but you're not sure what your co-worker was trying to accomplish. Display the diffs along with the log to determine what's going on.
git log --patch
Wait, what? You don't understand these lines in index.html
. You'd better find out who committed them, so you can ask them what they're supposed to do.
git blame index.html --date short
Your server writes files to the logs
directory. You're not going to commit them, but they keep appearing in your git status
output, and you'd like them not to. Edit your .gitignore
file to ignore all files in the logs/
directory whose names end in .log
.
logs/*.log
Just for this repo, set the user.email
value to admin@example.com
.
git config user.email "admin@example.com"
Set your name as the user.name
value for all Git repos.
git config --global user.name "Answer"
ALIAS:
commit
just won't suffice for your code. You need a command that conveys the importance of the work that you're entrusting to Git. Alias git commit
to git beholdmyamazingcode
(or something equally awesome).
git config --global alias.beholdmyamazingcode commit