把.git 本地仓库从项目中分离出去

随着.git下的文件数量越来越多,编辑器刷新文件时,越来越慢,然后想着把.git 目录从项目中分离

建一个目录用来存放这个.git目录

$ mkdir -p /Users/tiny/gitdir/Users/tiny/win/gameroot/game_root

然后把当前项目的.git文件移过去

$ mv .git/* /Users/tiny/gitdir/Users/tiny/win/gameroot/game_root

安装 direnv

安装后,在当前shell激活,把下面一行加入到~/.zshrc

eval "$(direnv hook zsh)"

然后在项目根目录,加入目录下的环境变量:

$ echo 'export GIT_DIR="/Users/tiny/gitdir/Users/tiny/win/gameroot/game_root"' > .envrc

运行 $ git status 检查git 是否正常使用

确定正常使用后,删除.git目录

$ rm .git

再次运行 $ git status 检查git 是否正常使用

发表于 2022.09.18