在推送之前如何知道提交/更改列表
Posted
技术标签:
【中文标题】在推送之前如何知道提交/更改列表【英文标题】:How do I know the list of commits / changes before I push 【发布时间】:2012-11-28 19:25:46 【问题描述】:git status 显示我有 2 个提交
# On branch production
# Your branch is ahead of 'origin/production' by 2 commits.
#
但是 git diff 什么也没显示
【问题讨论】:
【参考方案1】:git diff
默认情况下不会显示之前提交的任何内容。您应该为此使用git log
。要显示最后两次提交,请使用 git log -2
。
要使用差异比较提交,语法是git diff commit1 commit2
。例如,要向您显示之前和现在两次提交之间发生的所有更改,请输入 git diff HEAD^2 HEAD
。
【讨论】:
【参考方案2】:更一般地,显示 HEAD 中存在的提交,但不显示原始/生产:
git log origin/production..
带有文件名信息(来自How to have git log show filenames like svn log -v):
git log --stat origin/production..
git log --name-status origin/production..
git log --name-only origin/production..
【讨论】:
【参考方案3】:我总是使用以下内容来查看我的提交树:
$ gitk
没有参数 git diff
仅显示您的实际更改和实际提交之间的差异,这意味着您自上次 git checkout
或 git commit
以来所做的所有更改。
【讨论】:
我认为@Vonc 的回答更可靠。另请注意,gitk
并不总是可用。以上是关于在推送之前如何知道提交/更改列表的主要内容,如果未能解决你的问题,请参考以下文章
在调用 git push 之前,我如何知道要推送多少个文件? [复制]
如何在 GitHub Action 工作流程中推送或合并之前获取上一个提交?