无术语指南 – 文章 1 – Git 和 GitHub 真正有趣的东西……

2025-05-25

无术语指南 – 文章 1 – Git 和 GitHub

真正有趣的东西……

PC 屏幕图像显示 github 主页

目录

介绍

对于一个 25 岁以上、在学校没有学过计算机科学的人来说,进入科技行业是令人畏惧的

我今年 29 岁,我在学校接受的“技术”教育仅限于使用PowerPoint建立一个网站——是的——你没看错——就是 PowerPoint。

我跌跌撞撞地度过了一生,我知道科技是我很感兴趣的东西,但我一直认为它遥不可及。

如果您正在阅读这篇文章,并且感觉和我一样,那么我在这里告诉您……

科技就是为你而生!我的使命就是帮助你开启美好的未来。

关于本博客

欢迎来到我的博客——这是一系列面向新手的文章,旨在用非常简单的英语解释我发现具有挑战性的事情,以便对您来说轻而易举(希望如此)。

作为一个新手,我经常发现我读的指南里有一些我本来就应该知道的技术“内容”。它们似乎都要求读者具备相关领域的先验知识,所以我创建了这个博客,希望能帮助大家解决那些我觉得比较难的部分。

我乐于接受反馈,请在下方留言或在 Twitter 上联系我。我也乐于涵盖您认为最有用的主题,如果您有急切的问题/担忧,请联系我,我会尽力将其纳入本系列。

这是第一篇文章。我进行了一项民意调查,以了解首先要讨论哪个主题,投票结果如下:

  1. Git/GitHub
  2. 主机/域名
  3. Web Dev 到底是什么?(这将是对行业、角色、语言、工作选择等的概述)

只是为了让你知道接下来会发生什么😊

给读者几点说明

更新于 2020 年 12 月 8 日
Git 和 GitHub 正在慢慢更新其术语,从 master 分支更新为 main 分支,因此本文已全部更新为 main,但说明中仍需要使用 master。

导航 - 您可以一口气阅读本指南,也可以使用上面的内容列表跳转到您需要的部分。

这是 Git/GitHub 的完整初学者指南:设置、创建您的第一个 repo 和拉取请求(新手不用担心,跟着我,我们会讲解这些),它不是一本详尽的手册,所以如果您正在寻找有关 Git/GitHub 的更多详尽材料,我建议您在此处查看他们的文档:https://guides.github.com/

本指南假设您对 Web 开发感兴趣并已开始学习以某种形式编写代码。

我已尝试用非常简单的方式解释一切,如果您觉得受到冒犯,我很抱歉,但作为一个发现其他指南过于技术性的人,我想尝试一种不使用行话的方法。

我的说明适用于 Windows 系统。如果您是 Mac/Linux 用户,并且设置方法有很大差异,请分享一下说明,以便我将其添加到这里。谢谢😊

好吧,如果您还跟着我,那就让我们开始吧。

真正有趣的东西……

学习成果

在本文结束时,我希望您能够:
• 了解 Git/GitHub 是什么
• 了解为什么您可能想要使用它
• 知道如何设置 Git/GitHub
• 了解什么是 repo•
知道如何创建您的第一个 repo
• 知道如何克隆其他人的代码并创建拉取请求

Git 和 GitHub 到底是什么?

Git 和 GitHub 不是一回事,但它们是犯罪伙伴。

Git 是一个下载到您电脑上的版本控制系统,它可以监控您或其他人编写的代码文件,并跟踪您或其他开发者对这些文件所做的任何更改。如果您与多人合作开发一个项目,Git 会特别有用,它允许每个开发者在自己的电脑/笔记本电脑上拥有代码文件的副本及其历史记录,以便他们在将自己的版本与主副本合并之前对其进行更改。

GitHub 是这些文件的公共存储空间,任何想要查看/使用代码文件的人都可以轻松访问它们。如果您需要,它还允许您访问其他人的代码。

