如何将远程仓库添加到自己的 git 仓库中

4

我有自己的git仓库,其中包含一些子文件夹,它们都属于我的git仓库。现在我想添加另一个子文件夹vendor,这个文件夹是我从远程github url中克隆来的。

但是,当我尝试提交新文件夹vendor及其内容(子文件夹、文件等)时,git告诉我没有更改,我不知道该如何添加这个新的子文件夹vendor


抱歉,我的回答有误。您能否按顺序列出您使用的所有git命令(包括您所在的工作目录)? - user1978011
通常情况下,vendor / 不应该 版本化。它通常是从 composer.jsoncomposer.lock 生成的。您是否有包含 vendor / 在您的存储库中的好理由? - Chris
2个回答

2

您的问题是您有一个Git仓库,其中包含另一个仓库。我不知道为什么,但有时Git会默默地忽略子目录,这些子目录本身就是Git仓库。

最干净的做法是将子文件夹vendor作为Git子模块添加。您可以通过以下方式完成:

git submodule add ./vendor

在您克隆供应商存储库后,它将成为您的父级git存储库(这就是您现在所在的位置)。解释子模块超出了简单帖子的范围。然而,您可以将其视为指向远程供应商存储库的指针,其他人可以使用该指针获取您的工作目录树的完整工作副本。请参阅。
git help submodule

了解详情,请参考。


谢谢!我尝试使用 git submodule add vendor,但是出现了错误响应:repo URL:“vendor”必须是绝对路径或以./|../开头。 - Hugo Casanova
1
抱歉,那是我的错误。你需要在 vendor 前面加上 ./ (即 ./vendor)。 - user1978011

1
尝试这个,它可能有帮助。
git status
git add
git commit
git push

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接