[英]How can I use the command line to see which commit was pushed last
在推送我的更改之前,我一直在学习使用git rebase -i
来清理我的提交。
但是,我发现我正在做git log
,然后通过web gui检查远程repo以查看哪个提交是我推送的最后一个提交,然后手动计算我的提交是如此我可以使用
git rebase -i HEAD~[amount]
似乎很长时间不得不使用web gui检查哪一个提交是最后一个提交*到远程仓库,当其他一切都可以在命令行中完成
建议更好的工作流程?
* 因为重新定价的黄金法则不是已经推迟到回购的承诺
如果你执行git branch -a
,你会看到其他分支名称,从remote/<remote-name>
。 那些指向所选遥控器上的分支。 现在,问题是,那些可以像任何其他标签或分支名称一样使用。
例如,假设分支net
被设置为推送到远程origin
分支network
。 它的名称将具有格式origin/network
。 要查看推送的最后一次提交,您可以使用git show origin/network
。 要在确认之前重新设置所有内容,请尝试使用git rebase -i origin/network
。
你可以使用--decorate
示例$ git log --decorate
这将告诉您日志概述中哪个标记或分支在哪个提交上。
在您的情况下,您希望寻找origin/master
和/或origin/HEAD
。 它们默认为红色。
我总是使用此命令来获得日志历史的紧凑且易于理解的概述:
$ git log --decorate --branches --graph --pretty="oneline" --abbrev-commit
它有一些其他很好的参数,有助于构建一个清晰的概述。 您不必使用它,但您可以尝试它。 这可能非常有用,尤其是当您与具有不同历史记录的不同分支机构合作时。
在简单的场景中它看起来像这样(在这个例子中提交消息被替换)
* 9562f31 (HEAD -> master, origin/master, origin/HEAD) Added A
* 57b2de9 Added B
* 687e7d6 Added C
* 187aac7 Added D
* 1fc4a05 Added E
在你的情况下(origin/master, origin/HEAD
会稍微向下,而master
和HEAD
可能在顶部。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.