【问题标题】:Git: I can not see the last commit either pushGit:我看不到最后一次提交
【发布时间】:2012-12-19 15:29:11
【问题描述】:

我正在 git log --all 显示所有提交,但最后没有显示...

即使,当我推送它时,它会显示Everything up-to-date,我希望能够推送最后一次提交。

我做了 git show-branch ,它说:

[master] Merge branch 'master' of bitbucket.org:jargd/contract

有什么帮助吗?

【问题讨论】:

  • git branch 返回什么?前面有'*'的任何分支?否则,您将处于分离的 HEAD 模式 (stackoverflow.com/a/3965714/6309)。
  • 那么您想要提交的更改呢?他们走了吗?使用 git reflog 并检查提交发生了什么。你要么做了 git reset、checkout 或 commit --amend。
  • @VonC git branch 显示:[1st line]* (no branch) [2nd line] master.
  • @JarosławJaryszew 现在我在倒数第二个提交中(我在 log -all 列表中都看不到),所以我打开以编辑的文件与该提交正确对应。我使用了 git reflog 但没有任何改变。我还能做什么?
  • @tirengarfio git reflog 向您显示操作历史记录,因此您会看到发生了什么(我仍然打赌使用 --amend 选项提交)。当您发现问题所在时,您可以:git reset --soft HEAD@{X+1},其中 X 是破坏您历史记录的操作。然后你可以再次提交。

标签: git


【解决方案1】:
* (no branch) 

表示“detached HEAD”

您可以在该提交处创建一个分支:

git checkout -b newBranch

然后推送那个分支。

【讨论】:

  • 但我不想创建另一个分支,我想在 master 分支工作。
  • @tirengarfio 你想在 master 分支工作,同时仍处于当前提交状态吗?换句话说,您想将主分支重置为您当前的提交(git reset master)吗?这意味着强制下一次推送(如stackoverflow.com/questions/12302171/…),忘记master上的其他提交......
猜你喜欢
  • 2011-01-14
  • 1970-01-01
  • 2011-01-21
  • 2022-07-01
  • 2015-01-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-31
相关资源
最近更新 更多