• Git全套,从简到细


    Git

    一、git工具引入

    在这里插入图片描述

    • 版本控制工具
    • 代码管理工具
    • 团队协作工具

    二、git本地工具

    2.1、下载

    • https://git-scm.com/download/win

    • 别这么多事,安装过程下一步点到底

    2.2、使用

    1. 新建test2022文件夹

    2. 进入test2022文件夹,在空白处右键->Git Bash Here 打开git命令行面板

    3. 输入git init命令

      • 在文件夹内会创建出一个.git的隐藏目录
      • 这就是我们的本地仓库
    4. 编写一个index.html index.js的文件

    5. 命令行输入git add .

      • 点 代表全部,上传本文件夹的所有文件
      • 添加到暂存区
      • 本质上:
      • 在这里插入图片描述
    6. 提交代码

      • 命令行输入git commit -m '第一次提交代码'
      • -m 后面跟的是注释
    7. 在这里插入图片描述

    • 如果出现以上情况,别慌,不是你的错
    • 我们需要给这个git本地仓库取上名字和邮箱地址
    • 这样才符合规范,具体操作如下
    • 输入git config --global user.name 'Draven' 取名
    • 输入git config --global uiser.email '1213456783@qq.com'传递邮箱信息
    • 然后再执行我们刚才失败的命令git commit -m '注释'就可以啦
    • 在这里插入图片描述

    2.3、修改

    • 当我们修改了已上传文件后,再查看提交状态是这样的
      • 在这里插入图片描述

      • 说明文件已经修改了,需要重新提交(先上传到暂存区,然后再提交到本地仓库)

      • 1. git add .2. git commit -m '注释'

      • 切记,一定要加注释,不然会出现以下界面

      • 在这里插入图片描述

        • 届时如果你没学过linux,也许你这辈子都会困在里面
        • 当然我们会有解决办法
        • 首先我们按下键盘i进入输入状态
        • 在第一行中留下我们的注释
        • 按下esc退出编译器模式
        • 而后按下:键,进入命令行
        • 输入wq,表示退出,这样就可以逃离那个是非之地了。
    • 再次输入git status查看状态就发现一切都恢复如初啦
      • 在这里插入图片描述

    2.4、查看历史版本

    • 经过我们刚才的2.2和2.3步骤,我们已经提交过两个版本了
    • 我们输入git log可以查看提交过的提示版本
    • 在这里插入图片描述

    2.5、回退历史版本

    • 我们查看过提交记录后,想要回退到某个历史版本可以这样做哦-》

    • 输入git reset --hard HEAD^回退到上一个版本

    • 在这里插入图片描述

    • 这样就回退完成啦

    • 我们再使用git log查看提交记录就会发现没有第二次那个版本啦

    • 在这里插入图片描述

    2.6、起死回生

    • 我们回退后,又觉着回退之前的那个版本好用,那怎么办呢?

    • 我有一计起死回生之术

    • 输入git reflog,查看操作记录

      • 在这里插入图片描述
    • 我们把需要的版本,前的16进制代码复制或记录下来(👆7位黄色16进制编码)

    • 比如我们需要恢复到第二个版本的代码

      • 先把他的16进制编码复制下来
      • 输入git reset --hard 3719190
      • 在这里插入图片描述
    • 如此我们的第二版本复活啦

    • 我们再去查看提交记录就会发现两个版本都在啦

    • 在这里插入图片描述

    三、git远程仓库

    • 当然,我们二大节中的知识只不过是让我们在路由等配置尚未完工时,自己再私底下使用的本地仓库

    • 本地仓库不足以把所有的代码合并到一起,这是显而易见的

    • 所以我们需要使用git远程仓库来合并代码

    • 我们要用的远程仓库是gitee

    3.1、使用gitee

    1. 进入官网
      • https://gitee.com/
    2. 我们点击加号,新建仓库
      • 在这里插入图片描述

      • 在这里插入图片描述

      • 这样子配置刚刚好啦

    3. 下面是创建好仓库后给的提示,3.2配置数据源参考图中数据(自己的)
      • 在这里插入图片描述

    3.2、配置本地仓库参数

    • emmmm,在我们向gitee传输之前,我们需要做一步不可缺少的步骤

    • git config --global user.name "杨清壹"
      git config --global user.email "10274713+shiqingyi@user.noreply.gitee.com"
      
      • 1
      • 2
      • 是很眼熟,但只有这样才能让我们传输的时候让git找到我们的远程仓库
      • 在这里插入图片描述
    • 配置远程源:

      • 添加一个远程的源

        • git remote add origin https://gitee.com/shiqingyi/test2022.git
      • 推送

        • git push -u origin master
      • 第一次推送需要用户名个密码

        • 在这里插入图片描述
      • 用户名是我们user.name时候的名字

      • 密码是自己gitee的密码

      • 用户名或密码错误的界面是这样的

        • 在这里插入图片描述
      • 成功的界面是这样的

        • 在这里插入图片描述
      • 如果失败后一直输入一直错,你就需要去百度搜索一下win10如何删除凭证,因为这是你不珍惜第一次输入的机会曹成的后果

    3.3、查看gitee仓库

    • 推送后,我们刷新这个界面

      • 在这里插入图片描述
    • 刷新后

      • 在这里插入图片描述
    • 我们推送的代码文件就被上传到里面啦

    3.4、修改后推送

    • 在我们修改源代码之后需要重新推送上传,整套流程如下
    1. 修改源代码
    2. 添加到暂存区
      • git add .
    3. 提交到本地仓库
      • git commit -m '修改之后,第一次尝试推送'
    4. 推送
      • git push -u origin master

    四、git两人协作-非冲突

    小智

    • 在我们进入公司做项目时

    • 第一步是要公共仓库的地址

      • 在这里插入图片描述
    • 届时先用自己的仓库地址当成项目组长分发下来的地址使用

      • https://gitee.com/shiqingyi/test2022.git
    • 此时我们新建一个文件夹,下面会演示整套流程

    流程

    1. 在新建的文件夹下打开git命令框

    2. 使用克隆命令

      • git clone https://gitee.com/shiqingyi/test2022.git
      • 将地址内附带的资源全部的克隆到本地仓库
    3. 把下载下来的文件用编辑软件打开

    4. 新建组件等操作,进行分布代码开发

    5. 输入cd 文件夹名/ 进入拷贝的文件夹

    6. 在保证是进入到拷贝下来的文件夹内后 执行推送

      • git add .

      • git commit -m '今天的工作'

      • git push -u origin master

    这样就完成代码上传啦

    小杨

    • 在小智上传了一版代码之后,小杨原先下载的代码不会自动更新
    • 这样就造成了提交冲突,两个人上传时,版本不统一
    • 也就是说后来人上传代码需要其他操作
    • 否则会报以下如图的错误

    在这里插入图片描述

    解决方案

    我们需要跟着黄色警告的指示做,也就是 pull 拉取以下

    1. 输入拉取更新命令

      • git pull roigin master

      • 它会拉取服务器的代码,并跟本地代码进行合并提交

      • 把最新的代码合到本地目录下

      • 然后你就会发现我们又进入了这个烦人的界面

      • 在这里插入图片描述

      • 不要慌,它只是想让我们留条记录信息 也就是注释

      • 我们只需要把黄色部分改成我们的注释信息,然后按下esc键,输入:wq即可退出,然后更新成功

      • 在这里插入图片描述

      • 提交过后我们执行一遍git push origin master命令即可上传成功

      • 在这里插入图片描述

    注意: 一定要在 git add. git commit -m ‘’ 之后再使用pull拉取代码。

    五、git两人协作-冲突

    • 我们在开发中,根本无法避免自己或别人在修改同一个文件后上传

    • 当然,因为这个错误头疼是开发者的一大避讳

    • 演示一下

    • 首先,我们用编译软件分别修改不同人下载下来的资源,修改同一个文件

      • 在这里插入图片描述
    • 情况就是这么个情况

    1. 我们先用xiaozhi角色进行上传

      • 在这里插入图片描述

      • 显而易见,xiaozhi这东西库库上传,是挺爽的

    2. 我们再用另外一个角色上传

      • 在这里插入图片描述

      • 当然,这个错误对于我们来说很容易解决

      • 只需要pull拉取一遍数据再上传就可以解决

      • 不过,我们要考虑上传之后xiaozhi角色上传的代码就会被覆盖,很容易造成矛盾

      • 在这里插入图片描述

      • 注意,红框内的意思是自动合并失败

      • 使用pull拉取完之后代码是这样的

        • 在这里插入图片描述
      • 这种情况我们只能手动处理了

      • 所以我们不要再逼git了,喊人! 👇

      • (一支穿云箭,千军万马来相见)

    3. 在我们处理完第二步之后,重新给不同角色的同一个文件进行修改

      • 在这里插入图片描述

      • 此时,我们在web strom中安装GitToolBox插件

        • 在这里插入图片描述
      • 安装后我们输入用户名和密码

        • 在这里插入图片描述
      • 在我们装好插件后,跟着步骤依次上传

        • 在这里插入图片描述

        • 在这里插入图片描述

        • 在这里插入图片描述

      • 最后一个上传的时候会碰到这么一个问题

        • 在这里插入图片描述
      • 选择自己需要的选项就可以啦

    六、git分支

    6.1git存在的意义

    • 分支为什么要存在?
    • 当然,一个好的APP需要再开发部署完1.0版本之后,需要不断的更新迭代
    • 我们总不能对着1.0源码进行编译和上传,这样会影响用户体验
    • 所以我们的解决方式是将1.0版本拷贝一份至新的git空间,我们对着拷贝后的代码进行编译和更新,在敲版之后,进行更新上传
    • 而拷贝的这一份,正是我们的git分支

    6.2、使用

    查看git所有分支

    git branch -a

    创建新的分支

    git checkout -b devDraven

    • 新建draven文件,或对我们原有的文件进行修改

    • 提交

      • git add .
      • git commit -m 'fiexd 修改'
    • 切换到主分支

      • git checkout master
    • 会发现,在新分之内的操作不会带到我们的主分支当中

    • 合并分支

      • 切换到主分支中
      • git merge devDraven
      • 合并后在该分支上的东西会合并到master主分支上
    • 上传

      • 切换到该分支中
      • git push origin master
    • 上传分支

      • 先将命令行切换到需要上传的分支
      • git push origin devDraven
      • 在这里插入图片描述
    • 在服务器删除子分支

      • 切换到该分支中
      • git push origin :devDraven
    • 在本地仓库删除子分支

      • 切换到主分支中
      • git branch -d devDraven

    七、vue项目git注意

    1. 初始化本地仓库
    2. 提交
      • 在这里插入图片描述

        • 如果第一次拉取文件出现以上问题,说明git没有完全授权,我们只需要输入git config --global --add safe.directory "*";命令进行授权
      • 在这里插入图片描述

        • 这种情况不要慌,这个面板是为linux做的,我们某些字符它会自动转译,而这正是转译的操作,不用我们留意
    3. 添加远程源
    4. 创建分支
    5. 上传(推送)
    6. 删除本地仓库的分支
    • 这样做,每个人下载下来都没有办法用,因为少了许多依赖(文件夹)

    • 当然,如果你想要从别人那儿把vue项目下载下来并运行,我想这不是我能帮你解决的,你可以把以下这段话提交到www.baidu.com,它会给你答案

      • ​ 在git下载的vue项目怎么跑起来

    八、开发流程&云服务器

    开发流程

    …(此处省略很多字),详情请找到本人资讯或添加如下WX

    CBWR-K

    云服务器

    • 实在没钱搞

    九、nginx上线

    • 同上

    git命令

    命令说明
    git init初始化本地仓库
    git add .上传文件到暂存区
    git status查看git此时提交状态
    git commit -m ‘注释’提交到本地仓库
    git config --global user.name ‘Draven’为git本地仓库取名
    git config --global uiser.email ‘1213456783@qq.com’为git本地仓库传递邮箱信息
    git log查看提交记录
    git reset --hard HEAD^ 可以多个^回退到上^个版本
    git reset --hard HEAD~number回退到上number个版本 number为数字
    git reflog查看操作记录
    git remote add origin 仓库地址添加一个远程的源
    git push -u origin master推送
    朝 orgin 这个地址推,推我们的本地仓库 master
    ls查看当前目录的所有文件
    git pull origin master拉取服务器代码,并完成提交(提交至本地仓库)
    git clone gitUrl拷贝服务器源码,giturl指的是组长提供的链接
    分支-👇
    git branch -a查看所有分支
    git checkout -b devDraven创建新的分支
    git checkout master切换到主分支
    git merge devDraven合并分支(先切换到主分支,devDraven为子分支名)
    git push origin devDraven上传分支(切换到devDraven分支执行)
    git push origin :devDraven在服务器上删除此分支(切换到devDraven分支执行)
    git brcnch -d devDraven在本地仓库删除子分支(切换到主分支执行)
  • 相关阅读:
    mysql数据库基础
    MySQL中char_length()和length()的区别
    Java 面试中遇到的坑
    【Snabbdom】虚拟DOM-Snabbdom
    【2023,学点儿新Java-11】基础案例练习:输出个人基础信息、输出心形 | Java中 制表符\t 和 换行符\n 的简单练习
    WEB自动化_cookie操作(获取/删除/添加cookie、通过cookie绕过登录测试)
    excel常用的几个函数
    JAVAEE初阶相关内容第十一弹--多线程(进阶)
    C++ concept的概念和使用
    Feign高级实战-源码分析
  • 原文地址:https://blog.csdn.net/Messchao/article/details/128168308