Tip | GitHub 有一个非常具体的针对数十种项目及语言的 .gitignore 文件列表, 你可以在 GitHub - github/gitignore: A collection of useful .gitignore templates找到它。 |
Note | 在最简朴的环境下,一个仓库大概只根目次下有一个 .gitignore 文件,它递归地应用到整个仓库中。 然而,子目次下也可以有额外的 .gitignore 文件。子目次中的 .gitignore 文件中的规则只作用于它所在的目次中。 (Linux 内核的源码库拥有 206 个 .gitignore 文件。) 多个 .gitignore 文件的具体细节超出了本书的范围,更多详情见 man gitignore 。 |
Note | Git Diff 的插件版本 在本书中,我们使用 git diff 来分析文件差异。 但是你也可以使用图形化的工具或外部 diff 工具来比较差异。 可以使用 git difftool 命令来调用 emerge 或 vimdiff 等软件(包括商业软件)输出 diff 的分析结果。 使用 git difftool --tool-help 命令来看你的体系支持哪些 Git Diff 插件。 |
Note | 启动的编辑器是通过 Shell 的环境变量 EDITOR 指定的,一样平常为 vim 或 emacs。 固然也可以按照 起步 介绍的方式, 使用 git config --global core.editor 命令设置你喜欢的编辑器。 |
Note | 更具体的内容修改提示可以用 -v 选项检察,这会将你所作的更改的 diff 输出出现在编辑器中,以便让你知道本次提交具体作出哪些修改。 |
选项 | 阐明 |
-p | 按补丁格式显示每个提交引入的差异。 |
--stat | 显示每次提交的文件修改统计信息。 |
--shortstat | 只显示 --stat 中末了的行数修改添加移除统计。 |
--name-only | 仅在提交信息后显示已修改的文件清单。 |
--name-status | 显示新增、修改、删除的文件清单。 |
--abbrev-commit | 仅显示 SHA-1 校验和全部 40 个字符中的前几个字符。 |
--relative-date | 使用较短的相对时间而不是完备格式显示日期(比如“2 weeks ago”)。 |
--graph | 在日志旁以 ASCII 图形显示分支与合并历史。 |
--pretty | 使用其他格式显示历史提交信息。可用的选项包括 oneline、short、full、fuller 和 format(用来定义自己的格式)。 |
--oneline | --pretty=oneline --abbrev-commit 合用的简写。 |
选项 | 阐明 |
%H | 提交的完备哈希值 |
%h | 提交的简写哈希值 |
%T | 树的完备哈希值 |
%t | 树的简写哈希值 |
%P | 父提交的完备哈希值 |
%p | 父提交的简写哈希值 |
%an | 作者名字 |
%ae | 作者的电子邮件地址 |
%ad | 作者修订日期(可以用 --date=选项 来定制格式) |
%ar | 作者修订日期,按多久从前的方式显示 |
%cn | 提交者的名字 |
%ce | 提交者的电子邮件地址 |
%cd | 提交日期 |
%cr | 提交日期(距今多长时间) |
%s | 提交阐明 |
选项 | 阐明 |
-<n> | 仅显示近来的 n 条提交。 |
--since, --after | 仅显示指定时间之后的提交。(可以是雷同 "2008-01-15" 的具体的某一天,也可以是雷同 "2 years 1 day 3 minutes ago" 的相对日期。) |
--until, --before | 仅显示指定时间之前的提交。 |
--author | 仅显示作者匹配指定字符串的提交。 |
--committer | 仅显示提交者匹配指定字符串的提交。 |
--grep | 仅显示提交阐明中包含指定字符串的提交。 |
-S | 仅显示添加或删除内容匹配指定字符串的提交。 非常有用的过滤器是 -S(俗称“pickaxe”选项,取“用鹤嘴锄在土里捡石头”之意), 它接受一个字符串参数,而且只会显示那些添加或删除了该字符串的提交。 假设你想找出添加或删除了对某一个特定函数的引用的提交,可以调用:$ git log -S function_name |
--<path> | 假如只关心某些文件或者目次的历史提交,可以在 git log 选项的末了指定它们的路径。 由于是放在末了位置上的选项,所以用两个短划线(--)隔开之前的选项和后面限定的路径名。 |
Note | 你可以指定多个 --author 和 --grep 搜刮条件,如许会只输出匹配 恣意 --author 模式和 恣意 --grep 模式的提交。然而,假如你添加了 --all-match 选项, 则只会输出匹配 全部 --grep 模式的提交。 |
Tip | 隐蔽合并提交 按照你代码仓库的工作流程,记载中大概有为数不少的合并提交,它们所包含的信息通常并不多。 为了避免显示的合并提交弄乱历史记载,可以为 log 加上 --no-merges 选项。 |
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) | Powered by Discuz! X3.4 |