2012-10-30 16 views
0

下面是文檔:賽帝 - 如何產生packagist packages.json集名稱

這裏是我的config.json文件

{ 
    "autoload": { 
     "psr-0": { "": "src/" } 
    }, 
    "name": "Local Packagist", 
    "homepage": "http://blah/packagist", 
    "repositories": [ 
     { "type": "vcs", "url": "http://blahsvn/myProject/my-bundle" } 
    ], 
    "require-all": true 
} 

運行後satis build命令我在我的composer.json文件中看到了這個(參見這裏):

{ 
    "require": { 
     "myProject/my-bundle": "2.1.*" 
    }, 
    "repositories": [ 
     { 
      "type": "package", 
      "package": { 
       "name": "myProject/my-bundle", <-- HERE 
       "version": "2.1.1", 
       ... 
      } 
     } 
    ] 
} 

當我生成packages.json文件,我看到這個(見這裏):

{ 
    "packages": { 
     "myProject/not-my-bundle-name": { 
      "2.1.1": { 
       "name": "myProject/not-my-bundle-name", <-- HERE 
       "version": "2.1.1", 
       ... 

我如何獲得這兩個匹配,所以我可以與作曲家拉?

回答

1

運行satis構建時,會得到一個packages.json,其中包含它在您配置的存儲庫中找到的所有信息。因此,如果http://blahsvn/myProject/my-bundle在trunk /中有一個composer.json文件,它將定義該包的名稱。如果名稱與您想要的名稱不符,請確保將其更改爲中繼線。

然後,您在項目的composer.json中添加的內容是類型爲「composer」的存儲庫,並且URL指向您滿意的repo。做不是重新定義了包,否則你失去了滿足的全部。它應該看起來像這樣:

{ 
    "require": { 
     "myProject/my-bundle": "2.1.*" 
    }, 
    "repositories": [ 
     { 
      "type": "composer", 
      "url": "http://blah/packagist" 
     } 
    ] 
} 

這就是假設http://blah/packagist/packages.json是通過滿足轉儲的東西。

注意:您不必在satis config.json中定義任何自動加載。

+0

謝謝,我認爲這是問題所在。我在trunk中的composer.json文件中命名了其他名稱。爲了我的理解,composer爲每個項目執行所有的composer.json文件,對嗎? –

+0

不確定你的意思是「執行每個項目的所有composer.json文件」。 – Seldaek