Bare repositories are repos that can do everything except make commits. Best used in environments where you need to store the files of a repo but you won't use it for actual development, such as a web server or shared central repository. GitHub is one such example of a central repository.
You can push
to and pull
from a bare repo.