原文:
How to Use Git and GitHub – Version Control Basics for Beginners
版本控制系统是一种用于跟踪、执行和管理软件代码更改的工具。它也称为源代码控制。
版本控制系统可帮助开发人员存储他们在不同阶段对文件所做的每项更改,以便他们和团队成员可以在以后检索这些更改。
有三种类型的版本控制系统,它们是:
-
本地版本控制系统
-
集中式版本控制系统
-
分布式版本控制系统
什么是本地版本控制系统(LVCS)?
这是一种非常常见且易于使用的版本控制系统。但是这种方法很容易出错和受到攻击,因为文件存储在你的本地系统中。
这意味着你可能会丢失系统文件或意外忘记你正在操作的文件的目录/文件夹(然后写入另一个目录)。
什么是集中式版本控制系统(CVCS)?
在这种类型的版本控制中,服务器充当存储每个版本代码的仓库。 CVCS 帮助不同的开发人员一起协作。
尽管开发人员之间进行了有益的协作和沟通,但如果服务器出现几秒钟的故障或损坏,你就有可能丢失资料。不幸的是,这是 CVCS 的一个非常大的问题。
在 CVCS 中,只有少数开发人员可以在一个项目上一起工作。
什么是分布式版本控制系统(DVCS)?
这是现在最新和最常用的版本控制系统类型。
在 DVCS 中,所有开发人员都拥有服务器中所有数据的完整备份(克隆)。这意味着无论何时服务器关闭或出现故障,你仍然可以处理你的项目,你可以将仓库复制或备份到服务器以恢复它们。
当你使用 DVCS 时,许多开发人员可以在一个项目上一起工作。一种流行的 DVCS 是 Git,我们现在将对其进行更多讨论。
什么是 Git?
Git 是一个免费的开源分布式版本控制系统,你可以使用它来跟踪文件中的更改。你可以在 Git 中处理所有类型的项目。
使用 Git,你可以将更改添加到代码中,然后在准备好时提交(或保存)它们。这意味着你还可以返回之前所做的更改。
开发者常将 Git 与 GitHub 一起使用——那么 GitHub 是什么?
什么是 GitHub?
GitHub 是一个 Web 界面,你可以在其中存储 Git 仓库并有效地跟踪和管理你的更改。它使操作同一项目的各种开发人员可以访问代码。你可以在其他开发人员进行更改的同时对项目进行自己的更改。
如果你在进行更改时不小心弄乱了项目中的某些代码,你可以轻松地回到尚未发生混乱的上一个阶段。
为什么使用 GitHub?
你应该学习和使用 GitHub 的原因有很多。现在让我们来看看其中的几个。
高效的项目管理
GitHub 是存储 Git 仓库的地方。GitHub 使从事同一项目但在不同位置的开发人员可以轻松地在同一页面上工作。
使用 GitHub,你可以轻松跟踪和管理你所做的更改,并检查你在项目中所做的进度。
轻松协作与合作
借助 GitHub,来自世界各地的开发人员可以在一个项目上协同工作,而不会遇到任何问题。
团队在共同处理项目时能够保持一致,并且可以轻松有效地组织和管理项目。
开源
GitHub 是一个免费的开源系统。这意味着开发人员可以轻松访问不同类型的代码/项目,他们可以使用这些代码/项目来学习和发展自己的技能。
多功能性
GitHub 的这个属性非常重要。 GitHub 不仅仅是开发人员的 Web 界面,设计师、写作者和任何想要跟踪其项目历史的人都可以使用它。
如何设置 Git?
要开始使用 Git,你需要先将它下载到你的计算机(如果你还没有的话)。你可以通过访问他们的
官方网站
来执行此操作。
当 Git 打开时,向下滚动一点,你应该会看到一个下载按钮,继续并单击它。
选择你的操作系统,无论是 Windows、MacOS、Linux/Unix。就我而言,我将选择 Windows 选项,因为我使用的是 Windows 计算机:
单击页面顶部的第一个链接以下载最新版本的 Git。
下载完成后,继续将 Git 安装到你的计算机上。你需要转到下载文件的位置并安装它。
安装后,你需要确保 Git 已成功安装在你的系统上。打开命令提示符或 Git bash(无论你选择使用哪个)并运行命令:
git --version
如果 Git 已成功安装在你的计算机上,它应该会在你刚刚运行的命令下方显示当前版本的 Git。如果显示了当前版本,恭喜你!
如何配置 Git?
现在我们已经在计算机上安装了 Git,我们必须对其进行配置。这样做是为了在任何时候我们在一个项目的团队中工作时,都可以轻松地识别我们在仓库中所做的提交。
要配置 Git,我们需要使用
git config --global
命令指定名称、电子邮件地址和分支,例如:
从上图中,我们使用
git config --global user.name
来配置用户名。就我而言,我使用了我的名字
“Derek Emmanuel”
。这同样适用于
git config --global user.email
。
Git 有一个默认的
master
分支,所以我使用
git config --global init.default branch main
命令将其更改为主分支。
现在你已准备好开始使用 Git。
如何设置 GitHub 账户?
要设置 GitHub 账户,请访问他们的
官方网站
,点击右上角的注册按钮:
当注册表单打开时,输入你的电子邮件,创建密码,输入你的用户名,然后在单击创建账户按钮之前验证你的账户。
常用的 Git 命令
每个开发人员都应该知道如何使用一些基本的 Git 命令:
-
git config
-
git init
-
git add
-
git commit
-
git clone
-
git push
-
git rm
-
git branch
让我们简要介绍一下这些,以便你知道如何使用它们。
如何使用 git config 命令
你可以使用此命令设置用户的用户名、电子邮件和分支,以便在处理项目时识别谁进行了提交。当你将 Git 下载到你的计算机中并且想要自定义它以供你使用时,将使用此命令。
例如:
git config --global user.name “ [username]”
git config --global user.email [email address]
如何使用 git init 命令
你可以使用
git init
命令在项目中启动 Git。当你正在处理项目并希望将 Git 初始化到项目以跟踪项目中所做的更改时,将使用此 Git 命令。
例如:
git init
当你运行此命令时,你应该会看到在你正在处理的当前文件夹中自动创建了一个名为
.git
的文件夹。
如何使用 git add 命令
此命令将你的文件添加到暂存区。暂存区域是添加我们对其进行更改的文件以及它们等待下一次提交的区域。
要将文件添加到暂存区域,请使用
git add
命令。它将文件夹中的所有文件添加到暂存区域。
git add (file name)
添加你想在暂存区提交的特定文件的名称。
当你对文件进行更改并希望将它们提交到你的项目时,请使用此命令。
如何使用 git commit 命令
这将提交你使用
git add
命令添加的任何文件以及暂存区域中的每个文件。
例如:
git commit –m “first commit”
此命令将文件永久保存到 Git 仓库。只要使用
git add
命令将文件添加到暂存区,就可以使用它。
如何使用 git clone 命令
你使用
git clone
命令将另一个位置的已有的仓库复制到你想要的当前位置。
例如:
git clone (repository name)
当你想要将 Git 仓库从 GitHub 复制到本地仓库时,你可以使用此命令。
如何使用 git push 命令
你可以使用此命令将文件从本地仓库上传/推送到另一个仓库,例如 GitHub 等远程仓库。
例如:
git push (remote storage name)
仅当你对项目所做的更改和提交感到满意并最终希望将其上传/推送到 GitHub 中的 Git 仓库时,才使用此命令。
如何使用 git rm 命令
你可以使用此 Git 命令从工作仓库中删除文件,例如:
git rm (filename)
仅当你希望从 Git 仓库中删除不需要的更改/文件时,才使用此命令。
如何使用 git branch 命令
你使用此命令来检查你正在处理的当前分支,例如:
git branch
此命令可帮助你了解你正在处理的当前分支。
总结
在本教程中,你了解了版本控制系统的全部内容。你还学习了如何在计算机上安装和设置 Git 以及设置 GitHub 账户。最后,我们浏览了一些常用的 Git 命令。
如果你想更深入地了解 Git 和 GitHub,可以
在 freeCodeCamp YouTube 频道上查看本课程
。
希望本教程对你有所帮助。
祝你编程愉快!
freeCodeCamp 是捐助者支持的 501(c)(3) 条款下具有免税资格的慈善组织(税号:82-0779546)。
我们的使命:帮助人们免费学习编程。我们通过创建成千上万的视频、文章和交互式编程课程——所有内容向公众免费开放——来实现这一目标。
所有给 freeCodeCamp 的捐款都将用于我们的教育项目,购买服务器和其他服务,以及聘用员工。
你可以
点击此处免税捐款
。
about:blank 是什么意思
打开 .dat 文件
Node 最新版本
反恶意软件服务
Windows10 产品密钥
Git 切换分支
AppData 文件夹
Windows 10 屏幕亮度
JSON 注释
MongoDB Atlas 教程
Python 字符串转数字
Git 命令
更新 NPM 依赖
谷歌恐龙游戏
CSS 使用 SVG 图片
Python 获取时间
Git Clone 指定分支
JS 字符串反转
React 个人作品网站
媒体查询范围
forEach 遍历数组
撤销 Git Add
OSI 七层网络
Event Loop 执行顺序
CMD 删除文件
Git 删除分支
HTML 表格代码
Nano 怎么保存退出
HTML5 模板