Git:裸存储库转换为工作:撤消此操作

标签 git

我担心这可能处于可接受的 SO 问题的边缘,但无论如何:

注意到我的 git 存储库上有一些奇怪的地方,即一个新的主远程分支,我登录到远程服务器进行查看。我认为该存储库是裸露创建的,因为它具有 .git 扩展名。

查看命令历史记录,似乎有人以 root 身份在该存储库目录中调用了以下命令:

git init
git add .
git commit

我假设这已将裸存储库转换为工作副本,当然添加了内容(如果它是裸存储库,则不会包含任何可编辑的源代码?)并将其提交给默认主控。

当我克隆这个仓库、进行 pull 、 checkout 、列出远程分支等时,我只得到一个 origin/master,并且该目录只包含钩子(Hook)、对象、引用、信息等。在 .git 下找到的正常内容。没有代码。

我想我的问题有两个部分:

1)这是对裸存储库所做的相当愚蠢的事情还是这是可接受的用法 - 即我只是克隆/pull/ checkout 错误而一切都很好?

2)我们如何恢复远程分支?

最佳答案

我或多或少地复制了您的问题,并且可以通过删除作为 git init 的一部分创建的 .git 目录来解决它。这会将存储库转换回裸存储库。你也可以尝试一下。最好对目录进行备份,以防它不起作用。

关于Git:裸存储库转换为工作:撤消此操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25445653/

相关文章:

Git Directory Diff 在我的子模块中不起作用

git - 如何: find string in GitHub repo?

svn - Git SVN 和外部

git - 设置 GIT_DISCOVERY_ACROSS_FILESYSTEM 以允许服务访问存储在符号链接(symbolic link)下的 git repo

xcode - Xcode 项目的本地客户端服务器 Git 设置

Git 列出所有分支标签和 Remote ,以及提交哈希和日期?

ruby - 备份所有 git repos 并使用相同脚本设置 cron 作业的脚本

git - 在 Windows 7 的 git bash 中打印欢迎消息

git - 将 git 存储库的一部分推送到 heroku

git - git中的哈希冲突