• 【Git】git的安装与使用教程


    1.简介

    1.1.什么是Git

    Git是一个分布式版本控制系统,用于跟踪和管理项目代码的变更。它可以记录每次代码提交的详细信息,并支持多人协作开发。Git能够有效地管理和追踪代码的修改历史,使团队成员可以协同工作、并行开发、合并代码,并轻松回溯到不同的版本。通过Git,开发者可以在本地仓库进行代码的修改和提交,而不需要依赖中央服务器。Git的特点包括分布式架构、高效性能、强大的分支管理、灵活的工作流程等,使其成为广泛使用的版本控制系统之一。

    1.2.Git与SVN的区别

    Git和SVN是两种常见的版本控制系统,它们在设计和工作方式上有一些重要区别。

    分布式 vs 集中式:

    Git是分布式版本控制系统,每个开发者都有完整的代码库副本,可以在离线状态下工作。每个开发者都可以进行本地提交、分支操作等,最后再将修改推送到远程仓库。这使得团队成员之间的协作更加灵活,并且没有单点故障。
    SVN是集中式版本控制系统,代码库只存在于中央服务器上,开发者需要与服务器交互才能进行版本控制操作。开发者需要依赖服务器来获取代码更新和提交代码,这对于大型项目和远程团队可能会增加网络延迟和依赖性。
    性能:

    Git在处理大型项目和大量文件时通常比SVN更快速有效。由于每个开发者都有完整的代码库副本,所以大部分操作可以在本地完成,不需要频繁地与服务器进行通信。同时,在从远程仓库拉取代码时只传输差异部分,减少了网络传输负担。
    SVN在大型项目和频繁提交的情况下可能会受到性能影响,因为所有的版本历史都存储在中央服务器上,提交和更新操作需要依赖服务器的性能和网络连接。
    分支管理:

    Git的分支管理功能非常强大灵活,支持轻松创建、合并和切换分支。每个分支可以独立进行开发,并且可以方便地合并到主干或其他分支。这使得团队成员可以同时处理多个任务,更好地组织和协调工作。
    SVN的分支操作相对复杂一些,需要手动创建和合并分支,而且分支的管理是集中式的,需要与服务器进行交互。
    版本号:

    Git使用哈希值作为版本号,可以唯一标识每个代码提交。这使得每个提交都有一个唯一的标识,方便追踪和回溯代码历史。
    SVN使用递增数字作为版本号,每次提交都会自动递增,但没有像Git那样唯一标识每个提交的能力。
    总体来说,Git具有分布式架构、高效性能、强大的分支管理和灵活的工作流程等特点,适用于大型项目和分布式团队协作。SVN则更适用于小型项目和集中式团队协作,较为简单易用。选择使用哪种版本控制系统取决于具体的项目需求和团队情况。
    1.3.Git工作流程
    Git的工作流程通常包括以下几个主要步骤:

    克隆(Clone)代码库:

    开始一个新项目或参与一个已存在的项目,首先需要将远程代码库克隆到本地。使用git clone 命令可以在本地创建一个与远程代码库相同的副本。
    修改代码:

    在本地代码库中进行开发工作,对代码进行修改、添加新功能等操作。
    提交代码:

    将修改的代码提交(Commit)到本地代码库。使用git add 命令将指定文件添加到暂存区,然后使用git commit -m ""命令将暂存区的修改提交到本地代码库,并附上提交消息说明。
    推送代码:

    将本地代码推送(Push)到远程代码库,使得其他团队成员可以看到和获取最新的代码。使用git push命令将本地代码库的修改推送到远程代码库。
    拉取代码:

    如果有其他人对同一份代码进行了修改,为了保持代码的同步,您可以执行拉取(Pull)操作,将远程代码库的最新代码拉取到本地。使用git pull命令可以从远程代码库拉取最新的代码更新。
    以上是Git的基本工作流程,通过这些步骤,多人协作开发时可以更好地管理和追踪代码的变更,并确保团队成员之间的代码同步。同时,Git还提供了强大的分支管理功能,允许并行开发和合并不同的代码分支,从而进一步优化工作流程。

    二、安装Git

    下载安装程序:

    首先,您需要从Git官方网站(https://git-scm.com/)下载适用于您操作系统的Git安装程序。根据您的操作系统选择合适的版本(Windows、Mac、Linux等)。
    运行安装程序:

    下载完成后,运行Git安装程序。按照提示进行安装,可以接受默认设置,也可以根据个人需求进行自定义安装。
    选择安装选项:

    在安装过程中,您会看到一些选项供您选择。这些选项可能涉及安装路径、编辑器选择、环境变量等,您可以根据个人偏好进行选择和配置。
    完成安装:

    安装程序将会在您选择的安装目录中安装Git,并配置相关的环境变量和系统设置。安装完成后,您就可以使用Git命令行工具了。
    验证安装:

    打开命令行终端(或Git Bash),输入git --version命令,检查是否成功安装并显示当前Git的版本号。如果能够正常显示版本号,则说明Git已成功安装。

    三、注册Gitee帐号

    3.1.注册账号
    在这里插入图片描述

    3.2.新建码云仓库
    在这里插入图片描述

    四、使用Git进行上传与下载代码

    使用Git进行代码上传和下载的流程如下:

    上传代码:

    在本地创建一个新的Git仓库,或者克隆(Clone)一个已存在的远程仓库到本地。

    在本地进行代码修改和开发。

    使用以下命令将修改的代码提交到本地仓库:

    git add :将文件添加到暂存区。
    git commit -m “”:提交暂存区的修改到本地仓库,并添加提交消息。
    如果需要,可以使用git push命令将本地仓库的修改推送到远程仓库。这样其他团队成员就可以看到和获取最新的代码。

    下载代码:

    在本地选择一个目录,用于存储要下载的代码。

    使用git clone 命令将远程仓库克隆到本地。是远程仓库的URL。

    Git会自动将远程仓库的所有代码下载到指定的本地目录。您可以在本地对代码进行修改和开发。

    更新代码:

    如果有其他人对远程仓库进行了修改,为了保持代码同步,您可以执行拉取(Pull)操作,将远程仓库的最新代码拉取到本地。

    使用git pull命令可以从远程仓库拉取最新的代码更新。Git会自动合并远程分支和本地分支的代码。

    通过使用Git进行上传和下载代码,团队成员可以方便地协作开发,并确保每个人都拥有最新的代码。同时,Git还提供了强大的分支管理功能,允许并行开发和合并不同的代码分支。这样可以更好地组织和协调工作,提高团队的整体效率。

    五、使用Git代码冲突

    1.git冲突的场景(主要演示情景三)
    情景一:多个分支代码合并到一个分支时;
    情景二:多个分支向同一个远端分支推送代码时;
    情景三:同一分支,同一文件修改后的提交(即为多个程序员修改了同一个文件)
    实际上,push操作和pull操作其实就分别是用本地分支合并到远程分支 和 将远程分支合并到本地分支,所以这两个过程中也可能存在冲突。

    分别在同一项目的两个不同本地仓库修改a.txt并提交,则会报出以下错误:
    ! [rejected] master -> master (fetch first) error: failed to push some refs to ’ 。。。’

    拒绝错误:无法推送某些引用
    2.解决方案
    1.将代码copy出来
    2.先从远程仓库pull代码至本地,再修改冲突代码,
    注1:git status查看仓库状态,会显示红色的错误提示消息“ both modified: a.txt”
    3.打开a.txt,手动修改冲突部分的代码
    <<<<<<< HEAD
    ww add 18:42 from e:\temp\test1
    =======

     ls add 123 at 18:17 from d:\temp\test1
     >>>>>>> 63c73e5933bb7d3d2bed04b06c37a74602d65b2e
     注1:<<<<<<< HEAD  >>>>>>>之间的即为冲突的代码,手动修改即可
    
    • 1
    • 2
    • 3

    3.依次add/commit/push代码至远程仓库
    commit执行完生,重新查看仓库状态git status,红色的错误提示消息“ both modified: a.txt”
    已经没有,表示冲突已解决

    六、Git常用命令

    初始化:

    git init:在当前目录初始化一个新的Git仓库。
    克隆和远程操作:

    git clone :克隆(Clone)远程仓库到本地。
    git remote add :添加一个远程仓库。
    git pull :从远程仓库拉取最新的代码更新。
    git push :将本地的代码推送到远程仓库。
    添加和提交:

    git add :将文件添加到暂存区。
    git commit -m “”:提交暂存区的修改到本地仓库,并添加提交消息。
    分支管理:

    git branch:查看分支列表。
    git branch :创建一个新的分支。
    git checkout :切换到指定分支。
    git merge :合并指定分支到当前分支。
    git stash:将当前工作保存到一个临时存储区,以便切换分支或恢复后再应用。
    查看和比较:

    git status:查看文件状态。
    git log:查看提交历史记录。
    git diff:查看文件的修改差异。
    git show :显示特定提交的详细信息。

  • 相关阅读:
    Spring Boot 应用在 kubernetes 的 sidecar 设计与实战
    【牛客刷题-算法】加精 | 合并两个有序的链表 - 从思路设计、bug排除到最终实现的全过程
    SQL必需掌握的100个重要知识点:创建计算字段
    10 | 多态
    正点原子嵌入式linux驱动开发——U-boot移植
    【前端攻城师之JS基础】03函数进阶
    7. 顺序查找、折半查找(折半查找树)、分块查找
    Linux 网络编程 广播/组播
    【web APIs】4、(学习笔记)有案例!
    LINUX之文件
  • 原文地址:https://blog.csdn.net/m0_74018330/article/details/134322443