Venv、Pycharm、GIT 和 Github

Art*_*ent 6 git github pycharm python-venv

我只是一个业余程序员,但我的项目变得越来越复杂,所以我想使用版本控制系统。GIT 似乎是显而易见的选择。我还想要一个更复杂的 IDE - 并且与 GIT / Github 集成,所以我选择了 Pycharm。

在我的前几个测试项目中,一切都很好。我可以提交更改并将它们推送到我的 GIThub,然后从另一台计算机中提取它们并拥有一个同步项目。

我了解虚拟环境的好处(尽管对于我的小项目来说似乎没有必要),但我对 Pycharm 似乎想要将文件放在哪里有点困惑。此外,现在当我推送到 Github 时,Venv 文件夹也会上传。我不明白为什么我想要 venv 在我的 Github 存储库中(或者我应该?),所以我将它添加到我的 .gitignore

/venv/
/MyProject/venv/
PycharmProjects/MyProject/venv/
Run Code Online (Sandbox Code Playgroud)

但它仍然存在,并且仍在更新。我尝试在命令行中删除它:

$ git rm -r venv/
Run Code Online (Sandbox Code Playgroud)

这搞乱了我在 Pycharm 中的环境(即使实际目录仍然存在)。

我做错了什么 - 我该如何解决?

非常感谢!

小智 8

你是对的,通常你希望保持存储库中没有 ide 和 venv 特定文件。问题是,您从工作树中删除了该文件夹。所以它不仅仅是从 git 中删除,而是被删除了。使用来回滚您的删除。

要仅从 git 索引中删除文件或目录,您可以使用

git rm -r --cached venv/
Run Code Online (Sandbox Code Playgroud)

之后您可以提交更改,venv 现在应该不再被跟踪。

有关更多详细信息,我推荐本教程