网站建设利润越来越低,怎么把网站扒下来,遂宁建设网站,企业建设网站需注意哪些内容Git 快速入门#xff1a;全面了解与安装步骤
一、关于Git
1.1 简介
Git 是一个开源的分布式版本控制系统#xff0c;由 Linus Torvalds 于 2005 年创建#xff0c;最初是为了更好地管理 Linux 内核开发而设计。
Git用于跟踪计算机文件的变化#xff0c;特别是源代码文件…Git 快速入门全面了解与安装步骤
一、关于Git
1.1 简介
Git 是一个开源的分布式版本控制系统由 Linus Torvalds 于 2005 年创建最初是为了更好地管理 Linux 内核开发而设计。
Git用于跟踪计算机文件的变化特别是源代码文件。它允许多个开发者同时合作开发软件项目同时保留完整的版本历史确保代码的稳定性和可追溯性。
在 2005 年Linus Torvalds 迫切需要一个新的版本控制系统来维护 Linux 内核的开发。于是他花了一个星期的时间从头开始编写了一个革命性的新系统并将其命名为 Git。二十年之后该平台成为了这个竞争激烈领域里面当之无愧的领导者。
在全球范围内大量的初创企业、集体企业和跨国公司包括谷歌和微软使用 Git 来维护它们软件项目的源代码。它们中有些公司拥有自己的 Git 项目有些公司则通过商业托管公司使用 Git比如 GitHub成立于 2007 年Bitbucket成立于 2010 年和 GitLab成立于 2011 年。其中最大的 GitHub 拥有 4000 万注册开发者 并在 2018 年被微软以 75 亿美元的天价收购。
Git 的吸引力之一在于它是开源的就像 Linux 和 Android 那样。但是还有其它开源的 VSC其中包括协作版本系统CVS、SVN、Mercurial 和 Monotone因此单凭这一点并不足以解释它的优点。
关于 Git 市场主导地位的最好体现是 Stack Overflow 对开发人员的调查。调查结果显示2018 年 74289 名受访者中有 88.4% 使用了 Git高于 2015 年的 69.3%。最接近的竞争对手是 Subversion普及率为 16.6%低于 36.9%Team Foundation 版本控制从 2015 年的 12.2% 降为 11.3%Mercurial 普及率为 3.7%低于 7.9%。事实上Git 的优势如此之大以至于 Stack Overflow 的数据科学家都懒得在 2019 的调查中提出这个问题。
开源人员使用什么来进行源码控制| 2018 | 2015 |
| ---------------------- | ---------------------- |
| Git: 88.4% | Git: 69.3% |
| Subversion: 16.6% | Subversion: 36.9% |
| Team Foundation: 11.3% | Team Foundation: 12.2% |
| Mercurial: 3.7% | Mercurial: 7.9% |
| | CVS: 4.2% |
| | Perforce: 3.3% || 74,298 受访者 | 16,694 受访者 |数据来源Stack Overflow 2018/2015 开发者调查报告
1.2 发展
Git 的发展历程可以追溯到 2005 年其诞生与当时的一个开源项目——Linux 内核的版本控制问题密切相关。
1. 背景Linux 内核的版本控制问题
在 Git 诞生之前Linux 内核项目使用的是一个叫做 BitKeeper 的分布式版本控制系统。BitKeeper 是一种商业软件免费提供给开源项目使用但随着时间的推移BitKeeper 与开源社区的关系变得紧张。2005 年BitKeeper 的公司决定撤回对开源社区的免费使用授权这让 Linux 内核的开发者面临了没有合适工具的困境。 大家都知道Linux 内核是开源的参与者众多到目前为止共有两万多名开发者给 Linux Kernel 提交过代码。 但在 1991 年到 2002 年期间Linus TorvaldsLinux 内核的创始人作为项目的管理员并没有借助任何配置管理工具而是以手工方式通过 patch 来合并大家提交的代码。 倒不是说 Linus 喜欢手工处理而是因为他对代码版本管理工具非常挑剔无论是商用的 clearcase还是开源的 CVS、SVN 都入不了他的法眼。 直到 2002 年Linus 才相中了一款分布式版本控制系统 BitKeeper虽然是商用的但 BitKeeper 愿意让 Linux 社区免费使用这让 Linus 非常开心和满意。 时间来到 2005 年由于 BitKeeper 提供的默认接口不能满足 Linux 社区用户的全部需要一位开发者在未经允许的情况下反编译了 BitKeeper 并利用了未公开的接口于是 BitKeeper 的著作权拥有者Larry McVoy拉里·麦沃伊就气愤地收回了 Linux 社区免费使用的权力。
2. Git 的诞生 (2005 年)
为了应对这个问题Linus TorvaldsLinux 内核的创始人决定开发一个新的版本控制系统。
Linus Torvalds
Torvalds 的目标是
高效地管理大型项目如 Linux 内核。提供分布式架构支持多个开发者的协作。确保性能优越能够快速处理大量的数据。强调代码历史的完整性避免丢失历史数据。
结果令人意想不到的是Linus 只用了一个星期就用 C语言完成了第一个版本嗯。。神就是神。并且给这个版本起了一个略带嘲讽意味的名字——Git在英式英语俚语中表示“不愉快的人”。
Torvalds 将它命为 Git 的原因有很多种说法但实际上他只是喜欢这个词这是他从披头士的歌曲《I’m So Tired》第二节中获得灵感。
源代码的自述文件有进一步的阐述 The name “git” was given by Linus Torvalds when he wrote the very first version. He described the tool as “the stupid content tracker” and the name as (depending on your way) 如果选历史上最伟大的一次 Git 代码提交那一定是这 Git 工具项目本身的第一次代码提交。这次代码提交无疑是开创性的如果说 Linux 项目促成了开源软件的成功并改写了软件行业的格局那么 Git 则是改变了全世界开发者的工作方式和写作方式。
那么Torvalds 对 Git 的巨大成功感到惊讶吗 “如果我说我能看到它即将成功那绝对是在撒谎。我当然没有。但是 Git 确实把所有的基础都做对了。有什么事情可以做得更好吗当然。但总的来说Git 确实解决了一些与 VCS 有关的真正困难的问题。” 他说。
2005年4月7日Linus Torvalds 宣布了 Git 的首次发布。Git 是一个分布式版本控制系统其设计和实现从一开始就以高效性和灵活性为目标。
3. 初期的发展从 Linux 内核到广泛采用
2005 年Git 发布后首先应用于 Linux 内核的开发。Linux 内核开发者和其他开源项目很快就开始采用 Git。2005-2006 年Git 在开源社区中逐渐获得了认可成为管理大型项目的理想工具。与此同时Git 的功能逐渐完善。
4. GitHub 的诞生 (2008 年)
GitHub 的出现极大推动了 Git 的普及。GitHub 是一个基于 Git 的托管平台提供了一个易于使用的 Web 界面和协作功能简化了 Git 的使用并为开源项目提供了一个集中的托管和版本管理服务。2008 年GitHub 成立并迅速成为 Git 用户和开源项目的主要平台。
GitHub 引入了 Pull Requests拉取请求等社交编码功能允许开发者轻松地提出代码修改建议并进行讨论。这一功能使 Git 在团队协作和开源项目中更具吸引力。
5. Git 的广泛普及
随着 GitHub 和其他平台如 GitLab、Bitbucket的兴起Git 被越来越多的开发者和团队采用成为开源项目和企业内部项目的标准版本控制工具。Git 支持分布式开发的特点使得它特别适合现代软件开发中的分支管理、协作开发和持续集成等工作流。
6. Git 生态系统的发展
随着 Git 的普及围绕 Git 形成了丰富的工具和生态系统
GitLab另一个流行的 Git 托管平台支持 Git 的同时提供 CI/CD持续集成/持续交付功能。Bitbucket最初以支持 Mercurial 版本控制为主后来转向了 Git并成为 Atlassian 系列产品的一部分。GitKraken为 Git 提供了图形化界面便于开发者操作和管理。
此外许多 IDE 和文本编辑器如 Visual Studio Code、JetBrains 的 IntelliJ IDEA 等也集成了 Git 支持进一步促进了其普及。
7. Git 的重要特性和发展
Git 逐步增加了许多新功能和优化以下是一些重要特性
Git LFSLarge File Storage 支持大文件的版本控制。Git Submodules支持将一个 Git 仓库嵌套到另一个 Git 仓库中适用于多仓库管理。Git Flow一种流行的 Git 工作流特别适用于团队开发和发布管理。性能优化Git 不断优化其在大规模项目中的性能增强了处理速度和效率。
8. Git 的未来
Git 已经成为全球最广泛使用的版本控制工具未来它可能继续增强与现代开发工具和工作流的集成如 DevOps、持续集成/持续交付CI/CD等同时可能引入更多的可视化和易用性功能。
1.3 功能特点
分布式每个开发者都有整个代码仓库的完整拷贝包括所有的版本历史。这意味着即使没有网络连接开发者也可以查看项目的完整历史记录并进行提交等操作。快照存储大多数版本控制系统存储的是文件的变化或差异而 Git 存储的是文件在每次提交时的状态快照。这使得 Git 在处理大文件和复杂项目时更加高效。分支管理Git 的分支功能非常强大且灵活可以轻松创建、合并和删除分支。这对于尝试新想法、修复bug或是开发新特性非常有用。数据完整性Git 使用 SHA-1 散列算法对文件内容和目录结构进行校验和计算确保了文件的历史记录不被篡改。性能由于 Git 是分布式的设计很多操作都是本地执行因此速度非常快。强大的社区和支持作为一个开源项目Git 拥有庞大的用户群和活跃的社区提供了大量的文档、教程和工具支持。跨平台Git 可以运行在多种操作系统上包括 Windows、Linux 和 macOS。
二、下载安装
2.1 官网下载
https://git-scm.com/downloads
下载得到安装包
2.2 安装
双击安装包一直点下一步就行
安装完成后在任意目录点击鼠标右键如果能看到如下菜单则表示安装完成
2.3 验证
在 Git Bash 中输入以下命令
git --version如果 Git 已正确安装您将看到类似如下的输出 git version 2.x.x其中 2.x.x 是 Git 的版本号具体版本号会根据您安装的版本而不同。 如果 Git 未安装或出现错误您将看到类似如下的错误信息 bash: git: command not found或者 git is not recognized as an internal or external command
2.4 Git交互方式
Git 提供了多种交互方式其中最常用的有 Git GUI 和 Git Bash。这两者各有特点适合不同的用户需求和使用场景。在安装 Git 时上述两种方式通常会与 Git 一起自动安装。
1. Git GUI图形用户界面
Git GUI 是一个图形化的 Git 客户端界面适合那些不习惯命令行操作或希望使用更直观界面进行 Git 操作的用户。
特点
图形化操作用户可以通过图形界面执行大多数 Git 操作如提交、分支管理、查看日志等不需要输入命令。简单易用适合初学者和不熟悉命令行的用户提供了直观的界面来处理版本控制。功能丰富虽然是图形界面但几乎支持 Git 命令行中所有的基本功能用户可以通过点击按钮或菜单完成操作如提交、推送、拉取、合并等。适合小团队和个人使用Git GUI 更适合需要快速操作的用户适合不进行复杂命令行操作的小团队或个人项目。
主要功能
查看文件变更可以轻松查看工作区中的文件与版本库中已提交内容的差异。提交和推送代码可以通过简单的点击提交更改并推送到远程仓库。分支管理可以方便地创建、切换、合并分支等。查看日志查看提交历史和相关详细信息。
使用场景
新手用户对于不熟悉命令行的用户Git GUI 提供了更友好的操作界面。可视化操作适合那些更偏向图形化界面而非纯命令行用户。
2. Git Bash命令行工具
Git Bash 是 Git 提供的一个命令行工具模拟 Unix shell 环境用于执行 Git 命令。它是基于 Bash一个常见的 Unix shell环境的提供了一个命令行界面用户可以通过输入命令来与 Git 进行交互。
特点
命令行界面用户通过输入 Git 命令来进行版本控制操作。相比图形界面命令行方式通常更加灵活且功能强大。跨平台支持Git Bash 可以在 Windows 上模拟 Linux 命令行环境提供类似于 macOS 或 Linux 系统的体验。高效和强大Git Bash 支持 Git 命令和常用的 Linux 命令可以在命令行中执行文件操作、版本控制命令、网络操作等效率高且适合批量操作。支持脚本和自动化你可以编写 Bash 脚本来自动化某些 Git 操作适用于开发中的复杂任务。
主要功能
执行 Git 命令通过 Git Bash你可以运行 Git 的所有命令如 git commit、git push、git pull、git merge 等。支持常用 Linux 命令Git Bash 不仅支持 Git 命令还提供了 Bash shell 的常用命令如 ls、cd、rm 等用于文件系统操作。跨平台一致性Git Bash 为 Windows 提供了类似 Unix 的环境使得 Windows 用户可以像在 Linux/macOS 上那样使用 Git。调试和脚本支持开发人员可以编写 Bash 脚本来自动化一些常见的 Git 操作提高效率。
安装
Git Bash 是 Git 安装包的一部分。当你下载并安装 Git 时Git Bash 会自动安装。安装后你可以在开始菜单中找到“Git Bash”并打开它。
使用场景
命令行用户Git Bash 对于熟悉命令行的开发人员来说更为高效能够直接执行 Git 操作。跨平台开发在 Windows 上Git Bash 为开发者提供了一个类 Unix 环境适合那些在跨平台开发中需要一致性体验的用户。自动化和批量操作如果你需要批量处理或自动化 Git 操作Git Bash 是一个更灵活的工具。
在本文中简要介绍了 Git 的基本概念及其安装方法。Git 作为目前最流行的分布式版本控制系统已广泛应用于开源项目及企业开发中。通过安装和配置 Git您已经迈出了学习和使用版本控制的第一步。
在接下来的文章中我们将深入探索 Git 的常用命令和工作流程帮助您更好地理解如何使用 Git 来管理代码、协作开发和保持项目历史的清晰。