这对我来说根本不清楚:http://git-scm.com/2010/04/11/environment.html
据我所知,我不能对单个的仓库这样做。这些命令不够清晰…
据我所知,我可以这样做:
GIT_DIR="directory here"
然而,这看起来像是Git repos的Git文件夹的全局目录。是这样的吗?
我该如何设置Git目录只用于这个repo?
谢谢你的帮助。如果它太蠢了,我很抱歉,但它真的让我很困惑。
您可以通过将.git
文件夹替换为包含gitdir: <path>
的.git
文件来重新定位任何repo的存储库文件夹。该路径将指向另一个文件夹,该文件夹将充当您的存储库文件夹。
注意:<path>
包含存储库文件夹的名称,而不仅仅是.git
文件夹的路径。
您可以使用它将所有存储库文件夹存储在具有唯一名称的单个位置。您仍然可以在.git
文件所在的位置执行git命令。
GIT_DIR, GIT_WORK_TREE等只是环境变量,如果设置了,git会使用它们。如果你全局设置它们,它们将全局应用,可能会把一切都搞砸。如果您在执行git init
时设置了它们,它将创建具有适当配置的repo,以便在env未设置后继续工作。
如果您正在使用环境变量,则必须在使用它之前为每个存储库设置它。您可以通过设置正确环境变量的特殊批处理文件启动shell/程序来实现这一点。像这样,它不会影响其他进程,因为环境变量只会为当前进程及其子进程设置。