Git – 不会添加文件?

我遇到问题,无法将文件添加到我的存储库。

我在窗口上使用GIT,在Aptana Studio中使用一些Ruby开发。

我设法把一些file upload到GitHub,但之后,一切都停止了。 我有例如一个新的子文件夹在我的主目录,里面有2个ruby文件。 如果我调用“git add。”,然后“git status”,它会一直说“工作目录干净”,没有任何提交。

我试过“git添加文件夹/ myfile.rb”,仍然没有。

任何人有任何想法,我可以尝试吗?

我发现自己和海报的情况类似:

如果我调用“git add。”,然后“git status”,它会一直说“工作目录干净”,没有任何提交。

但是我有一个不同于这里的解决scheme。 自从我第一次来到这里,我希望能够节省一些时间。

从上面的答案和我在别处看到的情况来看,这个问题的通常解决方法是:

  • 确保有问题的文件实际上保存了更改
  • 确保文件不符合.gitignore.git/info/exclude排除规则
  • 确保你没有试图添加一个空的文件夹。 Git不会跟踪这些。 标准的解决scheme是放置一个名为.gitkeep作为占位符的空白文件,所以git将跟踪文件夹。

就我而言,我原本试图在现有的回购库(不知道它在那里)创build一个git回购。 前一段时间,我从这个子回购库中删除了.git文件夹,但是我没有意识到这太迟了,而且git已经把它作为一个子模块来跟踪它。 你可以阅读更多关于如何这些行为,以及如何删除它们,但

  • 我的解决scheme是简单地运行git rm --cached path_to_submodule

仔细检查你的.gitignore文件,以确保该文件能被Git看到。 同样,还有一个文件.git/info/exclude ,就像.gitignore文件一样,从项目中“排除”文件/目录。

如果该文件被.gitignore排除,并且您想要添加该文件,则可以使用以下命令强制:

 git add -f path/to/file.ext 

为其他用户添加可能的解决scheme:

确保你没有改变在Windows中的文件夹名称的情况下:

我有一个类似的问题,其中一个名为Setup的文件夹由Git控制并托pipe在GitHub上,所有的开发都是在Windows机器上完成的。

在某些时候,我改变了文件夹setup (小写字母S)。 从那时起,当我将新文件添加到安装文件夹时,它们被存储在setup文件夹中,而不是Setup文件夹中,但是我猜测是因为我正在Windows机器上开发git / github中的现有Setup文件夹没有更改为setup

结果是我看不到GitHub中的所有文件。 我怀疑,如果我克隆了一个* nix机器上的项目,我会看到两个文件夹, Setupsetup

所以确保你没有改变在Windows机器上的包含文件夹的情况下,如果你有,那么我会build议:

  • 将文件夹重命名为setup-temp
  • git add -A
  • git commit -m "Whatever"
  • 将文件夹重命名为你想要的
  • git add -A
  • git commit -m "Whatever"

奇怪的,但我与git斗争整个晚上添加一个文件。 原来它已经被添加了。 Git没有收到我的更改,因为这些更改没有被保存,因为我的帐户无法访问该文件,而且我的IDE没有通过SSH报告。

简而言之,请检查以确保您没有将其添加到存储库中。

最好的办法是复制你的文件夹。 删除原件。 从github克隆项目,将新文件复制到新克隆的文件夹中,然后重试。

标准程序如何:

 git add folder git commit 

这将使用单个命令添加文件夹及其所有文件。
请注意,git无法存储空文件夹。

如果提交没有成功,你应该检查的第一个地方可能是.gitignore

在我的情况下,该问题已启用SafeCrLf选项。 我在与乌龟git的窗户。 禁用该选项后,添加文件不再是一个问题了。

我在文件夹中的第一个程序有这个问题。 我做了“git add”,然后“git commit”。 “混帐状态”给出了错误描述,即“没有提交,工作目录干净”

我结束了从程序文件夹中删除.git文件。 然后我做了一个新的git init,git add和git commit,它工作。

我只是有这个问题,问题是我在一个目录,而不是在顶层。 一旦我转移到顶层它的工作。

在这里你可以find同样的问题的答案:

基本上在这种情况下,问题是global_git忽略

将第一个文件添加到从GitHub克隆的空存储库是不可能的(对我来说)。 你需要遵循GitHubbuild议创build的链接README。 在线创build第一个文件后 ,可以使用git正常工作。

这发生在我2016年11月17日。

我search了一会儿,最终发现我阻塞了SSH端口,导致git add命令停止工作。 我结束了改变起源使用https使用以下命令:git远程设置url来源[url-to-git-repo]

另一个问题可能是文件权限。 尝试发出: chmod 755 file1

来自我的愚蠢的解决scheme,但我认为这不是添加和推新的文件,因为github.com没有显示我刚刚推的文件。 我忘记了我添加的文件在不同的分支。 文件推得很好。 我不得不从我的主分支切换到github中的新分支来看看他们。 在那一个上丢了几分钟:)