[英]Git submodules in github repo
在我的項目中,即時通訊使用了第三方庫。 我已經在我的項目中git克隆了這個lib,然后在lib文件夾中完成了git submodule init
和git submodule update
。 我將主項目推送到github,但未發送該第三方lib的內容,並且lib文件夾在github項目存儲庫中看起來像綠色文件夾。
如果我在另一台機器上克隆我的主項目,我那里沒有lib的內容,那么我應該在機器上再次git克隆lib並再次運行init和update命令,或者是否有任何方法可以推送我的github存儲庫的第三方庫?
謝謝
請注意,自2013年4月30日起,當您在github.com上查看帶有子模塊的存儲庫時,會獲得該子模塊的有用鏈接和信息:
現在,您可以看到子模塊指向的確切引用。
Repository Contents API將反映該SHA1。
curl https://api.github.com/repos/jquery/jquery/contents/test/qunit
{
"name": "qunit",
"path": "test/qunit",
"type": "submodule",
"submodule_git_url": "git://github.com/jquery/qunit.git",
"sha": "6ca3721222109997540bd6d9ccd396902e0ad2f9",
"size": 0,
"url": "https://api.github.com/repos/jquery/jquery/contents/test/qunit?ref=master",
"git_url": "https://api.github.com/repos/jquery/qunit/git/trees/6ca3721222109997540bd6d9ccd396902e0ad2f9",
"html_url": "https://github.com/jquery/qunit/tree/6ca3721222109997540bd6d9ccd396902e0ad2f9",
"_links": {
"self": "https://api.github.com/repos/jquery/jquery/contents/test/qunit?ref=master",
"git": "https://api.github.com/repos/jquery/qunit/git/trees/6ca3721222109997540bd6d9ccd396902e0ad2f9",
"html": "https://github.com/jquery/qunit/tree/6ca3721222109997540bd6d9ccd396902e0ad2f9"
}
}
是的,子模塊本質上是它自己的git存儲庫。 父git項目僅引用特定的提交。 有關如何維護它們的詳細信息,請參考git子模塊的幫助。 是的,您確實需要初始化和更新每個子模塊的存儲庫,但是,您會發現有一些命令(在幫助中)可以為您做很多事情。
我遇到了同樣的問題:我想從github上托管的項目存儲庫中嘗試一些代碼,所以我克隆了它。 在我的同事告訴我有關魔咒的內容之前,沒有任何構建命令起作用:
git子模塊更新--init
正確克隆了倉庫中引用的子模塊。 從“ git submodule help”或“ man git-submodule”,這些對我來說都不是很清楚。
祝好運!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.