是否可以克隆git存储库,并拆分克隆存储库,跟踪原始存储库的更改?

时间:2013-06-07 21:26:41

标签: git build jenkins continuous-integration

这可能有点不寻常,但我说有一个 git 存储库A:

A/project1/...   
A/project2/...   
A/project3/...

将此存储库克隆到B:

B/project1/...   
B/project2/...   
B/project3/...

我想要做的是以某种方式将项目文件夹及其内容拆分为单独的单元。如果该单元是分支存储库或其他什么并不重要,重要的是我需要能够从存储库A上游有效地获取更改,以B的单位跟踪。

为什么?

我想使用Jenkins并且仅在项目包含更改时构建项目,并且Jenkins支持单个存储库或分支。但是,我无法更改原始存储库A.其他解决方案当然也非常受欢迎。

1 个答案:

答案 0 :(得分:1)

Sparse checkouts可能会有所帮助。

  1. 您需要克隆存储库A.
  2. 然后你必须配置稀疏结账(克隆后):
    • git config core.sparsecheckout true
    • echo project1/ > .git/info/sparse-checkout
  3. 然后您需要致电git read-tree -m -u HEAD
  4. 备注

    然而,稀疏结账不是真正独立的。我们假设您只想project1。在您的案例中由project2project3引入的更改将表明您的稀疏结帐已更改。

    <强>参考