你很有可能听说过 GitHub 如果你从事技术领域的工作,即使你不是一个专业的开发者。你甚至可能在学习软件或网络开发时偶然发现了一两个GitHub仓库。
不过,如果你从来没有使用过GitHub,它可能看起来令人困惑。它是一个云存储网站吗?程序员的社交网站?一个代码共享网站?事实证明,所有这些的答案都是肯定的,甚至更多。
今天,GitHub是开发者分享代码和共同开展项目的最受欢迎的资源之一。它是免费的,易于使用,并且已经成为开源软件运动的核心。
如果这一切听起来像是你应该知道的,请继续阅读–我们将解释什么是GitHub,为什么它很受欢迎,如何开始使用,也许最重要的是,”Git “实际上意味着什么。
什么是GitHub?
GitHub是一个在线软件开发平台,用于存储、跟踪和协作软件项目。它使开发者能够上传自己的代码文件,并与其他开发者在开源项目上进行合作。GitHub也是一个社交网站,开发者可以在其中公开交流、合作和推销他们的作品。
自2008年成立以来,GitHub已经获得了数百万用户,并确立了自己作为合作软件项目的首选平台的地位。该服务是免费的,并带有几个有用的功能,用于分享代码和与他人实时合作。
除了与代码相关的功能外,GitHub还鼓励用户为自己建立一个个人档案和品牌。你可以访问任何人的个人资料,看看他们拥有哪些项目,为哪些项目做出贡献。这使得GitHub成为程序员的一种社交网络,并促进了对软件的合作。 网站开发.
我们稍后会更详细地讨论GitHub。但首先,我们需要了解GitHub所基于的技术,即Git。
什么是Git?
Git是开源的版本控制软件,用于管理和跟踪文件的修订。它可以用于任何文件类型,但最常被用于跟踪代码文件。Git是软件开发中最广泛使用的版本控制系统,GitHub利用这一技术提供服务,因此它的名字也是如此。
你可能曾经使用过某种形式的版本控制。例如,谷歌文档(以及其他谷歌工作空间工具)有一个 “版本历史 “工具,你可以查看在不同时间点对文档的修改。微软Office的 “跟踪修改 “功能也有类似的功能。或者,你可能更喜欢保存一个文件的多个副本,并将其标记为 “v1″、”v2 “等。
先进的版本控制对于软件项目来说是必要的,尤其是协作性项目。在构建软件时,开发人员经常同时更新代码以增加功能和修复错误。直接对源代码进行这些修改是没有意义的,因为任何问题都会影响用户。相反,开发人员用他们自己的代码副本工作,然后–在代码被彻底测试后–将这些代码添加到主代码库中。
这似乎都很好。但是,在有多个贡献者的情况下,如果没有办法将每个人的贡献合并到一个统一的代码库中,也没有办法看到谁贡献了什么改动,事情就会很快变得非常混乱。这些变化也必须被跟踪和存储,以备出现问题,而开发者需要回溯和恢复以前的版本。
这就是Git的作用。当开发者想对软件进行修改时,他们会把自己的源代码副本从中央存储位置(称为仓库,简称 “repo”)下载到本地系统,对自己的副本进行安全的修改,然后把修改后的副本与仓库中的源文件合并,并附上解释修改的注释。Git跟踪所有这些修改,并将以前的版本作为备份保存。
GitHub是用来做什么的?
GitHub允许 软件开发人员和工程师 在云上免费创建远程、面向公众的仓库。一旦你在GitHub上建立了一个仓库,你就可以把它复制到你的设备上,在本地添加和修改文件,然后把你的变化 “推 “回仓库,你的变化就会显示给公众。
那么,为什么你会选择GitHub而不是用私有仓库开发呢?以下是GitHub如此大行其道的关键原因。
加强协作
GitHub最大的一个卖点是它的一套项目协作功能,包括版本控制和访问控制。
为了说明GitHub的可能性,想象一下这个场景。你想编写一个在线游戏,于是你邀请你的朋友来帮忙。你创建了一个 资源库 在GitHub上存储所有的文件,包括当前和过去的版本,然后让你的朋友合作者也能访问这个仓库。
你决定研究主要的玩法和屏幕,而你的伙伴则处理游戏的菜单和设置屏幕。为了让你们两个人同时推送你们的修改而不干扰对方的工作,你们创建了一个 分支 – 一个独立的开发区域–你的队友可以在那里建立他们的屏幕。同时,你继续在你的分支中工作。
一旦你的朋友完成了他们的工作,他们就可以把 拉动请求 要求将他们的工作与你的工作结合起来。如果你批准,你可以 合并 你的分支,以及你的代码。
现在,假设另一个开发者看到了你的游戏仓库,并有一个增加多人游戏模式的想法。他们可以 叉子 – 或制作他们自己的副本–你的版本库,然后添加他们的新功能。一旦完成,他们可以向你提交一个拉动请求。如果你批准了,这个分叉的版本库就会和你的版本库合并,你的游戏就成了多人游戏了。注意,任何人都可以分叉公共版本库,但接受或拒绝拉动请求是由版本库所有者决定的。
当然,没有哪个软件一开始就是完美的,这就是为什么你的GitHub版本库也有一个 问题 该部分用于列出待办事项和报告你游戏中的问题,讨论这些问题,并标记它们的解决。为了解决这些问题,你可以回顾一下文件的更新日志,看看何时何地出了问题。
总而言之,GitHub提供了一个集中的空间,几个、几十个、甚至几千个开发者可以无缝地对一个项目做出贡献,而不用担心覆盖任何人的工作或失去对变化的跟踪。
轻松的文件管理
GitHub在Git之上增加了一个光滑的图形用户界面(GUI)层。就其本身而言,Git通过命令行(计算机的基于文本的界面)进行操作。开发人员知道如何使用命令行,但对许多人来说,这并不总是与文件互动的最有效方式。
GitHub的界面为执行Git操作以及查看文件历史提供了一个简洁而友好的手段。这对开发者来说更方便,对初学Git的人来说更容易掌握。
另一个让GitHub更容易使用的好处是它基于云的基础设施。GitHub的用户可以从任何地方和任何设备访问他们的仓库,下载仓库,并推送他们的修改。使用GitHub意味着你不被限制在一个设备或环境中。
社交网络
任何GitHub用户都知道这个平台不仅仅是一个编写代码的地方。所有GitHub用户都有自己的档案,以显示他们的项目、贡献和在网站上的活动,并且可以看到任何人面向公众的档案和储存库。
GitHub的社交网络对其成功至关重要,因为它鼓励开发者探索和贡献于各类开源项目。以前,有抱负的合作者必须亲自联系项目所有者,请求允许他们作出贡献。有了GitHub,这就像分叉一个项目,然后提出拉动请求一样简单。项目所有者可以在接受请求之前审查某人的资料和过去的贡献。
GitHub也是为雇主展示项目的一种方式,可以作为一种投资组合。例如,招聘人员经常使用GitHub来考察人才,因为任何人都可以查看潜在的代码。
开源项目
由于我们所了解到的好处,GitHub推动了开源合作的热潮,导致许多广泛使用的软件技术的诞生。从 CSS框架 到 数据可视化库 到一个 游戏你可能花太多时间玩,如果没有开放的GitHub存储库,很多令人印象深刻的功绩就不会出现。
正如Web 2.0的趋势一样,GitHub也向任何想要开发软件的人开放了。 学习编程培养一个参与、创新和富有成效的社区。
私人资料库
当然,这一切都很好,但如果所有东西都是免费和开源的,GitHub是如何赚钱的?
答案是,GitHub也提供付费服务,包括私人仓库。在付费计划中,团队可以在GitHub上进行协作,同时把他们的代码放在封闭的虚拟门后面。GitHub还提供企业解决方案,为企业配备内部协作工具。
如何开始使用GitHub
在GitHub上出售?这里是如何开始的。提醒一下。在使用GitHub之前,你应该能够熟练使用命令行,因为Git使用终端作为其界面。
1. 安装最新版本的Git 在你的设备上。你需要安装Git才能与你的GitHub仓库一起工作。有多种方法,请遵循Git网站上的建议。Git软件是免费的。
2. 安装完Git后。 前往GitHub的网站 并用你的电子邮件地址创建一个账户。
3. 一旦你的GitHub账户设置完毕,你就会被带到你的仪表板。要启动你的第一个仓库,请点击 创建仓库 在左边。
4. 关于 创建一个新的资源库 屏幕,输入你的版本库名称和可选的描述(你可以稍后改变这两点)。
5. 在同一个屏幕上,添加一个README文件(一个描述你的项目的文本文件,也是开发中的一个最佳实践),一个.gitignore(删除不相关的文件,如.DS_Store),以及你的项目的许可证。
6. 点击 创建存储库.你会被带到你的主版本库页面,其中列出了你的文件。
7. 现在你将创建一个 GitHub 仓库的本地副本(用 GitHub 的术语来说,就是 “克隆 “你的仓库),在那里你将编辑你的文件并推送你的改动。在你的主仓库页面,点击绿色的 代码 按钮,然后复制你的版本库的HTTPS URL。
8. 打开你的终端,导航到你想放置版本库副本的目录。
9. 在终端中,输入 git clone.在这之后,粘贴上你之前复制的版本库的URL。你的命令应该看起来像这样。
git clone https://github.com/your-username/your-repo-name.git
10. 新闻 进入 来克隆版本库。你会看到你的本地文件系统中添加了一个新文件,文件名是你的仓库名称。如果你打开这个文件,你会看到它包含了你的 GitHub 仓库中的文件。这些是仓库文件的复制版本,你可以编辑,然后推送回仓库。
11. 最后,让我们在克隆的仓库中创建一个新文件,然后推送到GitHub。在你的本地克隆中,创建一个新的文本文件,名为 hello.txt.在其中,粘贴以下文字 你好,世界! 并保存该文件。
12. 在终端,导航到你的克隆版本库内部。
13. 在终端中,输入 git add . 并按 输入.这样就可以准备推送你克隆的版本库中的所有文件。
14. 在终端中,输入 git commit -m “added hello.txt” 并按 输入.这样就把你的修改提交到了更新日志中。引号中的文字是一个评论,简要描述了提交的目的。
15. 类型 git push origin main 在终端中,按 输入.
16. 回到你的GitHub仓库,你会看到你的新文件被添加。
GitHub。软件背后的平台
当我们想到技术创新时,有时很容易把一切归功于一个人–想想史蒂夫-乔布斯或比尔-盖茨。当然,现实情况是,软件的进步要归功于数以百万计的专业和业余开发人员,他们共同以新的方式开发新的东西。
这就是GitHub的魅力所在。它降低了合作的门槛,因此任何人都可以为自己选择的项目提供想法,或者开始自己的项目。很难想象在GitHub之前的开源软件世界–事实上,它确实少了很多。现在,它已经准备好供任何人探索,包括你。