1、下载
官网地址:https://git-scm.com/download
2、安装
-
打开.exe安装程序, 点击next
-
选择安装路径(根据个人喜好决定)
-
选择组件
-
Additional Icons
-
On the Desktop // 添加桌面图标
-
-
Windows Explorer integration // 右键菜单添加以下两个选项
-
Git Bash Here
-
Git GUI Here
-
-
Git LFS (Large File Support // 大文件支持
-
Associate .git* configuration files with the default text editor // 关联.git后缀文件
-
Associate .sh files to be run with Bash // 关联.sh文件
-
Check daily for Git for Windows updates // 每天检查版本更新
-
(NEW!) Add a Git Bash Profile to Windows Terminal // 将Git Bash添加到Windows Terminal中
-
(NEW!)Scalar (Git add-on to manage large-scale repositories) Windows新开发的一种大规模仓库管理, 视情况而定
-
-
后续所有步骤无脑下一步
3、配置
常用配置
# 查看所有配置
git config -l
# 系统配置
git config --system --list
# 当前git环境配置
git config --global --list
# 当前仓库配置
git config --local --list
# 配置用户名、邮箱
git config --global user.name "string"
git config --global user.email XXXXX@qq.com
常用命令
1、查看
# 查看 分支
git branch -v # 本地
git branch -a # 远程
# 查看 git远程仓库
git remote -v
# 查看 暂存文件
git status
# 查看 日志
git reflog
git log
# 显示当前仓库占用大小的命令
git count-objects -vH
2、使用
基本操作
# 初始化
git init
# 新增(绑定)远程仓库, 并创建别名
git remote add <远程仓库名称(自定义)> '远程仓库地址'
# 修改远程仓库名称
git remote rename <old-name> <new-name>
# 删除远程仓库
git remote 远程主机名 --delete 远程分支名
# 切换分支
git checkout <分支名>
# 基于当前分支 切换分支
git checkout -b <分支名>
# 修改本地分支名称
git branch -m <old-name> <new-name>
# 删除本地分支
git branch -D 分支名
# 删除远程分支
git push <远程仓库别名> --delete <分支名>
# 当前版本打tag标签
git tag <name>
提交
# 从远程仓库拉取最新代码
git pull <远程仓库名> <远程分支名>:<本地分支名>
# 添加到暂存区
git add <文件名> <文件名>
git add . # 全部添加
# 添加到本地仓库
git commit -m "备注信息" <文件名> <文件名>
git commit -m "备注信息" # 全部添加
# 合并分支, 将指定分支 合并 到 当前所在 分支
git merge <本地分支名>
# 变基 (没有多余的合并历史的记录。多人共同协作主干分支, 最好不要使用rebase, 多用于项目组长整理commit记录)
git rebase <本地分支名>
git rebase --continue
# 提交到远程仓库
git push <远程仓库名> <本地分支名>
撤销操作
## 以下的 HEAD^ 可以写成 HEAD~1, 1代表撤回一个commit ##
# 撤回至某个commit版本
git reset -hard HEAD^
# 撤回commit, 且 撤回 add .操作, 但是不撤销修改的代码
git reset --mixed HEAD^
/
git reset HEAD^
# 撤销 commit、不撤销git add (常用于修改commit msg信息)
git reset --soft HEAD^
# 撤销 commit、撤销 git add . 操作、撤销修改代码
git reset --hard HEAD^
# 取消文件修改
git checkout -- <file>
# 取消所有文件修改
git checkout -- .
# 取消 add
git reset HEAD <file>
# 取消所有暂存文件
git reset
3、开发新需求
1、分支名规范
【release】:生产
【develop】:开发(西园)
【test】:测试
【feature】:按照各个功能点拉取分支,feat分支一般以禅道任务单号为单位从release分支中拉取一个新的分支。
2、新功能开发
要确保当前分支代码的纯粹性,尽量不能有其他功能需求的分支代码
# 切换到 release(生产环境) 分支
git checkout release
# 更新本地 release 分支
git pull origin release
# 以 release 分支切出 feat#00001 分支 #00001为任务单号(没有单号,自己知道是哪个功能的就行)
git checkout -b feat#00001
#将新分支推到远程仓库
git push origin feat#00001
3、提交代码,打包发布
# 发生产则在release, 发测试操作develop分支
# 切到develop || release
git checkout develop
# 拉取最新
git pull origin develop
# 将 功能feat#00001 分支合并到主分支,有冲突解决冲突
git merge feat#00001
# 将最新分支代码推到远程仓库
git push origin develop
# 打包代码
npm run build:develop
4、打包发布
-
看情况执行这一步, 是否有需要另切一个分支用于打包发布
-
dist没被添加到.gitignore文件中
git add .
git commit -m "feat: 生产环境打包" --no-verify
git push origin feat#package-main --delete
# git push origin ${分支名}:${打包分支}
git push origin main:feat#package-main
# 代码回滚到打包前的一个版本
git reset --hard HEAD^
4、提交规范
1、项目安装git工具
-
husky
-
commitizen
2、规范格式
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]
-
类型(Type) :表示提交的类型,如
feat
(新功能)、fix
(修复)、docs
(文档更新)等。 -
范围(Scope,可选) :指定提交影响的代码模块或功能区域。
-
描述(Description) :简短描述提交的内容。
-
正文(Body,可选) :提供更详细的描述,如变更的原因、影响范围等。
-
脚注(Footer,可选) :提供额外信息,如关联的issue编号、破壊性变更的标记等。
例如:
git commit -m feat(login): Add login authorization feature
git commit -m docs:文档更新
3、具体属性
属性 | 描述 |
---|---|
feat | 新功能 |
fix | 修改bug |
docs | 文档修改 |
style | 格式修改 |
refactor | 重构 |
perf | 性能提升 |
test | 测试 |
build | 构建系统 |
ci | 对CI配置文件修改 |
chore | 修改构建流程、或者增加依赖库、工具 |
revert | 回滚版本 |
5、更新
1、在官网下载新版本,双击安装程序,窗口左下角勾选 Only show new options
选项,然后点击 Install
2、点击 Finish
完成更新