首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python 学习手册
Python Cookbook
Python 基础教程
Python Sites
PyPI - Python Package Index
http://www.simple-is-better.com/
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
Coding
V2EX  ›  Python

Python 多个本地项目如何共用模块?

  •  
  •   corningsun · 2017-11-01 15:54:08 +08:00 · 2433 次点击
    这是一个创建于 771 天前的主题,其中的信息可能已经有所发展或是发生改变。

    例如,

    项目 A projectA 项目 B projectB

    中有相同的模块 C,现在想拆分一个 projectC 出来,以减少代码冗余。

    项目都是通过 pip 管理的依赖包的,但是把 projectC 发布到 PyPI 不太合适。


    想到的解决方法是,参考 maven 私库,弄个内部服务器,但还是觉得比较麻烦。

    还有更好的解决方法吗?

    11 回复  |  直到 2017-11-02 09:08:57 +08:00
        1
    TimePPT   2017-11-01 17:04:28 +08:00   ♥ 1
    pip 支持从 VCS 安装,把 project c 本地打包,上传到公司的 VCS 上,
    install 时候带相应参数及 VCS 地址就行

    http://pip-cn.readthedocs.io/en/latest/reference/pip_install.html#vcs-support
        2
    roricon   2017-11-01 17:09:17 +08:00   ♥ 1
        3
    wellsc   2017-11-01 17:09:38 +08:00
    1.PYTHONPATH 2.封装成私有依赖包(放到 git remote repo 就可以了) 3.封装成服务
        4
    bonfy   2017-11-01 17:13:58 +08:00
    难道是 共用一个数据库模型?
        5
    Hstar   2017-11-01 17:18:33 +08:00
    git 子模块。
    或者打包成包,自己搭建一个私有 pip 源,然后发布上去。
        6
    janxin   2017-11-01 17:23:18 +08:00
        8
    ipconfiger   2017-11-01 17:31:53 +08:00
    不涉及业务的一般都发到 Pypi 上了
        9
    xiaobeitzb   2017-11-01 17:38:16 +08:00   ♥ 1
    自己搭一个 pypi-server (炒鸡简单) ,然后在需要拉取的机器上修改 ~/.pip/pip.conf

    [global]
    index-url = http://pypi.douban.com/simple
    extra-index-url = http://<your pypi server ip : port>/simple/
    [install]
    trusted-host = pypi.douban.com <your pypi server ip : port>

    即可
        10
    wcsjtu   2017-11-01 17:58:00 +08:00   ♥ 1
    pip install svn+svn_repo_url

    pip install git+git_repo_url
        11
    corningsun   2017-11-02 09:08:57 +08:00
    谢谢大家

    综合来看,git submodule 更符合我的需求,我去实验了,🙏
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3336 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 24ms · UTC 04:55 · PVG 12:55 · LAX 20:55 · JFK 23:55
    ♥ Do have faith in what you're doing.