我有.git
目录,但我没有实际的工作目录,只有repo。我应该使用什么命令来重新创建工作目录?
git clone /path/to/repo
这将在当前目录下创建一个新的工作目录,并将repo中的所有内容复制到其中。我有.git
目录,但我没有实际的工作目录,只有repo。我应该使用什么命令来重新创建工作目录?
git clone /path/to/repo
这将在当前目录下创建一个新的工作目录,并将repo中的所有内容复制到其中。假设.git目录在一个名为“test”的空目录中。
git clone test new_test
现在,new_test将包含.git目录和工作副本。或者,您也可以直接指向.git目录:
git clone test/.git new_test
得到相同的结果。
.git
目录上运行git archive
以从工作树生成Tar文件。git --git-dir=/path/to/repo archive | tar x
以在您的工作目录中获得副本。我认为您实际上是在询问如何将裸仓库变成非裸仓库。虽然最简单的方法可能是再次克隆它,但以下方法也可以实现:
首先确保所有内部git文件(例如索引、HEAD)和文件夹(例如钩子、信息、对象、引用)都在名为.git的文件夹中。现在您的仓库仍然是裸仓库,这可能不是现在的情况。所以只需将其重命名即可。然后将其移动到您想要成为工作目录的文件夹中。
然后在工作目录级别上执行以下操作:
git config core.bare 0
git checkout -f
不过,重新克隆更容易 ;-)