Git 分支、远程仓库、tag 标签,原理、项目实践与应用

5 阅读3分钟

一、Git 分支操作

命令说明
git branch查看分支
git branch -v查看分支,展示的信息多一些
git branch 分支名在当前分支的节点上创建新的分支
git checkout 分支名切换分支,兼容性好
git switch 分支名切换分支,v2.23.0 版及以后可用
git branch -d 分支名删除分支
git merge 要合并的分支名将指定的分支合并到当前分支

1.1 推荐分支工作流

  • master 作为主分支,只在 master 保留完全稳定的代码
  • 在 dev 分支上做开发,最终合并到 master 分支
  • 在 hotfix 分支上做紧急修复,最终合并到 master 分支
  • ...... 还可以有更多的分支,进行团队协作开发,最终开发好的代码测试没有问题,都合并到 master 分支

1.2 分支操作注意事项

  • 在 master 分支没有任何一次提交时,是不能创建新的分支。新分支的创建必需在某个提交版本的基础上创建。
  • HEAD 指针永远指向当前分支的当前提交
  • 在删除分支时,不能在当前分支自己删除自己。只能在当前分支删除其它分支
  • 在合并分支时,如果发生冲突,需要先解决冲突,保存修改后的文件,再令将修改的文件提交到暂存区,最后提交到本地仓库生成新的版本。
  • 在合并分支时,需要先切换到合并到的分支。比如:需要将 dev 分支合并到 master 分支,需要先切换到 master 分支,再在 master 分支执行git merge dev进行分支合并。

二、Git 远程仓库

远程仓库:  是指托管在因特网或其他网络中的你的项目的版本库。说的直白一点,就是在另一台服务器中有一块空间用来保存你的项目版本库。

命令说明
git remote查看配置的远程仓库的别名
git remote -v查看配置的远程仓库详细信息
git remote show 远程仓库地址/仓库别名查看配置的某个远程仓库详细信息
git remote add 别名(常用 origin) 远程仓库地址添加远程仓库,并配置别名
git push 别名/远程仓库地址 要推送的分支或--all推送本地版本到远程仓库
git remote rename 远程仓库原别名 远程仓库修改后别名修改远程仓库的别名
git remot remove 远程仓库别名移除某个远程仓库配置
git clone 远程仓库地址克隆远程仓库到本地 (在没有本地仓库的时候,用 git clone)
git fetch 别名 远程分支名拉取远程分支最新代码
git diff 本地分支 远程分支对比本地分支与远程分支差异
git branch -r查看远程分支
git pull 远程仓库地址/别名 远程分支名:本地分支名从远程仓库拉取本地仓库没有的那部分内容,并自动与本地版本库的指定分支合并。

三、tag 标签

命令说明
git tag -a 标签名 -m 标签说明为当前分支当前提交创建【附注标签】
git tag 标签名为当前分支当前提交创建【轻量标签】
git tag 标签名 版本号给指定提交版本创建一个【轻量标签】
git push 远程仓库别名 标签名推送标签到远程仓库
git push 远程仓库别名 --tags把所有不在远程仓库服务器上的标签全部传送到那里。
git tag -d 标签名删除本地标签名
git push 远程仓库别名 --deleted 标签名删除远程仓库标签名
git tag查看所有标签列表
git tag -l 标签名称筛选字符串根据标签名筛选字符串筛选符合要求的标签
git show 标签名查看标签的信息(轻量标签和附注标签的信息是不一样的)