Git(一)

本文介绍了版本控制系统的基本概念,重点讲解了Git(分布式)与SVN(集中式)的区别,列举了Git的核心功能如版本控制、分支管理、合并等,并提到了Git管理工具及其在开发中的应用,包括文件状态颜色含义。下文将深入探讨Git命令和开发流程。
摘要由CSDN通过智能技术生成

        老规矩,咱们先说八股文,再举例实践说明

版本控制系统        

        说到Git,我们得先了解一下版本控制系统是什么:

        版本控制系统(Version Control System,简称 VCS)是一种记录文件内容变化的系统,旨在跟踪文件的修改历史、协调多人在同一项目上的工作,并且能够轻松地回滚到历史版本。它在软件开发、文档管理和其他需要跟踪文件变化的领域中得到广泛应用。

版本控制系统的主要功能包括:

  1. 跟踪文件变化:版本控制系统可以记录文件每次修改的内容,包括新增、修改和删除操作,以及修改的时间和作者等信息。

  2. 版本管理:版本控制系统可以存储和管理文件的不同版本,使得用户可以随时回溯到历史版本,并查看文件在不同版本间的差异。

  3. 分支管理:版本控制系统支持创建多个分支,每个分支可以在不同的开发方向上工作,最终将分支合并到主分支上。

  4. 协作与合并:版本控制系统可以协调多人在同一项目上的工作,可以合并不同分支的修改,解决合并冲突。

  5. 远程仓库:版本控制系统可以与远程仓库进行交互,将本地仓库的变化推送到远程仓库,或者从远程仓库拉取最新的变化。

常见的版本控制系统包括:

  • Git:Git 是一个分布式版本控制系统,广泛应用于软件开发领域,具有高效、灵活、分布式的特点,支持快速的分支和合并操作。

  • SVN(Subversion):SVN 是一个集中式版本控制系统,使用较为广泛,但逐渐被 Git 取代。它采用集中式的存储方式,需要连接到中央服务器才能进行版本控制操作。

  • Mercurial:Mercurial 是另一个分布式版本控制系统,类似于 Git,但使用起来有一些不同的特点和命令。

集中式和分布式的区别

  1. 数据存储方式

    • 集中式版本控制系统:CVCS 将所有文件的版本历史存储在中央服务器上,工作副本只包含当前版本的文件。用户在进行版本控制操作时需要连接到中央服务器。
    • 分布式版本控制系统:DVCS 中,每个用户都拥有完整的版本库(包含所有历史版本),可以在本地进行版本控制操作,不需要持续连接到中央服务器。
  2. 协作方式

    • 集中式版本控制系统:CVCS 的协作方式是基于中央服务器的,用户必须通过中央服务器进行代码共享和协作。
    • 分布式版本控制系统:DVCS 允许每个用户在本地进行开发和版本控制操作,可以在没有网络连接的情况下工作,只需要在需要时与远程仓库同步。
  3. 分支和合并

    • 集中式版本控制系统:CVCS 的分支和合并通常比较复杂,因为所有的操作都需要通过中央服务器来进行,可能会导致较长的等待时间和冲突。
    • 分布式版本控制系统:DVCS 的分支和合并操作更加灵活和高效,用户可以在本地快速创建、合并和删除分支,不会受到中央服务器的限制。
  4. 安全性和可靠性

    • 集中式版本控制系统:CVCS 的安全性和可靠性高度依赖于中央服务器,如果服务器出现故障或数据丢失,可能会导致严重的问题。
    • 分布式版本控制系统:DVCS 每个用户都拥有完整的版本库备份,因此更加安全可靠,即使某个用户的本地仓库损坏,也可以通过其他用户的备份进行恢复。

        我从Git官网上把官方对git的描述给翻译过来

        Git是一个免费开源的分布式版本控制系统,旨在快速高效地处理从小型到大型项目的所有内容。

        Git易于学习,占地面积小,性能闪电般快。它以廉价的本地分支、方便的暂存区域和多个工作流等功能胜过了Subversion、CVS、Perforce和ClearCase等SCM工具。

        然后再通过自己的总结说明一下git:   

        Git 是一个分布式版本控制系统,用于跟踪文件的变化并协调多人在同一个项目上的工作。它最初由 Linus Torvalds 为了管理 Linux 内核开发而创建,现在已经成为许多软件开发项目的首选工具。

 Git 的核心概念

        Git 的核心概念包括:

  1. 版本控制:Git 可以跟踪文件的每一次变化,包括新增、修改和删除。这使得开发者可以回溯到任意历史版本,并查看文件在不同版本间的变化。

  2. 分支:Git 允许创建多个分支,每个分支可以在不同的开发方向上工作。这使得团队可以并行开发不同的功能或修复不同的 bug,最终再将这些分支合并到主分支上。

  3. 合并:Git 提供了强大的合并功能,可以将两个或多个分支的工作合并为一个。这通常用于将一个功能开发完成后合并回主分支。

  4. 远程仓库:Git 支持与远程仓库进行交互,可以将本地仓库中的变化推送到远程仓库,或者从远程仓库拉取最新的变化。

  5. 标签:Git 可以给特定的提交打上标签,用于标识重要的里程碑或版本号。

Git管理工具

        Git 管理工具是用于简化和提高 Git 使用体验的软件或服务。这些工具提供了图形界面、命令行工具、集成开发环境 (IDE) 插件等形式,帮助用户更轻松地使用 Git 的功能和命令。以下是一些常见的 Git 管理工具:

  1. Git 命令行工具:Git 自带的命令行工具是最原始、最强大的 Git 管理工具。它提供了一系列命令,可以完成 Git 的所有操作,包括初始化仓库、添加文件、提交变更、分支管理、合并等。

  2. GitHub Desktop:GitHub Desktop 是 GitHub 官方推出的桌面客户端工具,提供了图形界面来管理 Git 仓库。它支持在本地创建、克隆、提交、推送、拉取等操作,并且与 GitHub 服务紧密集成,可以方便地在 GitHub 上进行代码管理和协作。

  3. GitKraken:GitKraken 是一款流行的跨平台 Git 客户端,提供了直观的图形界面来管理 Git 仓库。它支持分支可视化、合并冲突解决、提交管理等功能,并且与 GitHub、GitLab、Bitbucket 等服务集成。

  4. SourceTree:SourceTree 是由 Atlassian 开发的免费 Git 和 Mercurial 客户端工具,提供了直观的图形界面和强大的功能,包括分支管理、提交管理、合并冲突解决等。它也支持与 Bitbucket、GitHub、GitLab 等服务集成。

  5. GitLab:GitLab 是一个基于 Git 的完整的 DevOps 平台,提供了代码托管、持续集成、部署管道等功能。它内置了 Git 仓库管理功能,并且提供了 Web 界面和 API 来管理仓库、分支、合并请求等。

Git代码编写时的各文件颜色意义

        在使用 Git 管理文件时,文件名在命令行界面中的颜色通常表示文件的状态。在默认情况下,Git 的文件颜色约定如下:

  1. 绿色:表示文件已经添加到暂存区,等待被提交。

  2. 红色:表示文件已经修改但尚未添加到暂存区。

  3. 白色:表示文件没有发生变化,即暂存区和工作区的文件内容相同。

  4. 蓝色:表示文件是新添加的未跟踪文件。

八股文点到为止,下一章,我会说一下常用的git命令以及在开发中大致的git使用流程,如有不对或不全的地方还望各位兄弟姐妹们留言区给出纠正

  • 36
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值