我如何确保我的提交真的发生了?

问题描述:

我是真的新的git,我今天尝试做我的第二次有一些新的代码提交到我的回购。事情是,我不确定git是否真的发生。 Github说最后一次提交是2天前。
当我输入git add .什么也没有出现。
当我去github时,Rails3文件说loading commit data。我一直在等待大约30分钟,但这仍然存在(我的承诺并不是那么大)。我如何确保我的提交真的发生了?

这是git的典型行为还是我可以做错了什么?另外,我如何检查以确保将来当我尝试执行提交时发生提交?

首先,虽然您使用的是Github,但请确保您明白您首先与本地存储库交互。 (直到你,Github才会参与。)

找出存储库状态的最重要命令是git status。这表明是文件:

  • 已知Git和安排提交(即git add已运行)
  • 已知Git和修改
  • 未知到Git

一旦你犯了一个提交后,这些文件将从git status显示中消失。此时,您可以使用git log来显示仓库中提交的日志(最近的第一个)。

+0

格雷格,这整个答案是非常有益的,谢谢你!很高兴见到你和你的家人从最近的地震中安然无恙。 – sscirrus 2010-10-15 00:49:14

典型的工作流程是:(即git的状态不显示任何未跟踪文件)

git add * 
git commit -am "message" 
git push 
+0

git add。 -A更好,你不需要提交'a'开关。 – 2010-10-15 00:02:52

+0

哇。用你的方式,你实际上是在输入一个额外的角色。那么,为什么“更好”?还有downvote ......真的吗? – colithium 2010-10-15 00:54:18

+0

它还添加了诸如删除之类的更改。对不起,反对票。我会投票。不知道如何“负面”的倒票是如此。 – 2010-10-15 20:40:01

如果要修改已跟踪文件,我这样做:

git的承诺-am“消息”

混帐推

如果你有新文件或删除文件或目录,那么这样做:

git add。 -A

git的承诺-m “消息”

混帐推

你可以检查,看看是否你的提交与合作:

git的日志--stat

您可以检查看看你的提交是否被推送到远程服务器:

git status

你不应该看到“你的分支领先于'xxxxxx'1提交”其中xxxx将会像origin/master一样。

希望这会有所帮助。

+0

非常有用,谢谢你adymitruk。+1 – sscirrus 2010-10-15 00:49:42