我读到,在git中使用to是不合适的,应该由requirements.txt来处理,但是我遇到了一个问题。
如果我在我的of中工作,并且我做了某个应用程序的pip安装,它会将它安装到venv站点-包中。如果我将它添加到installed_apps中,但是如果我在该目录中做了一些更改,那么它仍然可以正常工作吗?然后git不跟踪他们,我是运气不好,当我试图推动它。
做这件事的正确方法是什么?
编辑:我在这里一定有一个巨大的误解,所以让我用一个具体的例子来解释.
我看不出这些东西怎么会留在我的心中,除非是完全不可编辑的/不可追踪的。
发布于 2016-01-12 16:23:41
从您的编辑来看,您想要做的是分叉django消息库。这意味着将其安装到站点包中首先是个坏主意,因为站点包不应该被版本控制或编辑,所以它被指定用于第三方软件。你有两个选择。您可以从GitHub中获取源代码,并将其放在Django应用程序可以找到的地方(可能会篡改您的python ),并将这个位置添加到git中。甚至在github上做你自己的叉子。第二个选择是使用pip -e github.com/project来安装一个“可编辑”版本。第一种方法的优点是更好地控制您的更改,第二种方法的优点是让pip管理源代码下载和安装。
尽管如此,对于python环境来说,您似乎还是比较陌生的。你真的想自己做叉子吗?是否缺少要添加到消息库中的某些功能?您知道可以覆盖每个模板而不更改实际的库代码吗?
发布于 2016-01-12 16:04:56
这正是它应该工作的方式。您可以跟踪通过requirements.txt安装的库,该库与代码一起提交。您可以使用该文件生成您的venv,并在那里安装库。你不会在你的回购中包括蛇毒本身。
编辑你发现这很难的原因是,你不应该去做。不要改变第三方的项目,你永远不应该改变。它们是可配置的。
如果你真的找到了你需要修复的东西,按照评论中的建议去做,然后分叉这个应用程序。但这绝对不是你一直需要做的事情,这意味着你可能不知道如何在你自己的项目中配置应用程序。
例如,在定制模板的情况下,您可以简单地在自己的模板dir中定义模板,而不是编辑应用程序提供的模板;Django做了正确的事情,并首先使用了您的模板。
https://stackoverflow.com/questions/34748173
复制相似问题