在做一个git clone --mirror哪里是实际的文件?

cpa*_*cpa 6 git mirror git-clone

我在github上有一个项目,我想在我的服务器上镜像.

我尝试过以下几点:git clone --mirror git@github.com:user/repo.git.

然后在repo.git目录中,我有以下文件结构(例如,输出ls):

FETCH_HEAD branches/ description info/ packed-refs HEAD config hooks/ objects/ refs/

所以我的问题是:我的文件在哪里!?看起来有一堆git相关的东西,但我找不到我写的代码.我错过了一些明显的东西吗

顺便说一句,git status返回fatal: This operation must be run in a work treegit branch返回分支.奇怪的.

Mik*_*itz 10

当你git clone --mirror,它产生一个裸存储库,所以它没有工作区.我--mirror经常使用我的工作仓库的只读克隆,供其他人使用.

听起来你可能应该省略该--mirror选项.

git clone手册页:

--mirror
设置源存储库的镜像.这意味着--bare.相比之下--bare,--mirror不仅将源的本地分支映射到目标的本地分支,它还映射所有引用(包括远程跟踪分支,注释等)并设置refspec配置,以便所有这些引用都被git远程覆盖在目标存储库中更新.

要完全清楚,裸镜像仓库确实具有从中克隆的存储库的全部内容,但它没有可以查看这些文件的工作区.如果从镜像clone(git clone /path/to/local/mirror_repo.git)中克隆,则可以在新的非裸存储库中获取工作树.