我的一个 friend 写了一个irc bot,代码在github上。我做了一个 fork ,写了一些插件并推送到我的 fork 上。原始 repo 的所有者将插件文件夹移动到一个子模块(我什至不明白,我从来没有真正使用过 git)并且获取和 merge 失败,我不知道出了什么问题。
所以我删除了我的 fork,然后重新 fork,但是当我执行 git clone {my github fork}
时,我有一个空的插件文件夹。我不确定我做错了什么,或者派生一个包含子模块的 repo 协议(protocol)的正确方法是什么。 :/
@manojlds 下面的回答确实捕获了子模块并捕获了放在插件目录中的东西,但是如果我尝试添加一个文件并推送我不能,因为它指向原始子模块。我现在也 fork 了子模块,我只是不知道如何让我的主 repo 指向我 fork 的子模块而不是上游子模块。
最佳答案
你可以运行:
git submodule update --init --recursive
(或者您可以使用 --recurse-submodules
选项进行克隆)
插件文件夹将被填充。如果您不了解子模块,请在此处阅读:http://book.git-scm.com/5_submodules.html
关于git - 用子模块 fork github repo?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9493645/