2013-05-31 62 views
0

SVN的克隆/樹/過濾器僅子目錄:外部組件「http://svn.3rdapp.com/project/subdir/subdir/的lib/MYDIR /子目錄」混帳:第三方LIB

SVN允許開發包括第三方庫的子目錄成子目錄他們自己的回購。

我想只包含第三方庫的一個子目錄到我的項目中,可能是一個可編輯的子樹,並且新的上游更改與我的編輯合併。

具體來說https://github.com/openid/php-openid/tree/master/Auth包含在Vendor/Auth中,沒有來自其他目錄的任何文件或歷史記錄。

+0

相似的問題:[merge-subtree-merge-with-sparse-checkout-in-git](http://stackoverflow.com/questions/9707612/combine-subtree-merge-with-sparse-checkout-in- git) – MrYellow

+0

感謝downvote,只是因爲你沒有這種情況。我可能會在未來發佈一個答案,展示如何使用GIT與Bower/Grunt等來克服這些設計中固有的缺點。 – MrYellow

回答

0

您可以使用版本1.7.0中引入的Git的sparseCheckout功能。它允許您在項目中包含存儲庫的特定子目錄。試試這個步驟如下:

  1. 混帳克隆https://github.com/openid/php-openid.git供應商/驗證
  2. CD供應商/驗證
  3. 混帳配置core.sparsecheckout真正
  4. 呼應認證/>的.git /信息/稀疏結賬
  5. GIT中讀樹-m -u HEAD

在上述步驟#4中,驗證子目錄(你はnt使用)被添加到.git/info/sparse-checkout文件中。

如果稍後您決定更改要使用的子目錄,則只需編輯稀疏結帳文件並重做第5步。

+0

是否有可能使用sparsecheckout和閱讀樹與子樹?能夠更新獨立於主要回購的第三方庫是很好的。 – MrYellow