VUE学习:十三.代码管理

sadwind2024-02-29笔记116

前言

前端开发中对代码的处理:代码的存储、代码的管控、代码的提交与合并

#1.代码仓库

以gitlab 为例

  • 配置 ssh

  • 权限

#2.代码管理

  • 简单项目分支

    • dev:开发分支,直接在 dev 上进行开发,测试环境没问题,合并到 prod

    • prod:生产分支

  • 复杂项目分支

    • dev:开发分支,需求开发时使用自己名称创建各自开发分支【name】dev

    • 【name】dev:开发者的开发分支,需求开发完成合并到 dev

    • prod:生产分支

#3.代码提交

这里直接使用GitLens插件来管理代码的提交:dev开发分支,master主分支,现在dev开发完成,需要合并到master

  • 1.在 vscode 中安装代码提交工具GitLens插件

  • 2.重启 vscode 就可以使用GitLens管理代码

参考教程(opens new window)

#3.1 代码提交

普通提交

  • 1.为防止直接提交有冲突产生,可以先将1.本地代码储藏,然后2.拉取代码,然后3.弹出储藏将暂存的代码合并,有冲突解决冲突后再提交

多分支提交:同一个 bug 需要提交不同的分支维护,但是每个分支代码不一定相同,代码量如果比较多,容易出现问题

  • 1.修改好一个分支代码提交后,1.拷贝相同的文件在目录中2.储藏,然后3.切换目标分支4.弹出储藏,对比两个文件,修改相关内容,删除之前拷贝的文件

#3.2 创建分支

#3.3 切换分支

git checkout dev
1

#3.4 分支合并

  • 1.将 master 代码更新

    git pull origin master
    1
  • 2.将 master 合并到 dev

    git checkout devgit merge master
    1
    2
  • 3.将 dev 合并到 master

    git commit -m '代码提交' # (有冲突解决冲突)git push -u devgit checkout mastergit merge dev
    1
    2
    3
    4

#3.5 临时存藏

  • 有些功能代码暂时不确定是否要合并到代码中、自己的一些测试代码、写了一半功能的代码、此版本不需要提交的代码

#3.6 代码比较

#3.7 代码回退

需求变动频繁经常会用到的一个场景

  • 方式一:反向提交

    • 情况 1:当代码已经 commit 但没有 push 时,可使用如下命令操作(仓库没有提交记录

      git revert HEAD //撤销倒数第一次提交git revert HEAD^ //撤销倒数第二次提交git revert HEAD~2 //撤销倒数第三次提交git revert commit //(比如:fa042ce57ebbe5bb9c8db709f719cec2c58ee7ff)撤销指定的版本,撤销也会作为一次提交进
      1
      2
      3
      4
    • 情况 2:当代码已经 commit 并 push 时,可使用如下命令(仓库有提交记录

      git revert HEAD~1 //代码回退到前一个版本
      1
  • 方式二:删除提交

    • 情况 1:如果我们的有两次 commit 但是没有 push 代码(仓库没有提交记录

      git reset HEAD~1      //撤销前一次 commit,所有代码回到 Working Copy
      1
    • 情况 2:假如我们有几次代码修改,并且都已经 push 到了版本库中(仓库没有提交记录

      git reset --hard HEAD~2   //本地的Wroking Copy回退到2个版本之前
      1

总结

git 相关使用在项目中还是比较重要的,熟练掌握代码的提交、回退、分支切换能轻松应对复杂的频繁的需求开发


relate content

sphinx 搜索 服务器重启后操作步骤

/www/server/sphinx-3.4.1/bin/indexer -c /www/server/sphinx-3.4.1/etc/icms.conf --all /www/server/sph...

Python爬虫高级开发工程师 教程

Python爬虫高级开发工程师 教程

Python爬虫高级开发工程师的教程,帮助你从零开始了解如何制作一个PYTHON爬虫,感兴趣的下载学习~夸克网盘:https://pan.quark.cn/s/61b702c0b137#/list/s...

LAYUI 使用SELECT,动态改变INPUT值和属性

用form.on监听select事件即可,然后用JQUERY得到input的ID,来改变input的属性和值。但是我用的是FunAdmin的第三方表单组件,无法给input添加ID属性,所以只能用do...

一天显示一次广告JS代码

window.onload = function () {        &nb...

VUE学习:四.环境配置

前言前端项目开发中,一般会有几个环境:dev:是程序员们专门用于开发的服务器,配置可以比较随意, 为了开发调试方便,一般打开全部错误报告sit:dev 环境完成需求开发就可以将代码打包到 sit 环境...

C#全局键盘监听(Hook)的使用

一.为什么需要全局键盘监听?在某些情况下应用程序需要实现快捷键执行特定功能,例如大家熟知的QQ截图功能Ctrl+Alt+A快捷键,只要QQ程序在运行(无论是拥有焦点还是处于后台运行状态),都可以按下快...

Post Reply    

◎Welcome to participate in the discussion.