Skip to content
This page has been auto-translated and may contain errors.View in English

词汇表 ​

本手册中使用的 Git 和 GitHub 术语的简短定义。每个术语都链接回完整讲解该术语的章节。

branch ​

分支是指向一个 commit 的可移动标签,让你可以在项目其他部分之外的单独历史线上工作。创建分支不会复制任何文件;它添加的是一个指针,你可以通过在其上进行 commit 来独立移动它。详见 分支。

clone ​

git clone <url> 将远程仓库复制到你自己的机器上,包括其完整历史记录,随时可以开始工作。详见 你的第一个仓库。

commit ​

commit 是项目的一个已保存快照:包含那一时刻所有被追踪文件的状态、描述所做更改的消息,以及指向它之前 commit 的链接。详见 commit 循环。

detached HEAD ​

当 HEAD 直接指向一个 commit 而不是指向一个分支时,就会出现分离的 HEAD(Detached HEAD),通常是因为你签出了一个特定的 commit 而非分支名。在这里进行的 commit 位于任何分支之外,所以一旦切换走,就很难再找到它们。详见 分支。

fetch ​

git fetch 从远程下载新的 commit,但不会将它们合并到你当前的分支中。它只更新你的远程追踪分支,如 origin/main。详见 远程和 GitHub。

fork ​

fork 是你在 GitHub 上拥有的他人仓库的副本,在你想要为一个自己没有推送权限的项目做贡献时使用。详见 pull request 工作流。

.gitignore ​

.gitignore 是一个文件,列出了 Git 应该永远不跟踪的模式,如依赖文件夹和包含机密信息的文件。它只影响 Git 尚未追踪的文件。详见 忽略文件和良好实践。

HEAD 是 Git 指向你当前签出的 commit 的指针。大多数情况下它指向你当前的分支,而分支又指向一个 commit。详见 分支。

main ​

main 是仓库默认分支的常规名称。较旧的仓库和教程有时使用 master 来表示同样的作用。详见 你的第一个仓库。

merge ​

git merge <branch> 将另一个分支的 commit 纳入你当前的分支,将两个历史合并为一个。详见 合并和冲突。

merge conflict ​

当两个分支修改了文件的同一行,而 Git 无法自动将它们合并时,就会出现合并冲突。Git 用 <<<<<<<、======= 和 >>>>>>> 标记冲突的位置,等待你选择正确的结果。详见 合并和冲突。

origin ​

origin 是 Git 赋予克隆仓库来源的远程的常规名称。它只是一个名称;你可以自由重命名它或添加其他远程。详见 远程和 GitHub。

pull ​

git pull 从远程获取新的 commit 并在一步中将它们合并到你当前的分支。详见 远程和 GitHub。

pull request ​

pull request(PR)是 GitHub 上的一个请求,用于将一个分支合并到另一个分支,在合并发生之前开启讨论和审查。详见 pull request 工作流。

push ​

git push 将你本地的 commit 发送到远程,这样 GitHub 或合作者就能看到它们。详见 远程和 GitHub。

rebase ​

Rebase 是在不同的起点上重放你分支的 commit,产生一条直线历史而不是合并 commit。它会重写 commit 历史,所以应该将其用于没有其他人已经基于其上工作的分支。详见 合并和冲突。

reflog ​

reflog 是一个本地记录,记录 HEAD 最近指向过的所有位置,包括分支不再能到达的 commit。它是你在 reset 或删除分支后恢复 commit 的方法,直到 Git 最终清理它。详见 撤销操作。

refspec ​

refspec 是存储在远程配置中的一个映射,它告诉 git fetch 要从远程下载哪些分支以及在哪些远程追踪分支下记录它们。详见 远程和 GitHub。

remote ​

远程是托管在其他地方的仓库副本,通常通过 URL 访问。GitHub 是托管远程的一个流行选择,GitLab 和 Bitbucket 是其他选项。详见 远程和 GitHub。

remote-tracking branch ​

远程追踪分支,如 origin/main,是你仓库对远程上分支位置的本地记录,记录的是你上次 fetch 或 pull 时的位置。它不会自动更新;只有 fetch 或 pull 才能移动它。详见 远程和 GitHub。

repository ​

仓库(或 repo)是 Git 正在追踪的项目文件夹,连同在其中进行的每个 commit 的完整历史。详见 你的第一个仓库。

reset ​

git reset 将你当前的分支移动到指向一个不同的 commit。--soft 保留暂存区和工作目录不变,--mixed 也清除暂存区,--hard 也会覆盖工作目录,丢弃未 commit 的更改,所以在任何已经共享的分支上都要谨慎使用。详见 撤销操作。

revert ​

git revert <commit> 创建一个新的 commit,撤销来自较早 commit 的更改,保留原始 commit 不动。这是撤销已在共享分支上的内容的安全方式。详见 撤销操作。

staging area(index) ​

暂存区(也称为 index)是你准备下一个 commit 将包含的内容的地方。git add 将更改从工作目录移到暂存区,git commit 保存暂存的内容。详见 commit 循环。

stash ​

git stash 将你未 commit 的更改存放起来,以便你可以用干净的工作目录切换任务,然后稍后用 git stash pop 将它们取回。详见 撤销操作。

tag ​

标签是固定到一个 commit 的固定标签,最常用于标记版本。不像分支,当新的 commit 被进行时,标签不会移动。详见 分支。

terminal ​

终端是你键入文本命令(包括所有 git 命令)并读取它们打印回的内容的应用程序。也称为命令行。详见 你的第一个仓库。

upstream ​

分支的 upstream 是它跟踪的远程分支,通常通过 git push -u 设置。一旦设置,简单的 git push 和 git pull 就可以在该分支上工作,而无需每次都指定远程和分支。详见 远程和 GitHub。

working directory ​

工作目录是磁盘上文件的实际文件夹,是在编辑器中打开的那个。它保存你的文件当前处于的任何状态,无论其中是否有任何已暂存或已 commit。详见 commit 循环。