嵌套存储库。 Git的。更改工作目录

时间:2016-05-14 18:24:44

标签: git

我有什么 我在另一个内部有一个Git Repository。 像

Repo1/
     .git
      fileOfRepo1
      Repo2/
          .git
           fileofRepo2

我在repo1和repo2中做了一些提交。

HERE是问题 在对以前的repo1提交进行checkout时,我希望将我的文件更改为先前提交的文件。对于Repo2的文件而言,这种情况就会发生。它不适用于Repo2的文件。

然而,它确实认识到这里发生的事情是我如何知道的

如果我在分支主机上的最后一次Repo1提交中,我获得

$ git status
On branch master
nothing to commit, working directory clean

然而,在我做完

之后

$ git checkout SHA

我获得了

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

        modified:   Repo2 (new commits)

no changes added to commit (use "git add" and/or "git commit -a")

如果我使用子模块,我会输入:git submodule update,我会得到所需的行为,但我不想使用子模块。请严格没有子模块建议。我能否更清楚地了解没有子模式。

我使用本地存储库只是为了组织我自己的项目。

1 个答案:

答案 0 :(得分:0)

所以看来git忽略了自己的git repos子文件夹。因此,它不会递归到子仓库,因此当您在父仓库中签出不同版本时,状态不会发生变化,从而导致无法获取与父仓库相关联的子版本。