但是,“什么是版本控制?”我听到你在喊……

随着您对编程语言的学习不断进步,并且对项目的信心不断增强,您可能会选择放弃像CodePen这样的在线代码编辑器(您基本上会键入通常出现在“body”标签内的所有代码),并切换到像Visual Studio Code这样的基于软件的开发环境

基于软件的开发环境——通常称为代码编辑器或 IDE(集成开发环境)——是可以下载到电脑上的软件,它们就像离线编程“笔”,您可以在自己的笔记本电脑/PC 上编写和调试代码。您还可以下载扩展程序,让代码编写更加轻松。我将在后续文章中介绍代码编辑器/IDE 和文件设置,敬请关注。

一般来说,要开始一个项目,您需要创建如下“文件”:

style.css
index.html
script.js
Enter fullscreen mode Exit fullscreen mode

这些是包含您的(源)代码的文件。

现在,快进 12 个月,想象一下你正在开发一款新的热门应用(我对你的能力很有信心 😉)。你已经将 1.0 版本发布到应用商店,销售情况良好,但为了修复 bug 并保持竞争力,你需要更新原始代码。

在更新代码时,你遇到了技能缺口,但你意识到你的朋友对你遇到的问题有所了解,于是你把文件发给了她。她查看了一下,添加了一些代码,然后把文件发回给你。你不小心覆盖了现有文件,导致应用程序停止运行。

怎样才能恢复原来的样子呢?

您如何知道是哪个更改导致了错误?

这正是版本控制和 Git 发挥作用的地方。Git 将原始源代码保存在项目的核心位置,并跟踪您和您的同事对该代码所做的所有更改,因此,如果您需要,可以回滚到早期版本。它还允许多个人同时处理一个文件,并合并单独的更改,而不会导致将更新文件(例如应用程序的 2.0 版本)合并在一起的问题(依此类推)。

我没有开发应用程序,为什么需要它?

Git/GitHub 在业界应用非常广泛,以下是其优点:

  • 如果你正在考虑转型从事 Web 开发工作,那么这是一个向潜在雇主展示你的代码的好地方
  • 它向这些雇主表明,你有信心在公共场所展示你的代码
  • 您可以在 GitHub 上托管/发布您的作品集
  • 这表明你对版本控制有所了解/欣赏
  • 这表明您可以使用行业特定的技术
  • 它将你的工作成果发布出来,以便其他开发者可以看到、改进,甚至可能指导你如何做得更好
  • 如果你想为开源项目做出贡献(我也会在某些时候介绍这些项目),你可以在 GitHub 上访问它们
  • 它允许您跟踪对您的副项目所做的更改,从而跟踪您的进度

好的,到目前为止一切都很好,我该如何开始呢?

首先,你需要下载 Git。你可以在这里下载:

Windows:https://git-scm.com/download/win
Mac:https: //git-scm.com/download/mac
Linux: https: //git-scm.com/download/linux

我(劳拉)有 Windows,所以我的说明是使用 Windows 进行安装/设置 - 正如我在上面所说的,如果您是 Mac 或 Linux 用户并且设置非常不同,请告诉我,以便我可以将其包括在内。

我不是技术专家,甚至连 Git/GitHub 的专家都算不上,所以在安装过程中我选择了所有标准选项。除非你另有想法,否则我建议你也这么做(只需多次点击“下一步”,直到最终显示“完成”即可)。

接下来你需要一个 GitHub 账户,你可以在这里注册:https://github.com/

打开 GitHub 后请不要灰心,它看起来很可怕,但我会逐步指导您进行设置、将现有项目添加到 GitHub、访问/查看其他人的项目并为它们做出贡献。

设置 Git 和 GitHub

Git 由计算机上的“命令行”控制,有时也称为:cmd、cmd.exe 或命令提示符。如果您不知道,命令行是一个黑色方框,里面有白色文字,有时在安装/卸载新应用程序时会弹出,它看起来像这样:

