禁用git clone的作曲家缓存

时间:2018-11-08 06:23:17

标签: git composer-php

当作曲家尝试从Bitbucket克隆我的git repo时,它会从缓存中加载它。如果未加载来自主服务器的最新提交,则会导致回购过时。每次清除作曲家的缓存似乎很麻烦。 我想强制作曲家永远不要从缓存中加载此仓库。 --prefer-source可以解决问题。但是如何以最好的方式做到这一点。如何在下面的代码中添加强制无缓存?

 "mybbrepo": {
        "type": "package",
        "package": {
            "name": "project/mybbrepo",
            "version": "1.0",
            "type": "drupal-theme-custom",
            "source": {
                "url": "git@bitbucket.org:project/mybbrepo.git",
                "type": "git",
                "reference": "master"
             }
        }
    },

1 个答案:

答案 0 :(得分:1)

问题不在Composer的缓存中-您为存储库使用了错误的类型。您应该使用vcs作为类型:

"mybbrepo": {
    "type": "vcs",
    "url": "git@bitbucket.org:project/mybbrepo.git"
},

package类型仅应用于非编写程序包(内部没有composer.json文件)-通常应避免使用它,因为它有很多限制:

  

注意:此存储库类型有一些限制,应尽可能避免:

     
      
  • 除非您更改version字段,否则Composer不会更新软件包。
  •   
  • Composer不会更新提交引用,因此,如果使用master作为引用,则必须删除该软件包以强制执行   更新,并且必须处理不稳定的锁定文件。
  •