美文网首页Git
Git命令记录

Git命令记录

作者: jicemoon | 来源:发表于2016-12-01 15:05 被阅读50次

这里没有add/commit/push/pull等命令的介绍

查阅最近的提交修改

git log --stat

查看某个文件在某次提交中的修改

git show <hashcode> <filename>

hashcode就是你想要查看的节点的哈希值

查看仅这个文件的所有历史记录

git log --pretty=oneline <filename>

在某些情况下我们可能希望查看目标文件两个版本之间的差异。 查看这个文件任意两个版本的差异

git diff <hashcode-before-right> <hashcode> <filename>

注意:filename在提交记录中的文件路径可能已经被缩略,我们在写filename一定要写上完整路径,但不该是绝对路径。

查看某个文件的包含提交人员,日期、版本号等记录信息,不包括修改详情

git whatchanged <filename>

恢复已删除的文件

git checkout commit_id file.name
git add file.name
git commit file.name -m ""
git push

查看某次提交修改详情

git show <hashcode>
git log -p <hashcode>

Git log常用参数

-p:按补丁显示每个更新间的差异

--stat:显示每次更新的修改文件的统计信息

--shortstat:只显示--stat中最后的行数添加修改删除统计

--name-only:尽在已修改的提交信息后显示文件清单

--name-status:显示新增、修改和删除的文件清单

--abbrev-commit:仅显示SHA-1的前几个字符,而非所有的40个字符

--relative-date:使用较短的相对时间显示(例如:"two weeks ago")
--graph:显示ASCII图形表示的分支合并历史

--pretty:使用其他格式显示历史提交信息

个性化Git log输出

如果我们只想输出hash.

git log --pretty=format:"%h"
git用各种placeholder来决定各种显示内容:
下面内容来自这里

  • %H: commit hash
  • %h: 缩短的commit hash
  • %T: tree hash
  • %t: 缩短的 tree hash
  • %P: parent hashes
  • %p: 缩短的 parent hashes
  • %an: 作者名字
  • %aN: mailmap的作者名字 (.mailmap对应,详情参照git-shortlog(1)或者git-blame(1))
  • %ae: 作者邮箱
  • %aE: 作者邮箱 (.mailmap对应,详情参照git-shortlog(1)或者git-blame(1))
  • %ad: 日期 (--date= 制定的格式)
  • %aD: 日期, RFC2822格式
  • %ar: 日期, 相对格式(1 day ago)
  • %at: 日期, UNIX timestamp
  • %ai: 日期, ISO 8601 格式
  • %cn: 提交者名字
  • %cN: 提交者名字 (.mailmap对应,详情参照git-shortlog(1)或者git-blame(1))
  • %ce: 提交者 email
  • %cE: 提交者 email (.mailmap对应,详情参照git-shortlog(1)或者git-blame(1))
  • %cd: 提交日期 (--date= 制定的格式)
  • %cD: 提交日期, RFC2822格式
  • %cr: 提交日期, 相对格式(1 day ago)
  • %ct: 提交日期, UNIX timestamp
  • %ci: 提交日期, ISO 8601 格式
  • %d: ref名称
  • %e: encoding
  • %s: commit信息标题
  • %f: sanitized subject line, suitable for a filename
  • %b: commit信息内容
  • %N: commit notes
  • %gD: reflog selector, e.g., refs/stash@{1}
  • %gd: shortened reflog selector, e.g., stash@{1}
  • %gs: reflog subject
  • %Cred: 切换到红色
  • %Cgreen: 切换到绿色
  • %Cblue: 切换到蓝色
  • %Creset: 重设颜色
  • %C(...): 制定颜色, as described in color.branch.* config option
  • %m: left, right or boundary mark
  • %n: 换行
  • %%: a raw %
  • %x00: print a byte from a hex code
  • %w([[,[,]]]): switch line wrapping, like the -w option of git-shortlog(1).

除此之外, --graph选项可以显示branch的ascii图例。

git log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr)%Creset' --abbrev-commit --date=relative

相关文章

  • Git高级命令

    命令 1:查看历史记录 git log 可以查看所有提交记录 命令 2:git commit --amend 适...

  • Git操作记录

    本文目录 一台电脑配置多个git账号 git常用的操作命令 使用git命令合并多条commit记录 使用git命令...

  • iOS Git

    Git$ git reflog : Git提供了一个命令git reflog用来记录你的每一次命令:$ git r...

  • Git常用指令

    前言 本文主要为了记录常用的几个命令的详细操作主要详细记录以下几个命令 git merge git rebase ...

  • Git常用命令

    git常用命令记录 git提交一个没有任何改动的记录:git commit -m "empty commit" -...

  • 查看历史记录

    查看版记录的命令git loggit log 查看版本记录 查看记录只显示一行:git log --pretty=...

  • git分支的创建与使用

    在此记录下命令: 创建命令:git branch 分支名 切换分支:git checkout 分支名 创建并切换分...

  • Git版本回退

    首先我们通过log命令查看我们的历史记录,在Git中,我们用git log命令查看: $ git log --pr...

  • Git [提交记录查看、提交、变基](I)

    Git 简易指南Git 参考手册Pro Git(中文版)Git教程 廖雪峰 查看提交记录 终端命令git log:...

  • 2020-05-07

    #每日知识记录1 git命令之强行推送 : git push -f origin master

网友评论

    本文标题:Git命令记录

    本文链接:https://www.haomeiwen.com/subject/izbxmttx.html