Microsoft Windows 命令行的屏幕截图

如果您是 Mac 用户,则可以直接进入命令行,但是,对于 Windows 用户,您将需要使用 GitBash。

当您下载 Git 时,应该已经包含了GitBash,您可以通过按 Windows 键并输入 GitBash 或在搜索栏中搜索来访问它。

Windows 搜索栏的屏幕截图

打开后屏幕将会如下所示:

GitBash 的屏幕截图

首先你需要向 Git 介绍你自己,来吧,交个朋友,毕竟你们将一起踏上一段漫长而富有成果的旅程!

在每行的 $ 后输入以下内容,为 Git 提供您的用户名和电子邮件:

替代文本

要检查这些详细信息是否已保存,请输入:

替代文本

按下回车键,你就会看到类似这样的内容:

添加了用户名和电子邮件的 GitBash 屏幕截图

现在 Git 已经准备就绪,因此您需要在 GitHub 中创建一个 repo - 以便它接收您的文件。

但是劳拉——回购到底是什么?!

仓库(更正式的名称是 Repository)本质上是 Git/GitHub 中存储文件的容器。仓库有两种类型:本地仓库(位于你的电脑上)和远程仓库(位于服务器上)。我更喜欢把它理解为 GitHub 上的远程仓库。

在 repo 中,您将找到源代码文件、与项目相关的其他文件(如声音片段、图像)和 README 文件,该文件基本上解释了项目并可作为用户指南(如有必要)。

一个 repo 看起来是这样的:

Github 仓库的截图

您可以通过单击 GitHub 左上角的“猫图标”返回主页,然后单击“存储库”旁边的“新建”按钮来轻松创建一个。

屏幕截图:如何在 GitHub 中创建新的存储库

如何在 GitHub 中创建新存储库的第二张屏幕截图

为您的仓库命名,描述可选,选择公开或私有,然后点击“创建仓库”。现阶段无需创建 README 文件,稍后我们会创建。您也可以暂时保留 gitignore 文件。

您的新 repo 看起来应该有点像这样:

新仓库的截图

就这样!在我们演示如何链接您的文件时,请保持打开状态。

那么,如何将我的文件放入我的 Repo 中?

首先,让我们进一步讨论如何在您的计算机和 GitHub 之间移动文件。

我们可以将其称为“Git工作流程”,主要有四个元素:

工作目录(计算机上的文件夹)
这就像所有文件的库,您需要访问正确的文件夹(工作目录)来控制要更改/上传的文件

暂存区(中间区域)
在这里,你可以保存本地处理的文件,然后再将它们移动到仓库。这就好比说,我觉得这些文件是我想要上传的,但我不太确定,请帮我保管一下,以后我再决定如何处理它们。

暂存很有用,因为它意味着您不必将文件夹中的每个文件都发送到您的仓库,它允许您只移动要上传的文件

本地存储库(在您的计算机上)
您的 PC 上的存储库(文件文件夹/盒子/容器),用于存储您的文件,只有您才有权访问

远程存储库(GitHub)
您的存储库保存在服务器上(在线/远程/不在您所在的位置),任何人都可以访问 - 换句话说,您的 GitHub 存储库。

常用 Git 命令

有各种命令(全部输入到 GitBash 中)来告诉 Git 如何处理你的文件,以下是你在此阶段需要注意的命令:

cd Desktop/FolderName – 这告诉命令行您想要将计算机上的哪个文件夹(目录)发送到 git 工作流 – 我们稍后将通过一个示例来说明

git init – 可以将其视为初始化或启动进程。如果你想使用 git 执行任何操作,则需要包含 git init。它会将文件夹从普通文件夹转换为 Git 文件夹——Git 可以访问的文件夹。

git add – 这会将您的文件移动到暂存区

git commit – 这会将您的文件从暂存区移动到您的本地存储库(您的计算机上的存储库)

