冯梦华的日常

git 学习

git 虽说也用了蛮久的了,但是其实来来去去也是一些基础操作,更深入的倒也没有怎么去学,趁着这段时间稍微有些时间,把以前的笔记整理到这里来,也方便之后来查看。

git commit

这个命令用于提交记录

git commit

git branch newImage

这个命令用于创建新的分支。

Git 的分支也非常轻量。它们只是简单地指向某个提交纪录 —— 仅此而已。所以许多 Git 爱好者传颂。

早建分支!多用分支!

这是因为即使创建再多的分支也不会造成储存或内存上的开销,并且按逻辑分解工作到不同的分支要比维护那些特别臃肿的分支简单多了。

在将分支和提交记录结合起来后,我们会看到两者如何协作。现在只要记住使用分支其实就相当于在说:“我想基于这个提交以及它所有的父提交进行新的工作。”

创建分支

git branch newImage

切换分支

git checkout <name>

融合分支

git merge <name>

重基

git rebase <name>

^ 和 ~number

可以通过 ^ 符号向上找到父节点
~ 则是多个

Git Reset

git reset 通过把分支记录回退几个提交记录来实现撤销改动。你可以将这想象成“改写历史”。git reset 向上移动分支,原来指向的提交记录就跟从来没有提交过一样。

Git Revert

虽然在你的本地分支中使用 git reset 很方便,但是这种“改写历史”的方法对大家一起使用的远程分支是无效的哦!

奇怪!在我们要撤销的提交记录后面居然多了一个新提交!这是因为新提交记录 C2’ 引入了更改 —— 这些更改刚好是用来撤销 C2 这个提交的。也就是说 C2’ 的状态与 C1 是相同的。

revert 之后就可以把你的更改推送到远程仓库与别人分享啦。

React 前端加载优化

主要问题

这次的 December 项目采用的是前后端分离的技术,交互使用的是 Axios ,但目前遇到的问题是,首次加载网站的时间过于久了,根据 report 的分析,我认为可能存在的问题是 react-router-dom 一次性加载了所有的组件,导致了加载变慢。

所以,主要的解决策略集中在对 router 的懒加载上,让它分批次地加载组件。

当然我还怀疑 React-Mui 组件库也拖慢了网站的加载,毕竟它是有些大的,但是应该还好,毕竟加载时是分开导入的,先解决 Router 的问题吧

解决方案

导入 lazy,Suspense 包

import { lazy,Suspense } from 'react';

lazy 用于懒加载 , Suspense 用于加载 loading

const MyComponent = lazy(() => import('./MyComponent'))

<Suspense fallback={<div>Loading...</div>}>
	<RouterProvider router={router} />
</Suspense>

December 项目 1a 版本释出

开发

December 总体采用前后端分离技术。 前端使用 React 、React-MU 和 基础前端构建语言,后端使用 FLask 和 Sqlite3 。

目前已初步开发完成,并且将代码规模控制在一定范围,后端部分代码也进行了不同程度地优化,这将是一个可长期维护的项目。