在git add之后缺少存储库中的文件夹

时间:2014-06-26 05:34:57

标签: git

我正在使用包含软件开发工具包(SDK)的文件夹,并尝试使用git将其备份到笔记本电脑中的另一个文件夹中,我将其用作git遥控器。 我用了git add *。 似乎一切运作良好,我没有收到任何错误或警告。所以然后我将远程克隆到另一个文件夹,并尝试编译,但得到一个错误,说文件丢失。事实证明,git中缺少一个文件夹。

知道我做错了吗?

cd /home/ubuntu/backup
mkdir yamit
cd yamit
git init
git add *
git commit -m "first backup"
git remote add yamit /home/ubuntu/backup/yamit.git
git push -u yamit master

3 个答案:

答案 0 :(得分:4)

每当你在git add之后缺少资源时,你可以轻松检查它是否属于.gitignore git check-ignore(git 1.8.4 +)的任何内容:

git check-ignore -v path/to/missing/ressource

只需修改.gitignore,删除其行,忽略您需要的资源。

然后再次添加并提交。

如果您不想修改.gitignore文件,那么

git add -f .
# or
git add -f path/to/missing/*

这可以强制将那些被忽略的资源添加到索引中。

答案 1 :(得分:1)

确定。我已经解决了这个问题。 只需要将强制调用添加到存储库中。

git add * -f

然而,我仍然不知道为什么Git决定在不强制尝试时忽略该文件夹(它是非空文件夹)。

感谢。 然

答案 2 :(得分:0)

晚会,但我遇到了同样的问题.. 结果我创建了我当前的项目,并在工作了几天后将其推送到了一个回购。在那个时候,我必须忘记将丢失的目录文件添加到本地目录,该目录被推送到我的GitHub配置文件。 手动将文件添加到目录中为我修复了这个问题,这就是我得出这个结论的原因。

可能还有另一件事要看,前面没有提到过!

(请注意,我使用Intellij,它在后台管理git系统,CLI方法可能没有同样的问题)。