更准确地说,我相信“git clone”会成功,但会立即删除我生成的本地 repo 中的所有文件。可以在此处找到类似的问题,但我想不出一种方法可以将我对这个问题的扭曲作为答案,所以我来了。
以下是我的场景细节的概要:
我在 github 上有一个存储库。我可以像任何人期望的那样在 Ubuntu 12.04 上使用 git 克隆这个存储库。当我尝试克隆 wiki 时出现问题(github 可以通过https://github.com/<owner>/<repository>.wiki.git访问它)。我生成的本地副本是空的。运行“git status”后,我注意到 repo 的内容在克隆后立即被某个实体删除。
在分支主
要提交的更改:
(使用“git reset HEAD ...”取消暂存)
已删除:<文件名>
...对于我的 wiki 中的所有其他页面,依此类推。
“git branch -a” 为我和另一个人返回相同的东西:
*掌握
遥控器/原点/头 -> 原点/主
遥控器/原点/主控
更新 1
确实,我不知道暂存区和工作目录之间的区别,但这似乎不是问题。另一方面,它可能揭示了更多的错误。
我忘了提到,当我第一次克隆存储库时,我收到消息“无法统计 <long_filename>:文件名太长”
当我运行“git reset”时,所有的删除都列在“reset after unstaged changes:”下。奇怪的是 <long_filename> 被列为合并而不是删除。尽管如此,重置后我克隆到的目录中仍然看不到任何文件。
更新 2
我可以使用克隆文件夹中的 gitk 查看所有应该存在的 wiki 条目,但我很确定这些文件在我的文件系统的任何地方都没有以原始格式存在,否则“find / -name <filename> 2> /dev/null" 应该返回一些有用的输出。
更新 3
显然我的一个文件名太长了,git 无法管理。克隆后再次检查 repo 得到了所有文件,但那个文件:
error: unable to create file <filename>.md (File name too long)