git push – 这会从本地存储库(计算机上的存储库)复制文件并将其发送到远程存储库(GitHub 上的存储库)

git pull – 从远程存储库(GitHub 存储库)获取文件并将其放入工作目录(Git 文件库)。

git status – 告诉你文件的状态 - 它们在哪里以及你对它们做了什么

git clone – 允许您将其他人的文件从 GitHub 复制到您的本地存储库(您的计算机)

好的,那么我可以把我的文件放到我的 repo 中吗,或者......?!

是的!下面是一步一步的指南,教你如何将你自己的现有项目添加到 GitHub。

1. 告诉 Git 去哪里查找

打开 GitBash 并输入:

替代文本

因此,如果您的项目存储在桌面上名为“project”的文件夹下,您可以输入:cd C:\Users\yourname\OneDrive\Desktop\Project

2. 创建 README 文件

类型:

替代文本

您可以稍后在 GitHub 中编辑此 README 文件

3. 启动流程

类型:

替代文本

GitBash 应该考虑一下,然后给你一个初始化消息,并将该文件夹标记为“main”。

4. 将文件添加到暂存区

类型:

替代文本

不要忘记添加后的空格和句号,这表示“全部”,并将确保所选文件夹中的所有文件都将在暂存区中被标记为待处理

如果您只想添加某些文件,您可以这样做:

git add后跟一个空格,然后是文件名

5.检查文件状态

在继续下一步之前,你可能需要检查一下暂存区中有哪些文件。你可以检查“status”来检查。输入:

替代文本

它将列出暂存区中的所有文件

6. 恐怖分子

类型:

替代文本

将所有文件发送到本地仓库。-m “” 选项的作用是让你能够在提交时添加一条消息,例如“首次提交”或“已修复错误的提交”。

7. 设置本地和远程存储库之间的链接

在 GitHub 中,打开你创建的存储库

在“快速设置”部分的顶部,您应该会看到一个 URL

GitHub 中快速设置的屏幕截图

将其复制到剪贴板(CTRL & C)

现在回到 GitBash 类型:

替代文本

您可能需要使用鼠标右键单击 + 粘贴,因为 CTRL & V 似乎不适用于 GitBash。

8. 真正可怕的人

类型:

替代文本

这会将文件从您的本地存储库(您的计算机)复制或“推送”到您的远程存储库(GitHub),即使得它们在 GitHub 上可见且可用,您需要“origin main”来告诉 GitHub 中的哪个分支需要更新(有关此内容的更多信息,请参见下文)。

9. 跳一支胜利之舞!

你刚刚将你的第一个 repo 推送到 GitHub —— 你现在是一个成熟的 Web 开发人员了 😉

是的!我做到了!但是我现在该做什么呢?

您可以在计算机上更改代码文件,像平常一样保存它们,然后在 GitBash 中:

  1. git add .(将更新的文件添加到暂存区)
  2. git status(仔细检查文件状态)
  3. git commit -m “第二次提交 - 错误修复”(提交到本地仓库)
  4. git push -u 源主服务器

编码并重复...这就是全部!

明白了,但是我如何访问其他人的代码?

在 GitHub 上找到你想贡献的项目或查看。如果你愿意,可以用我的石头剪刀布游戏来测试一下。

链接在这里:https://github.com/lauracharvey/rockpaperscissors

• 打开您感兴趣的项目的存储库
• Fork It

屏幕截图 - 如何 fork 一个 repo

在右上角,您的个人资料图片下方有一个 Fork 按钮,这会在您自己的 GitHub 上创建远程存储库的副本。

• 点击主体右上角的“代码”

已完成 repo 的屏幕截图

• 在下拉菜单中,选择 repo URL,并将其复制到剪贴板

• 现在转到 GitBash 并输入:

替代文本

您的文件路径将被替换为您计算机上想要存储新文件的位置

• 然后…

替代文本

例如:git clone https://github.com/lauracharvey/rockPaperScissors

