0

我有一个超级项目,我在项目中添加了一个子模块,我已经重命名了子模块所在的目录并编辑了相应的文件。

反正,

经过大量工作后,我cd进入了子模块目录,运行时git status我收到这些可爱的消息,通知我已删除我的一个文件夹,并通过关联所有内容并显然添加了更改,因此它们已准备就绪提交。我不记得这样做了。

然而,如果我跳入我的文件浏览器,文件就在那里。现在这些文件包括我也修改过的一些文件,但修改不会显示在 git status 中,就 git 而言,我已经删除了该文件夹。

那么,下一个是,

如果我这样做,git pull我会收到一条消息,通知我拉取将覆盖我提到我已更改的文件中的更改。但不要出现在 git status 中,我应该提交或存储文件。

但是,运行git add /path/to/file.ext我得到fatal: pathspec 'path/to/file.ext' did not match any files了这很有意义,因为 git 认为我已经删除了该文件夹。

这里发生了什么?

我想我可以使用git reset HEAD path/to/file.ext.

但是,我对所谓的已删除文件所做的更改会怎样?

另外,从子模块内部,如果我调用git add <path to folder inside submodule>最初拉出子模块时不存在的目录,那么我会得到fatal: '<path to folder inside submodule>' is outside repository

4

0 回答 0