Django,PyCharm和多个git遥控器

问题描述 投票:0回答:1

我不知道我的问题是否与github或git或PyCharm ...有关

我有一台笔记本电脑(L)和一台固定的PC 1(= P1)。

我已经在github上制作了一个git repo,而我在P1上做了很多工作。然后提交并在github上推送我的所有工作。

从L,我做了一个git clone,它确实很好用。

现在,我在Django static/vendors文件夹中添加了一个新库。这就是咆哮。我是从here获得的。我使用git clone https://github.com/goldfire/howler.js.git添加了它。与另一个称为swiper的库相同:git clone https://github.com/nolimits4web/swiper.git

问题是PyCharm在vcs中添加了2个git存储库,它们在我的'原始'github远程目录中不可见:当我提交+推送我的工作时,所有内容都被提交+推送except这两个库。从PyCharm菜单中,如果我执行VCS-> git-> Remotes,则得到以下信息:

Git Remotes

因此,当我从笔记本电脑上进行git pull时,它会获得所有这两个库except。我该怎么做才能将这些存储库添加到我的github存储库中,然后可以从任何其他PC上创建一个git clone,然后再创建一个git pull,并且也可以获取这些库?

git github pycharm
1个回答
0
投票

Git对此很聪明,并且将咆哮和掠夺视为不属于您的项目,因为您已经克隆了它们。它把它当作一个子模块,但是您可能没有.gitmodules文件来处理。您可以做两件事:

  1. 将子树用作子模块。在此处查看文档:https://git-scm.com/docs/gitmodules

  2. 或者,简单的方法:在咆哮和掠过的子树中删除.git目录。然后git将不再将它们视为子模块,但是您将无法git pull来使其保持更新。


0
投票

这与获得软件包的目的背道而驰。最佳做法是将您的源代码保存在git中,并将包保留在其中。如果您的源代码包含运行所需的必需软件包的列表,则每当在新计算机上克隆存储库时,都必须安装这些软件包。

而不是使用git clone,我建议使用此命令:git submodule add https://github.com/goldfire/howler.js.git howler

使用此子模块将在您的存储库中创建一个。gitmodules文件,如下所示:

[submodule "howler"]
    path = howler
    url = https://github.com/goldfire/howler.js.git

这将使您跟踪项目中已安装和正在使用的所有软件包。

如果您的仓库中确实需要这些软件包。删除两个软件包中的。git隐藏文件夹,然后进行git添加,提交并推送到存储库。

© www.soinside.com 2019 - 2024. All rights reserved.