Bash + Git

Никита Солоснюк

Bash Basics

Bash Basics

  • sudo
  • ls
  • cd
  • rm
  • cat
  • touch
  • mkdir
  • which
  • echo
  • chmod
  • pwd
  • man
  • grep
  • mv
  • cp
  • history

Bash Basics

Aliases

VCS

Distributed version control system (VCS)

 

Git

Github

Git Basics

  • git init
  • git clone
  • git pull
  • git fetch
  • git branch
  • git checkout
  • git status
  • git add
  • git commit
  • git log
  • git push
  • git merge
  • git rebase
  • git reset
  • git stash

Git Basics

Aliases

alias gs='git status'
alias gcm='git commit -m'
alias gca='git commit --amend'
alias gaa='git add -A'
alias gco='git checkout'
alias glo='git log --oneline'
alias dcoker='docker'
alias gbd='git branch -D'
alias gp='git push'
alias gpc='git push origin $(git rev-parse --abbrev-ref HEAD)'
alias gpl='git pull'
alias gpr='gpl --rebase'
alias gplc='git pull origin $(git rev-parse --abbrev-ref HEAD)'
alias gfa='git fetch --all'

Git best practices

  • Formalize Git conventions for your team
  • Make clean, single-purpose commits
  • Write meaningful commit messages
  • Commit early, commit often
  • Don’t alter published history
  • Don’t commit generated files

Work with Git example

Git conflicts

Git conflicts

Example

Git conflicts

Разница между git merge и git rebase или чем опасен push -f

Bonuses

  • cowsay/cowthink
  • sl
  • fortune (+cowsay)
  • cmatrix
  • thefuck

Bash + Git

By Startup Summer