我正在尝试复制包含多个子模块的https://github.com/owncloud/news-iOS-App存储库。我已经指出要进行递归克隆并对SO进行一些搜索。它似乎应该很简单:
git clone --recursive
不幸的是,这让我开始了,我似乎无法弄明白。这是整个终端对话框:
ctsi-macmini:Documents ivan$ git clone --recursive https://github.com/owncloud/news-iOS-App.git
Cloning into 'news-iOS-App'...
remote: Counting objects: 2973, done.
remote: Total 2973 (delta 0), reused 0 (delta 0), pack-reused 2973
Receiving objects: 100% (2973/2973), 6.88 MiB | 502.00 KiB/s, done.
Resolving deltas: 100% (1845/1845), done.
Submodule 'AFNetworking' (https://github.com/AFNetworking/AFNetworking.git) registered for path 'AFNetworking'
Submodule 'JCGridMenu' (https://github.com/joecarney/JCGridMenu.git) registered for path 'JCGridMenu'
Submodule 'KSCrash' (https://github.com/kstenerud/KSCrash.git) registered for path 'KSCrash'
Submodule 'MMDrawerController' (https://github.com/mutualmobile/MMDrawerController.git) registered for path 'MMDrawerController'
Submodule 'MMDrawerController-Storyboard' (https://github.com/TomSwift/MMDrawerController-Storyboard.git) registered for path 'MMDrawerController-Storyboard'
Submodule 'Objective-C-HTML-Parser' (git://github.com/tresni/Objective-C-HMTL-Parser.git) registered for path 'Objective-C-HTML-Parser'
Submodule 'PDKeychainBindingsController' (https://github.com/carlbrown/PDKeychainBindingsController.git) registered for path 'PDKeychainBindingsController'
Submodule 'SDWebImage' (https://github.com/rs/SDWebImage.git) registered for path 'SDWebImage'
Submodule 'TSMessages' (https://github.com/toursprung/TSMessages.git) registered for path 'TSMessages'
Submodule 'TUSafariActivity' (https://github.com/davbeck/TUSafariActivity.git) registered for path 'TUSafariActivity'
Submodule 'readable' (https://github.com/JanX2/readable.git) registered for path 'readable'
Cloning into '/Users/ivan/Documents/news-iOS-App/AFNetworking'...
Cloning into '/Users/ivan/Documents/news-iOS-App/JCGridMenu'...
Cloning into '/Users/ivan/Documents/news-iOS-App/KSCrash'...
Cloning into '/Users/ivan/Documents/news-iOS-App/MMDrawerController'...
Cloning into '/Users/ivan/Documents/news-iOS-App/MMDrawerController-Storyboard'...
Cloning into '/Users/ivan/Documents/news-iOS-App/Objective-C-HTML-Parser'...
Cloning into '/Users/ivan/Documents/news-iOS-App/PDKeychainBindingsController'...
Cloning into '/Users/ivan/Documents/news-iOS-App/SDWebImage'...
Cloning into '/Users/ivan/Documents/news-iOS-App/TSMessages'...
Cloning into '/Users/ivan/Documents/news-iOS-App/TUSafariActivity'...
Cloning into '/Users/ivan/Documents/news-iOS-App/readable'...
Submodule path 'AFNetworking': checked out '88f13053b1d1f20bf657f5c36459b87a5d317ad7'
error: no such remote ref 7375ddeb8db22b9c73c8db2ddd810652c23e19ea
Fetched in submodule path 'JCGridMenu', but it did not contain 7375ddeb8db22b9c73c8db2ddd810652c23e19ea. Direct fetching of that commit failed.
另一方面,我的队友设法克隆了计算机上的一些子模块,调用了相同的命令,但不是整个。
如果您有任何提示,我将不胜感激。
答案 0 :(得分:1)
签出子模块的正常程序是
克隆MainProject然后转到项目并运行
$ git submodule init $ git submodule update
另一种方式是你做的那个 $ git clone --recursive。 如果仍然出现错误,请转到.git目录并打开配置文件。确保提到的子模块具有正确的URL。
答案 1 :(得分:0)
在这种情况下,问题是https://github.com/owncloud/news-iOS-App处的父存储库包含对https://github.com/joecarney/JCGridMenu存储库的子模块引用。然而,从那里引用的特定提交不再可以从任何分支或标签到达。似乎提交被意外推动,后来又被强行推送了。
因此,一般来说,你的方法很好。在这种情况下,父存储库具有无效引用,需要由存储库所有者修复。