【问题标题】:git diff between the latest commit and the last one I did最近一次提交和我最后一次提交之间的 git diff
【发布时间】:2017-02-06 12:30:38
【问题描述】:

所以,我可以通过使用轻松获得两个提交之间的差异

git diff hash_old hash_new 文件

这行得通,但在我当前的工作流程中,我的差异总是在最新提交和我的提交之间。有没有办法使用 shell 别名来自动化它,这样我就不必手动复制两个哈希值,而是总是用我的名字或电子邮件选择最新的,并将其与最新的进行比较?

我尝试通过 shell 函数对 git diff 的输出进行子集化,然后创建别名,但不确定输出是否存储为数组。有什么建议吗?

【问题讨论】:

    标签: git shell hash diff alias


    【解决方案1】:

    这可能是最短的解决方案,也是最稳定的解决方案,因为它使用低级帮助命令进行历史遍历):

    git diff $(git rev-list --author="Your Name" -1 HEAD) HEAD
    

    【讨论】:

    • 小故障,git rev-list 也需要HEADgit diff $(git rev-list --author=... -1 HEAD) HEAD
    【解决方案2】:

    试试这个:

    $ git log -1 --pretty=format:"%h" --author=<name> | xargs git diff
    

    &lt;name&gt; 替换为您的git user-name

    【讨论】:

      猜你喜欢
      • 2011-01-14
      • 2011-01-21
      • 1970-01-01
      • 2015-01-16
      • 2012-08-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-12
      相关资源
      最近更新 更多