• Git的入门详细教程


        🏅我是默,一个在CSDN分享笔记的博主。📚📚 

    ​​

    🌟在这里,我要推荐给大家我的专栏《git》。🎯🎯

    🚀无论你是编程小白,还是有一定基础的程序员,这个专栏都能满足你的需求。我会用最简单易懂的语言,带你走进代码的世界,让你从零开始,一步步成为编程大师。🚀🏆

    🌈让我们在代码的世界里畅游吧!🌈

    🎁如果感觉还不错的话请记得给我点赞哦!🎁🎁

    💖期待你的加入,一起学习,一起进步💖💖

    一.git的简介

    1.什么是git?

    Git是一个免费开源的分布式版本控制系统,最初由Linus Torvalds创建,用于管理软件开发过程中的代码版本和协作。

    2.Git的主要特点

    1. 分布式版本控制: 每个开发者在本地都有完整的代码仓库,可以独立工作,无需依赖中央服务器。

    2. 高效性能: Git设计上非常高效,快速执行提交、分支、合并等操作,使得大型项目也能够轻松管理。

    3. 强大的分支支持: Git鼓励频繁的分支与合并,使得并行开发变得更加容易,而且合并冲突解决相对简单。

    4. 完整性保证: Git使用SHA-1哈希算法来保证数据完整性,能够确保存储在Git仓库中的数据不会轻易被更改或丢失。

    5. 多种协议支持: Git支持多种网络协议(如SSH、HTTP、Git等)来进行远程仓库的访问和传输。

    通过Git,开发者可以跟踪文件的变化、撤销修改、比较差异、合并代码以及管理项目的不同版本。它已经成为了许多软件开发团队的标准工具,并且被广泛应用于各种开源和私有项目中。

    总的来说,Git是一个强大、灵活且高效的版本控制系统,为开发者提供了一套完整的工具来管理和协作开发项目的代码。

    3.Git的工作流程 

    Git的工作流程涉及到本地仓库和远程仓库之间的操作,一般可以描述为以下几个基本步骤:

    1. 在本地创建仓库:首先,在本地创建一个Git仓库,可以使用git init命令将一个现有的项目或者空目录初始化成一个Git仓库。

    2. 添加和提交文件:将项目中的文件添加到Git仓库。使用git add命令将要提交的更改加入到暂存区(staging area),然后使用git commit命令将这些更改提交到仓库中。

    3. 创建分支:通过git branch命令创建新的分支,然后使用git checkout命令切换到新创建的分支上。在新分支上进行开发工作可以避免影响主分支的稳定性。

    4. 合并分支:开发完成后,可以使用git merge命令将新的分支合并回主分支,这样就将新的功能整合到了主分支上。

    5. 解决冲突:在合并分支时可能会出现冲突,需要手动解决冲突后再提交合并结果。

    6. 推送到远程仓库:将本地仓库中的更改推送到远程仓库,可以使用git push命令将本地提交推送到远程仓库中。

    7. 拉取远程更改:在多人协作的情况下,可以使用git pull命令从远程仓库中拉取最新的更改到本地仓库中。

    4.git和svn区别

    Git和SVN(Subversion)是两种常见的版本控制系统,它们在设计理念和工作方式上有一些显著的区别:

    1. 分布式vs集中式:

      • Git是分布式版本控制系统,每个开发者都有完整的仓库副本,可以在本地独立工作,并且无需依赖中央服务器。
      • SVN是集中式版本控制系统,所有代码的历史记录都保存在中央服务器上,开发者需要从中央服务器检出代码才能进行工作。
    2. 提交与版本管理:

      • Git的提交是针对本地仓库,每个提交都会在本地生成一个快照,而分支和合并操作非常灵活。
      • SVN的提交是直接作用于中央仓库,开发者必须与中央仓库进行频繁的交互,合并操作相对复杂。
    3. 性能:

      • 由于Git是分布式的,大部分操作可以在本地快速执行,因此在性能上通常要优于SVN,尤其是在处理大型项目时。
      • SVN在处理大型文件和大型代码库时性能可能会受到影响。
    4. 分支与合并:

      • Git的分支和合并操作非常高效和灵活,因为每个本地仓库都包含完整的历史记录,可以在本地多次进行分支和合并操作。
      • SVN的分支和合并相对复杂,通常需要依赖中央服务器来完成这些操作。
    5. 安全性:

      • Git使用SHA-1哈希算法来保证数据完整性,可以确保存储在Git仓库中的数据不会轻易被更改或丢失。
      • SVN使用增量文件系统,对数据完整性的保护没有Git那么强大。

    总体而言,Git更适合于需要高度灵活性、分布式协作以及对性能要求较高的项目;而SVN在传统的集中式项目管理和版本控制方面有其优势。随着开源社区的不断发展,Git已经成为了大多数项目的首选版本控制系统。

    二.Git安装 

    1.注册用户来使用Git

    工作台 - Gitee.comicon-default.png?t=N7T8https://gitee.com/

    2.下载git

    ​​​​​​Git - Downloading Package (git-scm.com)icon-default.png?t=N7T8https://git-scm.com/download/win

    3.具体的安装流程

    接下来一路next即可,就是安装成功

    三.git常用命令

    1.搭建开发环境,将项目部署到Gitee

     

    简易的命令行入门教程:

    Git 全局设置:

    git config --global user.name "mo"
    git config --global user.email "3500858957@qq.com"

    在C盘的用户下面

    创建 git 仓库:

    mkdir ssm
    cd ssm
    git init 
    
    touch README.md
    git add README.md
    git commit -m "first commit"
    git remote add origin https://gitee.com/zxsssssss/ssm.git
    git push -u origin "master"

    已有仓库?

    cd existing_git_repo
    git remote add origin https://gitee.com/zxsssssss/ssm.git
    git push -u origin "master"

    2.团队开发  

    之后进行根据创建 git 仓库的命令,创建一个文件,再将文件给Git管理,之后查看状态

    看到如图所示说明已经给Git管理,如果是红色说明没有。

    然后通过查看 状态 以及 加载项目

    3. 搭建项目环境

    将项目的文件夹复制到Git工作区间,再将这个项目给Git管理,并且仓库状态。

    git add .  这个命令是将该文件夹下所有文件给Git管理,

     将项目上传到本地,并且给与备注,再将项目上传到远程仓库。

    在Gitee的仓库中就可以看到了

     4. 团队开发

    项目已经在远程仓库部署好了,现在比如 : 开发团队中其他人需要获取其中的项目。

    在这个需要获取其中项目的人中的工作区间,一样的,先点击Git Bash Here ,打开命令窗口。

    在命令窗口中输入克隆远程仓库中使用文件的命令 : 

    git clone  https://gitee.com/mo/ssm.git

    上面的网址是远程仓库的地址,在右上角有克隆的网址,谁需要就复制给谁即可,再加上

    命令执行即可拿到所有的文件。

    执行完成之后可以进入目录中查看到所有的文件。

    在团队开发中,可以会有版本或者修改同一地方的修改,之后一人已经上传到远程,另一个人再生成到远程的话,就会出现以下错误 :

    遇到这个问题呢,两人都需要先获取到最新的远程仓库中的文件

    获取最新文件命令 : git pull

    都输入该命令后,再查看相同地方的修改是否有问题,比如版本问题

    如图 : 

      

    可以看到修改的版本出现了两个5.0.3和5.0.5,比如经过双方的商量,两个版本都需要留下

    只需要一人将其中的代码修改为如图 : 

    将其中多余的符号删除掉就好,如何输入命令给git管理,并且将上传到本地仓库,再上传到远程仓库

    最后双方都输入命令 : git pull     ( 获取最新文件 )

    即可完成解决问题。

  • 相关阅读:
    指纹浏览器功能对比:AdsPower VS Multilogin
    如何拉取钉钉的外出、出差审批单
    Python处理PDF——PyMuPDF的安装与使用详解
    Web前端工程师应该掌握哪些技能及知识点?
    怎样才能写好项目文档?
    Android大厂需要刷的(999道)面试题
    深入浅出学习透析Nginx服务器的基本原理和配置指南「初级实践篇 」
    milvus集合管理
    Maya 2024 for Mac(3D建模软件)
    力扣第108题 将有序数组转二叉搜索树 c++
  • 原文地址:https://blog.csdn.net/lz17267861157/article/details/134270060