这是我参与「第三届青训营 -后端场」笔记创作活动的的第1篇笔记
课前资料
课程链接:「Git 的正确使用姿势与最佳实践」第三届字节跳动青训营 - 后端专场 (juejin.cn)
课程导学:【网络与部署 学习资料(下)】第三届字节跳动青训营 - 后端专场 - 掘金 (juejin.cn)
一、Git的工作流程和基本命令
一般工作流程如下:
- 克隆 Git 资源作为工作目录。
- 在克隆的资源上添加或修改文件。
- 如果其他人修改了,你可以更新资源。
- 在提交前查看修改。
- 提交修改。
- 在修改完成后,如果发现错误,可以撤回提交并再次修改并提交。
1.1 创建仓库
创建Git仓库的命令
git init //初始化仓库
git clone //拷贝一份远程仓库,也就是下载一个项目
1.2提交与修改
git add //添加文件到暂存区
git status //查看仓库当前的状态,显示有变更的文件。
git diff //比较文件的不同,即暂存区和工作区的差异。
git commit //提交暂存区到本地仓库。
git reset //回退版本。
git rm //将文件从暂存区和工作区中删除。
git mv //移动或重命名工作区文件。
1.3远程操作
git remote //远程仓库操作
git fetch //从远程获取代码库
git pull //下载远程代码并合并
git push //上传远程代码并合并
二、Git的分支管理
git所有分支之间彼此互不干扰,各自完成各自的工作和内容。可以在分支使用完后合并到总分支(原分支) 上,安全、便捷、不影响其他分支工作
2.1 分支介绍
master
项目创建之初的分支就是主分支master,之后创建的都叫从分支。
Git 的 master 分支并不是一个特殊分支。 它就跟其它分支完全没有区别。 之所以几乎每一个仓库都有 master 分支,是因为 git init 命令默认创建它,并且大多数人都懒得去改动它。
HEAD
2.2 常见分支操作
创建新分支# 创建并切换到dev分支 git checkout -b dev
切换回主分支# 分支切换回主分支master git checkout master
合并分支# 合并dev到master git merge dev
删除分支# 删除dev分支 git branch -d dev
2.3 冲突的发生和解决
当同一个文件被两个分支都修改过,想要合并两个分支就会产生冲突,不能快速将dev合并到master上。并且git会提醒“合并过程中产生了冲突,请修正后再提交”。
解决步骤
- git status 查看冲突文件
- vim src/main/java/a.txt (假设a.txt为冲突文件,这里需要为文件的全路径),手动修改冲突部分
- git add src/main/java/a.txt 告诉Git冲突解决了
- git commit -m ‘解决冲突’ (解决冲突为注释,可自定义)