2014-11-06 42 views
-2

如果一個應用程序的某個特定組件與父應用程序的解耦足以使其可以被其他應用程序使用,那麼我該如何將該組件放入其自己的作曲程序包中,但仍然將其保留在父應用程序的範圍內?如何將應用程序的解耦組件包裝到其自己的包中,但仍然將其保存在父應用程序中?

舉個例子,我想達到什麼樣的Laravel確實與它的數據庫組件:https://github.com/illuminate/database

既然說只讀的,我印象中是「樹」還是從父維持下laravel/framework git存儲庫,但仍保留常規git repo的特性,以便將其作爲Composer包進行分發。

我的印象是否準確?我如何實現這個魔法?

在此先感謝。

回答

0

這是通過使用Git樹分裂完成,因爲解釋in GitHub help

$ git filter-branch --prune-empty --subdirectory-filter \ 
YOUR_FOLDER_NAME master 
# Filter the master branch to your directory and remove empty commits 
# Rewrite 48dc599c80e20527ed902928085e7861e6b3cbe6 (89/89) 
# Ref 'refs/heads/master' was rewritten 

現在YOUR_FOLDER_NAME文件夾已經成爲你的項目的根,你可以把這個到另一個遠程(另一個倉庫)。該另一個存儲庫現在只包含YOUR_FOLDER_NAME,您可以爲此創建一個包。

相關問題