我有一个在 Eclipse 中工作的 Android 项目。我在 github 上为自己创建了一个帐户,并使用 GitHub for Mac 客户端将项目中的代码推送到在线远程存储库。随后,我对代码做了几个小的提交,一切都很顺利。
现在代码发生了一些重大变化,当我尝试使用 Mac 客户端提交时,我在 Sync 上收到以下错误消息:
Sync Failed: Please commit all your changes before syncing.
为了解决这个问题,我尝试了以下方法:
1. 尝试git push origin/master
从命令行使用。这导致了project/info/refs not found: did you run git update-server-info on the server?
2。我检查了存储库名称、位置等是否都正确并且它们是正确的。
我的问题: 1. Changes 部分显示了
大量文件。.class
鉴于 .class 文件包含在 .class 文件中,为什么它们会出现.gitignore
?既然已经出现了,是不是也需要选择提交呢?
2.上面的错误信息是什么意思,我该如何摆脱它?
编辑 1:
在以下命令之后:
1. git ls-tree -r master | grep .class
- 这表明.class
文件也被添加到存储库中。
2.从存储库git rm **/*.class
中删除所有.class
文件。
3. git commit -m "remove class files
4.git push origin master
结果:
fatal: https://github.com/user/project.git/info/refs not found: did you run git update-server-info on the server?
此外,git status
在命令行上运行会显示以下行:
# On branch master
# Your branch is ahead of 'origin/master' by 16 commits.
#
这有什么问题吗?
我已经阅读了很多关于这个主题的主题,并查看了 SSH-keygen 之类的东西,但我认为这不是我问题的解决方案。我是 git 的新手,以前只使用过 cvs,所以如果可能的话,请尽量减少你的答案。
我的.gitignore
文件:
# built application files
*.apk
*.ap_
# files for the dex VM
*.dex
# Java class files
*.class
# generated files
bin/
gen/
# Local configuration file (sdk path, etc)
local.properties
# Eclipse project files
.classpath
.project
# Proguard folder generated by Eclipse
proguard/
# Intellij project files
*.iml
*.ipr
*.iws
.idea/
*.class
*.class
*.class
*.jar
*.class
*.class
bin/dexedLibs/slf4j-android-1.6.1-RC1-e5ffa87f4686586f2e03d9069f131ba3.jar
*.class