Git使用

第一节、背景

传统团队开发存在的问题

  • 项目环境、资源不统一,造成后期项目整合难度较高;
  • 无法实现代码版本控制,不能回退到以前的代码版本;
  • 项目不能实现远程访问;

项目版本管理工具

  • 一个专门用于管理团队代码的工具,可以实现项目代码版本控制、项目远程访问等功能;
  • 分类
    • svn:集中式的版本管理工具(没有本地仓库)
    • git:分布式管理工具
      • 分布式无中心
      • 断网也可以使用,有本地的私有库,本地就可以进行版本管理。甚至可以管理文档等。

第二节、环境搭建

下载安装

  • 下载git

    • https://registry.npmmirror.com/binary.html?path=git-for-windows/v2.35.1.windows.2/
    • https://git-scm.com/downloads
  • 安装

    • 不需要额外配置,一路next;
  • 测试是否安装成功

    • 打开cmd窗口,输入以下命令,获取git版本

      git --version
      

配置

作用:每次提交代码的时候会将用户和邮箱信息附带上去,可以通过这2个信息方便追踪到谁提交了代码

鼠标右键,选择get bash

配置git

  • 配置用户名称(自定义)

    git config --global user.name "leeyp"
    
  • 配置用户邮箱

    git config --global user.email "573925xxx@qq.com"
    

第三节、git的工作流程

image-20221205213616904

git与github

  • git是开发者电脑上需要安装的版本管理工具,可以提供缓冲区、本地仓库等功能,但远程仓库需要使用github;
  • github是一个在线的远程仓库,是使用最大的开源网站;
  • gitee(码云):是一个国内的github,上传速度更快,还支持中文。

gitee设置为远程仓库

  • 注册gitee账号并登录https://gitee.com/signup
  • 创建远程仓库(项目负责人)
  • image-20221206113207213

image-20221205214559887

  • 仓库管理【可以对仓库信息进行修改】
  • 邀请组员

image-20221205215005571

第四节、基本流程(个人)

克隆远程仓库到本地文件夹中

  • 新建文件夹并进入文件夹中,右键get bash here打开git命令行窗口

  • 执行命令克隆远程仓库

    git clone HTTPS的远程仓库链接
    

准备工程项目,并将项目文件存放到克隆下来的仓库文件夹中

  • 上传本地仓库中的项目文件到远程仓库

    • 进入远程仓库对应文件夹

      cd 文件夹名称【或者重新进】
      
    • 将项目文件添加到缓冲区

      git add .
      
    • 将缓冲区的项目文件添加到本地仓库

      git commit -m "提交日志"
      
    • 将本地仓库项目文件推送到远程仓库

      git push
      

解决每次操作远程仓库都需要重复输入账号密码的问题

git conifg --global credential.helper store

第五节、个人开发流程(组员)

新建文件夹,进入文件夹,打开git命令行窗口,执行命令实现远程仓库项目文件克隆

git clone 远程仓库的HTTPS链接

VSCode打开克隆下来的远程仓库对应文件(包含了.git文件的文件夹)

使用VSCode编写项目代码

  • 文件状态

    • U:文件相较于本地仓库中为新增的文件;
    • M:文件相较于本地仓库中的原文件内容发生了修改;
    • A:新增的文件被添加到了缓冲区,但未添加到本地仓库;
  • 添加代码到缓冲区

    git add .
    
  • 将缓冲区代码添加到本地仓库

    git commit -m "提交日志"
    
  • 查看提交版本日志

    git log -g
    
  • 回退版本

    git reset --hard 版本号
    
  • 将本地仓库代码推送到远程仓库

    git push
    
  • 将远程仓库代码更新(拉取)到本地仓库

    git pull
    

第六节、分支

概念:
分支指的是从主线上分离出来进行另外的操作,不会影响主线,它可用来解决临时需求;
当分支做完事后可合并到主线上,而分支的任务完成可以删掉了。

image-20221205232604875

好处:

①支持并行开发以此提升效率;
②独立的分支不会对其他分支产生各种影响;

查看所有分支

git branch

新建分支

git checkout 是切换分支 ,如果分支不存在则会创建分支

git checkout -b 分支名

切换分支

git checkout 分支名

推送子分支到远程

git push origin 子分支名(确保在当前分支)

分支的合并

没次合并分支都有push操作,再push之前一定需要pull[拉取远程仓库代码]

pull 后 三连(add commit push)

遇到冲突则处理冲突,处理完毕后git add . git commit git push

git merge 目标分支 (将目标分支合并到当前分支)

分支合并冲突

合并代码+二连【主分支上】

删除子分支

git branch --delete 子分支名(当前需要不在被删除的分支中)

第七节、拉取

非第一次获取远程代码

git pull [origin master]

每次向远程提交代码之前先pull在push

正常情况【修改不是同一个文件】

冲突–代码合并【修改同一个文件】

解决冲突 add commit push

第八节、git协同开发流程

15:35继续

前端:

1、组长新建仓库 ,邀请成员
2、组长克隆,配置gitignore文件,创建项目结构(涉及到初始化,下载所有插件===package.json  html css js  img 文件夹--注意空壳不能保存)
3、组长三连到远程仓库
4、组员克隆,新建子分支 开始自己玩 。在本地子分支里面编写代码,合并到本地主分支
5、最终组员一个一个 pull+push
6、远程仓库就是最终版本

后端:

1、创建仓库
2、下载插件、配置、构建项目结构【express先构建】
3、将git 和ignore文件拷贝
4、组长 三连

1、创建远程仓库

2、下载当前项目中所有的包【mongoose multer jsonwebtokn…】

3、将远程仓库中的git 和ignore文件拷贝到当前项目中

4、配置ingore文件【配置不需要上传远程仓库的文件或者文件夹】

5、将项目结构推送到远程服务器—启动开发项目

6、其他组员通过HTTS的连接下载组长的项目结构

7、通过git checkout -b 分支名 开启子分支 进行开发

8、开发的过程中git add. gitcommit -m

9、如果需要将当前分支的代码推送远程仓库 git push origin 分支名

10、 89 不断的重复进行

11、如果当前分支功能基本完事,将分支进行合并

  • 先pull
  • 在git merge -m 日志

12、另开一个新的分支,进行后续功能的开发【当前分支就是基于主分支最新的代码】

13、开发过程中 add commit push origin 分支名

14、合并【可能会代码冲突】

  • pull 直接提示冲突
  • 解决冲突【删除或者修改代码】
  • add commit push

注意 :一旦合并分支后 记得通知成员

15、如果是一些小修小改,直接在主分支上进行【不正规】

遇到冲突解决冲突,解决完提交代码后记得告诉别人更新代码

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值