前言
-
本篇博客笔记基本上摘自这个视频教学——1小时Git入门到精通。
-
Git版本 2.38.1
-
本文共主要介绍了以下Git相关基础操作:
设置签名、初始化、添加、移除、查看状态、提交、修改、查看日志、版本切换、分支操作(查看、创建、切换、合并)等等……
一、提交到本地仓库
1.1. 设置用户签名
git config --global user.name forever_xxxx
git config --global user.email [email protected]
注:该步只做一次,只在刚装 git 的时候做一次就行了。
1.2. 初始化本地仓库
git init
1.3. 查看本地状态
git status
1.4. 添加/移除暂存区
新创建的文件是“未跟踪”的状态,需要使用git add
命令添加到暂存区
git add 文件名
git add .
的作用是把当前目录下所有文件都放到暂存区
git rm --cached 文件名
1.5. 提交本地仓库
git commit [文件名] -m 日志信息
1.6. 修改已创建、提交的文件
已提交的文件修改后,不需要再次 git add 直接 git commit 即可。
1.7. 查看日志
1.7.1. git log
查看日志
1.7.2. git reflog
查看历史日志
二、版本穿梭 / 版本切换
命令:git reset --hard 版本号
。(使用 git reflog
命令查看历史版本,选中历史版本号,单击鼠标滚轮即可快速粘贴版本号)
三、Git 分支操作
3.1. 查看、创建、切换、删除分支
3.1.1. 查看分支
git branch -v
3.1.2. 创建分支
git branch [分支名]
3.1.3. 切换分支
git checkout [分支名]
git checkout -
3.1.4. 切换并创建分支
git checkout -b [分支名]
由上可知,是在当前所在分支的基础上创建分支。
3.1.5. 删除分支和强制删除分支
删除分支:git branch -d [分支名]
强制删除分支:git branch -D [分支名]
3.2. 合并分支
3.2.1. 正常合并分支
git merge [分支名]
含义:把指定分支合并到当前分支上,如下图,把 dev-Li
分支合并到 master
分支上:
3.2.1. 冲突合并分支
-
执行
git merge [分支名]
命令,提示有冲突,如下所示:
如果有冲突,分支名旁边会提示冲突状态 MERGING -
手动处理所提示文件中冲突的地方
-
加入暂存区
git add .
-
提交到仓库
git commit -m '备注'
- 通过修改、再次提交、解决冲突的合并,
git reflog
会显示commit (merge)
最后,再次切换到dev-Li分支后,使用git merge master
命令,不会产生冲突,因为master
是更新的版本。
3.3 分支开发规范
分支开发规范,听完过两天再回忆时基本忘完了,博主认为这种东西还得是实战才行。
博主所在的公司目前使用的是svn,所以相对来说我对svn的分支规范熟悉些。
在使用svn管理代码时,一个项目通常有Trunk、Branches和Tags三个同级目录。
Trunk目录用于存放主版本程序;
Branches目录用于存放分支版本程序,如某个客户的个性定制化需求,开发特定功能的模块亦或者测试等;
Tags目录用于存放发布版本程序。一般来说所有分支都来自于主版本分支,即Trunk。
总的来说,开发规范会受各公司规章制度、所在行业的影响,不必拘泥于各种教程的描述(但是可参考或学习他人、大厂的较为成功的规范),根据实战来即可。
四、最后
看到最后有没有发现git、svn他们的命令很多都很相似,这种工具类技能掌握一个就能很快上手另一个,应用上差别不大。