• 终于...代码了😊

但是,您可以更改这些文件的本地副本;但您还不能将它们上传到其他人的远程存储库。

为了做到这一点,您首先需要创建代码分支,然后创建所谓的“拉取请求”。

我如何更改其他人的 repo?

深呼吸

所以……Git/GitHub 建立在一个分支系统中,想象一棵有 5 个分支的树,树上有 2 只啄木鸟,啄木鸟 A 在分支 1 上啄木鸟,而啄木鸟 B 在分支 2 上啄木鸟。两个分支属于同一棵树(主树),但它们可以同时在不同的分支上工作,啄木鸟 A 不必停下来让啄木鸟 B 完成它们的工作。

让我们将其带回到 Web 开发的环境中 - 开发人员 A 和 B 都在从事同一个项目 - 为了论证的目的,我们假设这是一个石头、剪刀、布的游戏。

开发人员 A发现了一些错误并想要修复这些错误,因此开始在他的计算机上进行修复。

开发人员 B想要开发游戏的一些新功能,但他很着急,不想等待A修复他的错误。

使用 Git/GitHub,开发人员 A 和 B 可以在自己的计算机上拥有自己的项目版本(分支),这样他们就可以同时工作,一旦完成编码,他们就可以将这些更改提交/推送到他们的分支,而不会影响主文件(树)。

一旦他们同意更改,他们就可以同意更新存储在 GitHub 中的主文件。

创建拉取请求的第一步是:

1. 检查您是否位于正确的存储库

替代文本

因此,如果您的项目存储在桌面上名为“Making-Code-Better”的文件夹下,您可以输入:

cd C:\Users\你的名字\OneDrive\Desktop\Making-Code-Better

2. 创建你的分支

类型:

替代文本

确保为你的分支指定一个描述性的名称,以便它对项目上的每个人都有意义,例如 branch-to-fix-bugs-in-version-1

3. 确保使用 checkout 命令告诉 Git 打开新分支

类型:

替代文本

然后您应该会收到以下消息:

切换到分支“分支名称”

您可以随时使用 git checkout 在分支之间移动,使用命令git checkout main返回主文件。

4. 将更新的文件添加到您的本地存储库(仍在分支上)。

类型:

替代文本

5.将这些更改添加到 GitHub 上的 fork 仓库

类型:

替代文本

这就像正常的推送一样,但你要确保推送到分支而不是主文件

6. 前往 GitHub 并准备发起“拉取请求”

发起实际的 Pull 请求

如果您已经跳到本节,则需要在创建拉取请求之前阅读上述步骤以从原始存储库设置分支。

如果没有,请按照以下步骤创建:

  1. 在 GitHub 中 – 打开分叉的存储库(您的副本)
  2. 点击左侧的“New Pull Request”
  3. 在左侧选择原始存储库,在右侧选择您的分叉存储库
  4. 您应该会看到一条警报,通知您可以合并分支 - 这意味着没有冲突的代码
  5. 原始创建者会收到通知,并决定是否接受你的拉取请求,然后你就大功告成了——你已经熟练掌握了 Git/GitHub……接下来是 3000 字,可能大脑会非常疲惫。干得漂亮!

结论

我真的希望本指南能帮助您理解首次使用 Git/GitHub 所需的步骤,而不会被术语所困扰。

如果您有任何疑问或者我没有解释清楚的地方,请给我留言。

正如简介中所解释的,我想做一系列这样的指南,所以如果您希望我介绍任何内容,请在 Twitter 上发表评论或联系我。

我很喜欢整理这个指南,所以请给我更多可以写的内容!😊

文章来源:https://dev.to/lauracharvey/writing-into-web-dev-the-no-jargon-guide-article-1-git-git-hub-igg
PREV
无行话指南 – 文章 2 – 让您的第一个网站上线真正有趣的东西……
NEXT
理解 API:10 个 API 概念和示例