til/Applications/git.md

51 lines
726 B
Markdown

# Git
| Distribution | Package |
| ------------ | ------- |
| Archlinux | `git` |
| Ubuntu | `git` |
Add to `~/.bashrc`:
```bash
[[ -f /usr/share/git/completion/git-prompt.sh ]] && \
source /usr/share/git/completion/git-prompt.sh
PS1='[\u@\h \W$(__git_ps1 " (%s)")]\$ '
```
Save usernames and passwords in `~/.git-credentials`:
```sh
git config --global credential.helper store
```
Use neovim when commit:
```sh
git config --global core.editor nvim
```
Prefer rebase when pull:
```sh
git pull --rebase
```
Clean outdated branches:
```sh
git fetch --prune
```
Push force safely:
```sh
git push --force-with-lease
```
Rewrite history by changing last `x` commits :
```sh
git rebase -i HEAD~x
```