我将此添加到我的应用程序中:
https://github.com/fpotter/juggernaut-cocoa
在说明中,它说:
If you have git 1.7+ git clone git://github.com/fpotter/juggernaut-cocoa.git --recursive
它没有说克隆它的位置,所以我在我的Documents文件夹中克隆它。然后我将AsyncSocket.h,AsyncSocket.m,WebSocket.h,WebSocket.m,SocketIoClient.h,SocketIoClient.m,JuggernautClient.h,JuggernautClient.m文件复制到我在我创建的名为juggernaut-cocoa的文件夹中的项目中。
然而,当文件在我的本地机器上工作时,当我推送到github时,它们永远不会被添加。我只看到一个绿色的小文件夹:
http://i47.tinypic.com/2ajnkzl.jpg
但是当我尝试从另一台计算机克隆我的存储库时,文件不存在,它们从未添加到git中。
然后我尝试将他们的项目克隆到我的Vendor文件夹中,然后运行git submodule init但得到了这个:
No submodule mapping found in .gitmodules for path 'Vendor/juggernaut-cocoa'
答案 0 :(得分:0)
请注意,AsyncSocket.m
,WebSocket.h
,...都是github.com/erichocean/cocoa-websocket的文件,即:
因此,如果修改子子模块中的任何内容,则必须:
erichocean/cocoa-websocket
,但也fpotter/socketio-cocoa
(cocoa-websocket
的父回购),然后推送,然后fpotter/socketio-cocoa
(其父代仓库)中提交新的fpotter/juggernaut-cocoa
个回购ID,并推送... 所以请确保这是你真正想做/可以做的事情(因为你需要对这些仓库有写入权限,即被声明为协作者)。
关于您的错误消息,请检查No submodule mapping found in .gitmodule for a path that's not a submodule。
答案 1 :(得分:0)
如果您手动将其他项目中的文件复制到您的项目中,除非您添加它们,否则它们不会成为您的回购的一部分:
git add vendor/juggernaut-cocoa/
git commit
如果你想使用一个子模块,那么添加它不是通过手动克隆然后调用“git submodule init”来完成的。
相反,您只需致电git submodule add
。
首先,cd
到主项目的根目录。然后
git submodule add https://github.com/fpotter/juggernaut-cocoa vendor/juggernaut-cocoa
git commit