【发布时间】:2014-06-11 18:48:28
【问题描述】:
问题
Git 中 commit-ish 和 tree-ish 的具体例子是什么?
堆栈溢出问题"What does tree-ish mean in git?" 交易 特别是树型,但我想了解更多关于两者的信息。
背景
文档中的用法
The Git documentation 多次提到“commit-ish”和 “树状”。例如,如果您正在检查the Git source code:
$ git grep --files-with-matches --extended-regexp "commit(-)*ish"
config.txt
git-describe.txt
git-fast-import.txt
git-name-rev.txt
git-push.txt
git-rebase.txt
git-rev-parse.txt
git.txt
gitcli.txt
glossary-content.txt
howto/revert-branch-rebase.txt
revisions.txt
和
$ git grep --files-with-matches --extended-regexp "tree(-)*ish" | \
$ grep --invert-match RelNotes
diff-format.txt
diff-generate-patch.txt
git-archive.txt
git-cat-file.txt
git-checkout.txt
git-diff-index.txt
git-diff-tree.txt
git-ls-files.txt
git-ls-tree.txt
git-merge-tree.txt
git-read-tree.txt
git-reset.txt
git-svn.txt
git.txt
gitcli.txt
gittutorial-2.txt
glossary-content.txt
revisions.txt
定义
Git 文档defines what "commit-ish" and "tree-ish" are:
<tree>表示树对象名称。
<commit>表示提交对象名称。
<tree-ish>表示树、提交或标记对象名称。采用
<tree-ish>的命令 参数最终想要对<tree>对象进行操作,但自动 取消引用指向<tree>的<commit>和<tag>对象。<commit-ish>表示提交或标记对象名称。采用
<commit-ish>的命令 参数最终想要对<commit>对象进行操作,但自动 取消引用指向<commit>的<tag>对象。
文档不够清晰
尽管上面的文档定义了“commit-ish”和“tree-ish”是什么, 我仍然觉得它太模糊和不清楚。
什么是“commit-ish”和“tree-ish”的具体例子,它们是如何 彼此不同?
【问题讨论】:
-
另见在线gitglossary,或在您的CLI 中使用
man gitglossary
标签: git