zoukankan      html  css  js  c++  java
  • Should I commit the dependencies in my vendor directory?

    原文链接

    The general recommendation is no. The vendor directory (or wherever your dependencies are installed) should be added to .gitignore/svn:ignore/etc.

    The best practice is to then have all the developers use Composer to install the dependencies. Similarly, the build server, CI, deployment tools etc should be adapted to run Composer as part of their project bootstrapping.

    While it can be tempting to commit it in some environment, it leads to a few problems:

    • Large VCS repository size and diffs when you update code.
    • Duplication of the history of all your dependencies in your own VCS.
    • Adding dependencies installed via git to a git repo will show them as submodules. This is problematic because they are not real submodules, and you will run into issues.

    If you really feel like you must do this, you have a few options:

    1. Limit yourself to installing tagged releases (no dev versions), so that you only get zipped installs, and avoid problems with the git "submodules".
    2. Use --prefer-dist or set preferred-install to dist in your config.
    3. Remove the .git directory of every dependency after the installation, then you can add them to your git repo. You can do that with rm -rf vendor/**/.git in ZSH or find vendor/ -type d -name ".git" -exec rm -rf {} ; in Bash. but this means you will have to delete those dependencies from disk before running composer update.
    4. Add a .gitignore rule (/vendor/**/.git) to ignore all the vendor .git folders. This approach does not require that you delete dependencies from disk prior to running a composer update.
  • 相关阅读:
    从汇编的角度看待const与#define
    从汇编的角度看待变量类型与sizeof的机制
    按字节对齐分析
    堆内存和栈内存的探索
    string源码实现分析
    string源码分析 ——转载 http://blogs.360.cn/360cloud/2012/11/26/linux-gcc-stl-string-in-depth/
    开始了
    atoi函数的实现——面试
    new与malloc的区别,以及内存分配浅析
    [C]C语言中EOF是什么意思?
  • 原文地址:https://www.cnblogs.com/ch459742906/p/8032856.html
Copyright © 2011-2022 走看看