0


idea中git的简单使用及git分支

这篇文章简单介绍了git,着重介绍了分支概念和idea中git的简单使用

提问题

  1. git是啥?
  2. git的分支概念
  3. idea中git的使用
  4. git仓库
  5. git命令
  6. git安装
  7. 参考文章

git是个啥?

分布式版本管理工具。

git

的前生今世:git是由Linus发明的,基于C语言的;2005年左右,事情的大概就是,以前有个公司开发了开源的分布式版本控制系统 BitKeeper,供Linux 开源社区使用,但是由于某些原因不想开源了,反悔了,而这个时候大家都习惯了使用这种开源的分布式系统,还是想白嫖免费的,所以就有个大佬直接写了一个开源的,这就是

git

我的理解:

git

是管理我们代码的一个工具,代码管理不是技术难题,而是一个管理的难题,git解决了团队开发效率问题以及开发版本的管理。技术方面主要是去中心化的分布式系统管理代码仓库。

分支的概念

分支名称

开局一张图,这张图乍一看全是英文,很烦看不懂,但是只要明白其逻辑就很简单的。想看原版请戳:成功的 Git 分支模型

  • 具有无限生命周期的主要分支masterdevelop分支
  • fearure是开发新功能使用的分支
  • release是预发布版本
  • 预发布版本测试后,打上Tag标签,一般是版本号,进行发布
  • 发布完成后,如果有bug,紧急迁出hotfixes进行热修复,完成后发布新版本master

img

模型与实际逻辑结构

在模型上这几个分支可能是由先后顺序,或者说继承顺序,但是在具体创建上都是逻辑上都是相同的,是处于同一层的分支,都是普通的分支,只是因为我们为了方便管理,提出了这个模型,给不同的分支起了不同的名字,赋予它们不同的职能。

具体流程

比如说我们现在要接手了一个10个亿的小项目:亿点点平台。功能开发阶段

feature

、预发布阶段

release

,发布阶段

master
  • 首先我们先创建master,然后从master迁出develop,然后开发develop分支,开发了一段时间后,因为程序猿很多,需要根据功能开发:功能一:亿;功能二:点点。
  • 于是我们从develop迁出新的分支feature/yifeature/dianDian,分别进行开发,开发完成后,再合并到develop
  • 开发的功能差不多了,准备上线,develop迁出新的分支release/yiDianDian-1.0
  • 测试的差不多了,正式上线,将release/yiDianDian-1.0合并到master分支,并打上标签,一般是版本号,yiDianDian-1.0正式发布
  • 紧急情况,亿点点转账太慢,从master中迁出分支进行紧急修复,去掉sleep(3000),然后再合并大master中去,yiDianDian-1.1发布

idea中git的使用

本着能用图形化界面就不输命令行的优良习惯,我在

idea

实际实践了具体一下的操作。

Local

是本地的分支,

Remote

是远程的分支,一般先从远程分支拉到本地,右上角的箭头是更新一下

git

远程的git分支名
在这里插入图片描述

迁出分支

develop

迁出新分支,然后命名即可

在这里插入图片描述

切换分支

commit

后切换即可

在这里插入图片描述
切换分支前若未

commit

,要么舍弃切换前的分支,要么只能合并到要切换的目标分支,要么放弃切换分支
在这里插入图片描述

feature分支命名

在实际实践中遇到了一个问题,创建了

feature

分支后,就不能创建

feature/learn

,所以一般不创建

feature

分支,直接创建具体的功能分支

feature/learn

合并

例如将

develop

合并到

master

中去,我们先在

develop

分支

push

代码,然后切换到

master

分支(见图片的右下角),然后选中

develop

,将

develop

的代码合并到

master

分支中去。

提交前先三连

update

(拉一下远程仓库到本地),

commit

push

。一般在右上角
在这里插入图片描述
怎么去这个右下角水印啊,好烦

本地回滚

将本地还未commit的代码删掉,回滚到分支的状态
在这里插入图片描述

远程分支回滚

回滚到分支的上几个版本
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
选soft:本地会回退到上一版本,但会保留以前提交的修改,呈未commit状态。再一次push会覆盖上一次提交,达到撤回push但本地未回滚的效果。
选Hard,Hard:文件将恢复为选定提交的状态。警告:任何本地更改都将丢失。
然后提交即可

如何打tag

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

git仓库

在这里插入图片描述
这张图是盗的菜鸟的,Git 教程 | 菜鸟教程 (runoob.com)

git命令

本着能用图形化界面就不输命令行的优良习惯,还是放一下吧,可能会有问题,因为确实不熟。

按开发阶段

  1. 迁出feature分支,并进行功能开发(开发阶段)git checkout devlopgit checkout -b feature/testgit push origin feature/test
  2. 功开发完成之后,合并featuredevelop(开发阶段)git merge --no-ff feature/testgit push origin developgit branch -d feature/testgit push --delete origin feature/test
  3. 功能开发完成后按照规划的版本号从develop创建release分支(预发布阶段)git checkout devlopgit checkout -b release/1.0.0git push origin release/1.0.0
  4. 测试完成之后,发布release版本到master(发布阶段)git checkout mastergit merge --no-ff release/1.0.0git pushgit tag -a v1.0.0git push origin --tags
  5. 同步代码到develop,合并releasedevelop(发布阶段)git checkout developgit merge --no--ff release/1.0.0git pushgit branch -d release/1.0.0git push --delete origin release/1.0.0

常用命令

git clone:下载代码并创建本地仓库
git add:添加文件到git本地仓库版本
git commit:添加一个提交本地仓库
git push:推送代码到远程分支
git pull:拉取远程代码
git status:查看本地代码改动/状态
git branch:查看分支、或分支操作
git checkout:切换分支或创建分支

git安装

Git安装设置 - Git教程 (yiibai.com)

参考文章

成功的 Git 分支模型 看不懂的话直接全文翻译即可

Git教程 - 廖雪峰的官方网站 (liaoxuefeng.com)

Git教程 (yiibai.com)

Git 教程 | 菜鸟教程 (runoob.com)

Git教程 (yiibai.com)

Git 教程 | 菜鸟教程 (runoob.com)

标签: git idea

本文转载自: https://blog.csdn.net/weilanhai1997/article/details/127172296
版权归原作者 Mister-Bugs 所有, 如有侵权,请联系我们删除。

“idea中git的简单使用及git分支”的评论:

还没有评论