【前端开发环境搭建】git安装、nvm下载(node管理工具)、pnpm安装遇到的问题

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

装新机刚好有重新搭建环境的需求 这里做个 个人笔记记录

git安装(转载自:mukes)

在这里插入图片描述
可看此文 非常详细 十分好评
https://blog.csdn.net/mukes/article/details/115693833

安装完后在你需要放项目文件的地方拉取项目
在这里插入图片描述
copy仓库的链接
输入git clone
鼠标右键psate 来粘贴链接

在这里插入图片描述

git常用指令(取自前端大佬1k):

在这里插入图片描述

语雀博客:https://www.yuque.com/u60070

//配置用户信息
git config --global user.name "xxx"
git config --global user.email xxx@xxx.com

●  git push
//简介: 推送当前分支记录到远程分支。
//指令及解释:
   git push // 推送所有变更的提交到远程分支
   git push --set-upstream origin 分支名//将新创建的test分支提交到远程仓库
   git push origin --delete 分支名 // 删除指定的远程分支

●  git branch
//简介:操作本地分支。
//指令及解释:
   git branch test //从当前分支创建新的本地test分支,还未推送送到远程仓库
   git branch -d  分支名//尝试删除本地分支
   git branch -D  分支名//强制删除本地分支

●  git remote prune origin //远程分支同步更新

//解决gitignore添加目录文件未未置灰(无反应问题)
●  git rm -r --cached . //清空git缓存
   git add . //重新添加到暂存区
   git commit -m 'update .gitignore' //提交信息

●  git fetch //拉取最新代码但未合并

●  git merge 
//简介:合并分支操作。
   git merge 分支名 //合并分支
   git merge 分支名 --abort  //会尝试恢复到未合并之前
   git merge 分支名 --squash //合并test分支的同时生成一条记录

●  git pull //拉取最新代码并合并操作
   git pull //相当于git fetch + git merge
   git fetch //只是拉取变更数据,需要手动进行合并操作

●  git commit 
   git commit -m '本次提交信息'//输入本次的提交信息
   git commit --amend //修改最近一次的提交信息

●  git rm
//从索引中删除远程和本地文件
	-- cached // 仅从索引中删除远程文件,本地文件保留
	-n // 查看当前指令会被删除的文件有哪些
	-f // 强制删除包括源文件
	-r // 递归删除

●  git mv
git mv <旧文件名> <新文件名> // 修改文件名,带路径的情况下,新文件名也要带路径

●  git revert commit-id
//简介: 撤销提交.此操作会保留之前的提交记录。也就是HEAD会继续移动

●  git rebase(变基)与git merge(合并)
//两者区别:
//rebase会把当前分支修改记录提取出来合并到目标分支上,将导致当前分支的修改记录消失,记录均被合并入目标分支,形成串联。
//merge则会保留并行分支记录,只是把所有需要合并的分支记录整合并且新创建一条快照,然后把指针移动到这个快照上。
//注:如果有其他人基于你的提交进行修改,这时候你又把这个提交的内容删除并执行rebase,那么当对方提交的时候,此条记录会被找回,造成不必要的麻烦。

/* 取出 client 分支
找出它从 server 分支分歧之后的补丁,
 然后把这些补丁在 master 分支上重放一遍,
 让 client 看起来像直接基于 master 修改一样
 */
	git rebase --onto master server client
	git rebase <目标分支> <主题分支>

●  git add 
	. //提交暂存区
	-i //(交互式暂存)
//详情查看:
// https://git-scm.com/book/zh/v2/Git-%E5%B7%A5%E5%85%B7-%E4%BA%A4%E4%BA%92%E5%BC%8F%E6%9A%82%E5%AD%98
//注: *号可以选择所有文件并且回车后将直接暂存,此操作允许在文件暂存后使用,进行撤销操作。

●  git stash [push] (贮藏)
	git stash // 加上--keep-index 则同时会贮藏至索引内,加上-u则会贮藏未跟踪的文件,加上-a则会贮藏包括忽略文件在内的所有文件。加上--patch则会开启交互式界面。
	git stash branch <new branchname> //新建分支并恢复贮藏文件到新分支,然后删除贮藏记录。
	git stash apply [选取指定贮藏] // 恢复但不删除记录,  加上--index则会尝试恢复暂存状态。
	git stash pop [选取指定贮藏] // 恢复并且删除记录
	git stash drop [选取指定贮藏] // 删除记录

●  git clean(清理工作目录)
	-n // 不进行清理工作,只会告知哪些文件会被清理
	-f <path> // 强制删除,无需确认, clean.requireForce 没有显式设置为 false 的情况下才可以使用
	-x // 允许删除.gitiignore内指定的文件
	-i // 开启交互式清理界面

