簡體   English   中英

不具有.git目錄的Composer從私有GIT存儲庫安裝軟件包

[英]Composer install package from private GIT repository without the .git directory

我有一個項目X,它依賴於模塊Y。它們都是我的私人項目。 每個人在bitbucket上都有自己的git存儲庫。 每個都有一個composer.json。

當我在項目X上運行composer install時,它會從其存儲庫中獲取Y並將其推到X的vendor目錄中。

問題在於它還會在vendor/jodes/Y/一個.git目錄。

這是一個問題,因為某些東西會不斷打開該.git目錄中的文件,這意味着我的[持續集成]腳本無法在重復該過程時刪除.git目錄。 我認為這是我的IDE。

我如何才能使作曲家從存儲庫中獲得Y,而無需建立`.git`目錄?

X的composer.json是:

{
    "name": "jodes/X",
    "require": {
        "jodes/Y": "dev-master"
    },
    "repositories": [
        {
            "type": "vcs",
            "url": "https://Jodes@bitbucket.org/Jodes/Y.git"
        }
    ]
}

看來,作曲家基本上是運行git clone來從存儲庫中獲取? 相反,有沒有辦法使其類似於git archive進入vendor目錄? (而不是zip文件)。

作為一種解決方法,我嘗試將我的IDE(Netbeans)配置為忽略.git目錄,但是在嘗試刪除它時,我的腳本仍會收到“權限被拒絕”錯誤。

另外,我還想利用git archive的其他優點,例如能夠指定文件或目錄或其他將要從歸檔中排除的模式。

composer [install|update] --prefer-dist

應該可以。

默認情況下,尤其是在引用分支時,尤其是在引用分支(而不是標簽(“版本”)時)時,作曲家更喜歡將依賴項作為源來獲取。 如果指定--prefer-dist ,則明確告訴作曲家改用歸檔文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM