前端小白的学习之路。

程序员的开发离不开git仓库,整理一下git的常用操作,以备不时之需。

方法总结

命令行 作用
git init 初始化本地仓库
git config --global user.name '用户名' 设备Git的用户名
git config --global user.email '邮箱' 设备Git的邮箱地址
git status 查看Git当前的状态
git log 查看Git历史提交版本记录
git reflog git操作流程记录
git clone url 从远程仓库克隆代码到本地,此时不需要在init
git add test.html(相对路径或绝对路径) 将指定的修改文件加载到暂存区
git add . 将所有修改的文件加载到暂存区
git commit -m '修改说明' 提交暂存区的所有修改文件
git push 将暂存区的修改文件提交至远程仓库
git pull 从远程仓库拉取代码
git checkout 查看当前的分支
git branch 查看本地的所有分支
git checkout -b new_branch_name 根据当前的分支创建一个新的本地分支
git checkout change_branch_name 切换到另一个本地分支
git merge branch_name 将目标分支的代码合并到当前分支
git push origin master 将本地分支推送到与之存在追踪关系的远程分支
git push origin new_branch_name 将本地代码上传到远程仓库,新建一个分支
git branch -d/-D<--delete --force> branch_name 删除本地分支
git branch origin -d branch_name 删除远程分支,慎用!
git reset --hard HEAD^/HEAD - n 回退本地分支版本,^表示上一个版本,-n表示前n个版本
git reset --hard abcde 回退到指定的版本号,可通过reflog获取
git push -f 将本地回退之后的结果同步到远程分支
git diff test.html 代码对比
git remote -v 查看分支所在的git地址
git remote rm origin 删除当前路径,慎用!
git remote add origin url 重新添加路径
git remote update origin --prune 本地更新远程仓库的分支,适用于vscode等查询不到新增加的远程分支
git branch --unset-upstream 切断本地与远程分支之间的映射关系
git branch --set-upstream-to origin/branch_name 将本地分支与远程分支之间形成映射关系
git stash list 查看stash的存储列表
git stash save 'remark' 将当前的非新增更改存储到stash
git stash pop 将list中的第一个应用到当前分支,并且从stash列表中移除
git stash pop stash@{$enum} 将目标的存储应用到当前的分支,并且从stash列表中移除
git stash show 显示做了那些改动
git stash show stash@{$enum} 显示目标存储做了哪些改动
git stash apply 将第一个存储应用到当前的分支,不从stash存储列表中移除
git stash apply stash@{$enum} 将目标存储应用到当前的分支,不从stash存储列表中移除
git stash drop stash@{$enum} 丢弃掉目标的存储
git stash clear 清空stash的存储列表

注意事项:

1.git stash

在使用git stash pop stash@{$enum}时,可能会遇到下面的错误提示:

unknown switch `e`

解决方法很简单,在文件资源管理器中找到根目录,右键点击git bash here,在运行一遍上面的命令就可以了。主要原因应该是权限问题和代码格式的转义问题。

此外,git stash pop不会出现这个问题,git stash apply也一样。

2.合并冲突解决

git merge --abort
git reset --merge
git pull

即可。

3.git的提交规范

feat 新功能
fix 修复bug
docs 文档注释
style 代码格式(不影响代码运行的变动)
refactor 重构、优化
perf 性能优化
test 增加测试
chore 构建过程或辅助工具的变动
revert 回退
build 打包

4.补充规范

1.扩展类型:
mod: 模块修改 - 修改现有模块(某些团队的扩展用法)
wip: 工作进行中 - Work In Progress,开发中的临时提交
types: 类型定义 - TypeScript 类型定义的修改
release: 版本发布 - 发布新版本
workflow: 工作流 - GitHub Actions 或其他工作流相关修改


2.冲突解决和分支操作:
resolve a conflict: 解决合并冲突
merge branch: 合并分支 - 通常用于描述分支合并操作


3.依赖管理:
dependencies: 生产依赖 - 更新运行时依赖包
devDependencies: 开发依赖 - 更新开发时依赖包


4.其他描述:
strengthen: 代码强化 - 增强代码健壮性、安全性等(某些团队的自定义用法)

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