Read this readme carefully before we start.
Clone this repository and enjoy!
- core.excludesfile global git ignore
- core.ignorecase ignorecase
- core.editor editor when commit
- core.pager diff viewer
- init.defaultBranch
- push.default default push mode
- push.autoSetupRemote setup remote tracking on pushing new branch
- pull what happens on
git pullrebase or merge - rebase.autostash stash when rebasing
- rebase.autosquash squash fixups when rebasing
- rebase Reuse recorded resolution of conflicted merges
- mergetool mergetool
Example:
; ~/.gitconfig
[core]
excludesfile = /Users/stef/.gitignore
editor = nvim
; editor = code -w
; editor = atom -w
ignorecase = false
pager = diff-so-fancy | less --tabs=4 -RFX
[init]
defaultBranch = master
[push]
default = current
autoSetupRemote = true
[pull]
rebase = true
[rebase]
autoStash = true
autosquash = true
[rerere]
enabled = true$ git log --topo-order
$ git log --topo-order --stat --patch --full-diff
$ git log --topo-order --graph
Task instructions: task.md
To push current branch to remote and setup upstream tracking:
Without config
$ git push --set-upstream origin feature_branch
with push.default = current
$ git push --set-upstream
with push.default = current and push.autoSetupRemote = true
$ git push
- runs
git fetch - if current branch is behind remote, it will
fast-forward - if branches are diverged, it will
rebaseormergedepending on config
$ git rebase --interactive {commit/branch}
$ git rebase --abort
$ git rebase --continue
$ git rebase --skip
$ git reflog





