2017-02-14 74 views
1

我正在開發我的第一個Laravel軟件包,並且我意識到我的工作流程包含發佈每個修改的更多步驟。開發Laravel軟件包的工作流程

這是我的工作流程:

  1. 我創建一個全新的Laravel 5.4安裝。在裏面,我創建了一個package/author/name/src,並在其中編寫我的插件。
  2. 我跑我的測試
  3. 一旦我做了我的變化,並希望將其發佈: 艾它推到我的Git代表 BI標記它的版本號 c.In我的主要項目,我跑作曲家更新
  4. 我檢查,沒有什麼與集成

這是相當多的每個變化不大,我想在我的主要項目看變化的爆發....

有沒有辦法不公佈任何單一的變化,只是做本地?

+0

以下,我很想看到一個很好的工作流程。 –

回答

1

是的,你可以在本地開發一個包並使用它而不用發佈它。工作流程是:創建Laravel項目的包目錄之外,那麼在它創建的包目錄,例如目錄結構應該是這個樣子:

- my-laravel-project 
- packages 
- - my-package-1 
- - - composer.json 
- - my-package-2 
- - - composer.json 

然後,在你Laravel項目composer.json文件,添加repositories部分像下面給出一個條目添加到require部分爲每個本地套餐爲例:

{ 
    "repositories": [ 
     { 
      "type": "path", 
      "url": "../packages/my-package-1" 
     }, 
     { 
      "type": "path", 
      "url": "../packages/my-package-2" 
     } 
    ], 
    "require": { 
     "my/package-1": "*", 
     "my/package-2": "*" 
    } 
} 

在這個例子中,我裏面packages目錄兩個不同的包,我已經加編輯了Laravel項目中的兩個包。 repositories部分描述了每個軟件包的軟件包類型和路徑/ URL,因此作曲者可以在本地找到它們,並且require節正像往常一樣需要依賴關係。您可以在Composer's website上查看更多信息。

+0

但我不需要2 composer.json? 1代表開發者,1代表主人? –

+0

'composer.json'每個包總是一個。 –

+0

,但對於我的prod應用程序,我應該想要「url」:「https://url-to-git.git」 },而不是路徑到本地包?這可以用於開發,但不適合prod,我錯了嗎? –