前言
「这是我参与11月更文挑战的第3天,活动详情查看:2021最后一次更文挑战」。
总结实习用到的Git操作。
--no-verify
问题:
由于导师他们都是用的Mac,我用的是windows,所以项目的package.json的配置项,没有支持windows的格式化, 编辑器我既用Webstorm,也用VSCode。当时导师说最好不要去修改package.json里面的配置项,但是有要求让我把每行代码结尾的分号去掉,我用编译器一键格式化,也要出问题(编辑器支持新的代码不加分号,以前的代码分号还在)。我当时就手动删去分号。
不过后面的项目还是让我修改了package.json,就新增一句代码。
当时由于只删除了分号,我提交代码的时候,Git提示我,没有修改的东西。
解决方案:
提交时加入 --no-verify跳过检测机制
git commit --no-verify -m '提交时的注释'
git stash
问题:
之前导师安排的任务都是项目改版,是基于feature/montainer分支开发。 这次需求(媒体资源库扩容)要求周五上线,所以基于develop分支开发。但是我当时不知道,于是就基于之前的开发分支新建分支:(feature/montainer-mediaSourceVolume)。
后来准备提交代码,发布给导师,让导师到测试环境(我还没有测试环境的账号,他们在合并项目,暂时还没给我开通)。当我开发完成后push到了(但是已经push到了远程 montainer-mediaSourceVolume。),发现要基于develop开发,于是就在网上找到了方法:
思路:
-
回到 montainer分支 push前
-
stash工作区
-
基于 develop新建分支
代码
- git reflog 找到push前的版本 或者 git log
- git reset 版本号 这样就回到了新建分支,有修改记录,也就是还没有add commit push前。
- git stash 暂存工作区
- git develop 切到develop分支
- git pull 更新一下本地develop
- git checkout -b feature/develop-mediaSourceVolume origin/develop 基基于develop新建分支
- git push origin feature/develop-mediaSourceVolume 推送新建分支
- git stash pop 将暂存区的文件取出来
- git add .
- git commit -m 'xxx'
- git push origin feature/develop-mediaSourceVolume
结语
不太习惯用图形工具,感觉还是敲代码舒服。Git操作只有经过多次实践,才能变成自己的知识。