●  git filter-branch(批量修改提交历史)
	--tree-filter 'rm -f xxxx '  // 批量删除指定历史文件文件
	--all // 在所有分支上运行
	
● git reset  和 git checkout
	reset//(push上去的时候会把之前的提交记录全部删除):
	<commit> // 旧的提交的hash值
	HEAD~ // 父节点,默认回退1个版本 
	<file path> // 指定文件
	--soft // 不改变索引与工作目录, 即回退到git add之后
	--mixed // 改变索引不改变工作目录,即回退到未执行git add的时候
	--hard // 回退到指定版本,此操作会更新工作目录 (这样可以回滚到merge之前的状态)
	checkout:
	git checkout 分支名//切换分支
	<commit> // 旧的提交的hash值, 相当于非--hard的reset操作
	<.> // 当前目录下的所有被修改的文件
	<*> // 当前分支下的所有被修改的文件
	//注: 对于切换分支,reset会移动HEAD所指向的分支节点,而checkout只会移动HEAD本身
	
● git reflog
  	//简介:查看所有的操作日志
  	
● git cherry-pick <commit>
	//简介:提取其他分支的commit提交合并到当前分支上
	
● git blame
	//查看指定文件每一行的提交时间
	-L <startLine, endLine> // 指定行数,至少指定起点或者终点任意一个,另一个按默认处理。
	-C // 查看某行的原始出处
	
● git bisect
	//基于当前提交与指定提交,检出他们的中间提交,测试此提交是否存在要找的问题,如果没问题则代表问题出在此提交之后,否则就是		在之前,以此类推,直到找到有问题的提交为止。
	<start> // 启动
	<bad> // 告诉git当前提交存在问题
	<good commit> // 告诉git查找提交的起点,即没问题的提交
	<reset> // 回到启动时的提交
	<run [filePath]> // 每次检出提交后执行指定文件,实现自动化测试
	
● git diff
	//不加任何参数的情况下会对比暂存前后的差异
	git diff A...B // 对比A和B分支之间的差异(B分支相对于A分支修改了哪些内容)
	--staged或--cached // 检查暂存区与最后一次提交的差别

nvm安装 (如果有node先卸载干净)

卸载node

WIN 菜单打开进行卸载
在这里插入图片描述
再将npm 与npm 缓存文件删除
在这里插入图片描述

1.nvm下载

github仓库
https://github.com/coreybutler/nvm-windows/releases
国内镜像
https://gitcode.com/gh_mirrors/nv/nvm-windows/overview#%E5%AE%89%E8%A3%85%E4%B8%8E%E5%8D%87%E7%BA%A7
在这里插入图片描述

2.下载文件并安装

无脑下一步安装就行了 不喜欢在c盘可更改下 nvm 安装目录与nodejs 安装目录

3.配置nvm镜像源

1.使用工具utools 或者 win+r 唤起 cmd
在这里插入图片描述
在这里插入图片描述
2.输入nvm root 查看安装路径
输入nvm -v 查看安装版本
在这里插入图片描述
3.找到set.txt文件进行添加镜像源

node_mirror: https://npm.taobao.org/mirrors/node/
npm_mirror: https://npm.taobao.org/mirrors/npm/

4.nvm 指令

nvm list available //查看node版本
nvm list //查看已经安装的node版本
nvm install vxx.xx.xx //安装制定版本 例如 : nvm install v18.19.0
nvm use v18.19.0 //使用某个已经安装的版本
nvm uninstall v18.19.0 //卸载某个已经安装的版本

在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

pnpm安装

查看npm版本
全局安装pnpm
查看pnpm版本
在这里插入图片描述

pnpm遇到的问题

1.npm安装时一直卡着 不动的情况 这时候可以查看下镜像源 并且清下缓存 再切换一下镜像源 再执行安装指令

npm cache verify //清空缓存
npm config get registry  //查看当前镜像源
 //设置镜像源
npm config set registry https://registry.npm.taobao.org //或者下面
npm config set registry https://registry.npmmirror.com 

在这里插入图片描述
2.无法使用的问题
在这里插入图片描述
管理员身份打开powerShell
输入命令:set-ExecutionPolicy RemoteSigned 执行
再输入y
之后重启电脑
在这里插入图片描述
3.依赖问题 (不同包管理器可能导致依赖冲突)
npm ERR Cannot read properties of null (reading ‘matches‘)
1.清空node_modules
2.重新装依赖

 rm -r ./node_modules //快速删除依赖
 npm install  //或者 pnpm install 取决于你的包管理器 最好统一以免不必要的依赖冲突

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值