将外部django应用程序合并到项目中并安全地进行本地更改的最佳方法

将外部django应用程序合并到项目中并安全地进行本地更改的最佳方法,第1张

概述我正在开发一个基于 django-lfs的电子商务网站,我发现我需要对django-lfs核心文件进行一些更改…即向模型添加其他属性,更新视图,添加网址模式我开始在我的 pythons site-packages路径中放置django-lfs,认为如果我需要对代码进行任何更改,我会重新定义url模式(在我需要做一些不同的事情的情况下)在视图中)或猴子补丁代码. 这背后的想法是,我能够保持原来的dj 我正在开发一个基于 django-lfs的电子商务网站,我发现我需要对django-lfs核心文件进行一些更改…即向模型添加其他属性,更新视图,添加网址模式我开始在我的 pythons site-packages路径中放置django-lfs,认为如果我需要对代码进行任何更改,我会重新定义url模式(在我需要做一些不同的事情的情况下)在视图中)或猴子补丁代码.

这背后的想法是,我能够保持原来的django-lfs主干干净和未触摸,允许我将其更新到最新版本,然后独立更新/测试写入的本地覆盖,子类和猴子补丁.

正如您可能已经猜到的那样,这很快成为管理的噩梦,所以我迫切需要更清洁,更稳定的解决方案.

客户端项目位于git repo中,因此我一直在研究子模块或子树合并策略……从我读过的所有内容中,我发现很难找到任何易于理解的明确答案(我是相对的新的git).

简而言之,我需要能够:

1)在主项目仓库中包含一个外部git存储库
2)直接对外部仓库进行更改(但是将其推送到项目git仓库而不是外部远程源)或创建外部仓库的本地副本,然后定期将外部仓库与复制的文件夹合并.

我不知道如何实现这一目标.要清楚,我想最终得到以下文件夹结构:

> PROJECT_name

>媒体
> TRUNK

> APPS

> django-lfs

> EXTERNAL-REPOS

> django-lfs

external-repos文件夹中的lfs应用程序应该能够从官方(外部)django-lfs存储库中下载更新,我应该能够自由地更改存储在APPS文件夹中的lfs文件夹.

我正在寻找的,如果可能的话,是一组git命令/指令来实现上述目的,并利用上面列出的真实文件夹,而不是使用foo和bar引用.

我紧紧地握住我的手指,希望有人可以提供一些建议:)

解决方法 我快速了解一下:要么将项目分配到 bitbucket或 github(取决于您对hg与git的偏好),并为您的更改创建分支.

这样可以更轻松地保持您的分支机构和官方主机同步.

然后,假设您使用pip virtualenv,在pip需求文件中添加指向repo / branch的指针.

不幸的是LFS使用buildout,所以不太确定python setup.py开发的等价物(即在你的virtualenv站点包中安装包,但链接回你的repo,这样你就可以进行更改而不必经常运行设置的.py).

总结

以上是内存溢出为你收集整理的将外部django应用程序合并到项目中并安全地进行本地更改的最佳方法全部内容,希望文章能够帮你解决将外部django应用程序合并到项目中并安全地进行本地更改的最佳方法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1196389.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-03
下一篇2022-06-03

发表评论

登录后才能评论

评论列表(0条)

    保存