git init --bare
使用--bare创建的repository没有工作目录, 在这个repository中不能修改文件和commit. 中心repository必须是bare repository,因为push分支到非bare repository会有覆盖修改的潜在风险.
我们这样想,--bare把repository标识为一个存储设备, 和development environment完全不同. 中心repository必须是bare repository, 而开发者的本地repositroy都是非bare的repository.