速成课程:git Lingo
简介
当开始编码时,您可能会听到“git”和“GitHub”,但尝试研究它们可能会让您感到不知所措。
注意:使用 Git 在线存储代码有很多选择。本文我将重点介绍 Github,因为我对这个平台比较熟悉。同样,我的友谊手链比喻也是基于结的创造。
git 与 GitHub
在我们开始之前,先简单介绍一下这两个术语。
“git” 是一个用于保存代码中的时刻的工具,而“GitHub”是一个允许您以可共享的格式存储使用 git 创建的时刻的平台。
Git 作为友谊手镯
将 git 想象成一条友谊手链,其中组成手链的每一条线都是代码更改/添加的小子集,当所有部分组合在一起时,最终产品就是完成的手链!
git 的优点之一是它允许您与其他开发人员一起开发您的手镯,让他们引入新的颜色(代码)和技术,以帮助使您的手镯比您自己尝试制作的手镯更加精彩!
关键字和命令
贡献者
贡献者是任何向您的手镯添加内容的人。
就像友谊手链一样,捐赠的形式多种多样,而且每一种都很重要!例如:
- 尝试使用代码时报告错误
- 添加到代码
- 撰写关于如何使用代码的博客文章
存储库(Repo)
存储库是世界的友谊手镯!
每个手镯都是一个存储库,由构成存储库的所有字符串(代码)片段组成。它们可以拥有任意数量的贡献者,任意规模或语言,并且处于从项目启动到完成的任何阶段。
分行/结账
树枝是友谊手链的“宽度”线。
类似于制作友谊手链,你一次只能处理一条“宽度”的线。你当前关注的线被称为“已签出”分支。
在命名分支时,通常以分支要实现的功能来命名。创建新的仓库时,默认会附带一个master
分支。所有“实时”或“生产”代码都存放在此分支中,通常不应直接对其进行更改master
。
示例代码:
// list of branches (Current branch returns with a star)
git branch
// create a branch
git branch <branch_name>
// checkout (switch to) a branch
git checkout <branch_name>
// create & checkout branch
git checkout -b <branch_name>
克隆命令
拿起朋友的手镯。
clone
是一个终端命令,可用于在计算机上创建仓库副本。克隆时,您可以使用 HTTPS 和 SSH 链接。为了简单起见,我在这里只使用 HTTPS,但您可以在 GitHub 上找到更多关于 SSH 的信息。
示例代码:
// HTTPS Clone
git clone https://github.com/12vanblart/color-themes.git
拉动命令
问“嘿,朋友!手镯怎么样了?”
在分支上工作时,务必确保在添加任何更改之前,已获取其他人可能做出的更改。进入要处理的分支后,您可以使用 获取所有更改git pull
。
示例代码:
// Get changes for current branch
git pull
// Get changes for all local branches
git pull --all
暂存/添加命令
此时,绳子已经打结,但尚未拉紧。
add 命令告诉 git 你想将哪些文件置于“暂存”状态。“暂存”是一种更优雅的说法,指的是你想准备将文件保存到分支。
// Stage a single file
git add <path_to_file>
// Stage all changed files
git add *
犯罪
此时,您将结拉得非常紧 - 紧到足以看到变化的样子,但又不至于难以解开。
提交操作会将所有已存储的项目附加一条消息,然后将其保存到分支。有句俗话说“早提交,常提交”,意思是如果你想尝试某些功能但最终无法正常工作,你可以将代码回退到较早的提交。
示例代码:
// Commit currently staged files with a message
git commit -m "<your message here>"
// View past commits
git log
// Rewind to a specific commit
git reset <commit id from git log>
// Discard changes to a file (after rewind)
// Note: This is permanent and should be handled with care.
git checkout -- <file_name>
推送命令
“嘿!看看我正在做的手镯!”
push 命令将您本地分支的提交保存到存储库,以供其他人查看、拉取和处理。
示例代码:
// push your changes to GitHub
git push
拉取请求(PR)
一旦您将分支添加到存储库并拉紧结以查看其外观,最后要做的就是与手镯的主人确认是否可以进行更改。
创建拉取请求 (Pull Request) 是为了确保仓库所有者(或其他授权用户)同意你的分支更改,然后再将其添加到仓库的主代码中。当一个分支被添加到 master 分支时,开发者称之为“合并拉取请求 (Merging a Pull Request)”。
叉
想象一下,你拥有一台神奇的打印机,可以让你放入一只手镯,然后打印出两张与你放入的手镯一模一样的副本。于是,你借了朋友的手镯,把它放进打印机里打印,然后归还原来的手镯。这就是 fork 代码库的作用!
Fork 允许您以您的用户名创建存储库的副本,您可以从中创建分支,甚至可以向初始存储库发出拉取请求。
“最常见的是,fork 用于对其他人的项目提出更改,或者使用其他人的项目作为自己想法的起点。” - GitHub 文档
了解更多
如果你想了解更多关于 git 的知识,或者只是想要一个随时可用的书签,我强烈推荐Pro Git(免费!)!它不仅逻辑清晰、简洁易懂,而且我发现它还能很好地将内容重新表述成通俗易懂的术语。
最后一点
非常感谢 Natalie 对这篇文章的校对和措辞提出的想法!
鏂囩珷鏉ユ簮锛�https://dev.to/terabytetiger/crash-course-git-lingo-1enj