Git分支的意义和使用方法

您所在的位置:网站首页 意义和作用是一个意思吗 Git分支的意义和使用方法

Git分支的意义和使用方法

2024-07-15 13:35| 来源: 网络整理| 查看: 265

今天上手了公司的一个项目由于是多人合作的,前后端数据算法的开发人员全部都在一个项目里,而且项目已经上线,进行功能迭代了,所以用到了git分支功能,下面来总结一下。 1.为什么要创建分支? 比如我们开发完了一个app上线了,接下那就是迭代功能开发了,如果上线的app出现了一个严重的bug,要你放下手头新功能的开发去解决这个bug,然后在发布一个新版本,如果你要是就在你要迭代功能的项目上进行修改发布的话,那肯定是不行的,且先不谈有没有新的bug出现,时间是也是不允许的,发布的前提还要把新功能完善好才行,要是删掉新功能的代码也不怎么现实,要是业务逻辑少一点还好说,要是多的话那还真是有点无从下手了,所以git的分支就很好的解决了这个问题; 如下图: master就是我们的主代码,一直优化,到v1.4版本发布了,然后接着往下开发v2.0,v2.1版本,但是v1.4版本出现了一个严重的bug,这时候我们就在这个v1.4版本创建一个分支developer来对bug进行修复,到了v1.6版本bug修复好发布出去,然后在跟原来的master主代码进行合并一下把代码添加到v2.1版本就OK了,剩下就接着迭代开发了; 在这里插入图片描述 2.分支创建的方法 首先先创建一个项目,cd…(根目录)进行git提交:

git init git add . git commit -m "第一次提交" 要是不确定是否提交成功可以看一下提交记录 git log

我在项目上加3句代码 每添加一句就提交一次

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); System.out.println("第一次添加数据"); System.out.println("第二次添加数据"); System.out.println("第三次添加数据"); }

git log 查看一下提交记录 在这里插入图片描述 如果提交记录过多 出现了如下图所示:

在这里插入图片描述我们只需要按下Q就可以了;

通过上面我们可以看到 代码已经提交4次了, 打比方,如果第三次提交的代码出现了严重的bug需要修复,那么我们就在第三次提交的那个版本创建一个进行修复 首先我们要切换到第三次提交的版本上 git checkout 45b8f69dc83f59860a07855f8962dafbadf5b0c7 在这里插入图片描述 红色箭头部分为 git log 查看提交commit后面的参数 切换成功了 在这里插入图片描述 右边会显示出 当前版本的commit 参数

切换成功以后接下来就创建分支了 git branch developer(分支名称) 查询是否创建成功 git branch *号代表当前代码所对应的分支 developer出现了 说明创建成功了

接下来我们切换到developer分支上进行代码修复了 git checkout developer 在看下我们的代码

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); System.out.println("第一次添加数据"); System.out.println("第二次添加数据"); }

现在我在这个代码里面添加一个方法

public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); System.out.println("第一次添加数据"); System.out.println("第二次添加数据"); initData(); } private void initData() { System.out.println("我是developer分支的方法"); } }

进行提交

git add . git commit -m "developer分支的第一次提交" git log 确定一下是否提交成功 如果这个分支把bug修复好了那么就可以跟主分支进行合并了 我们先切换到主分支 git checkout master 然后在进行合并 git merge developer

在这里插入图片描述 如果出现了上图情况 说明出先了代码冲突,我们看一下代码

public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); System.out.println("第一次添加数据"); System.out.println("第二次添加数据"); developer } }

代码出现了

> developer

这三个符号

======号表示分割线

号之间表示分支合并进来的内容 接下来我们就要自己手动整合到一起了,把不需要的删除就好了

public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); System.out.println("第一次添加数据"); System.out.println("第二次添加数据"); System.out.println("第三次添加数据"); initData(); } private void initData() { System.out.println("我是developer分支的方法"); } }

更改完成以后 git add . 将他们暂存起来 在运行 git status 看一看冲突是否都解决了 在这里插入图片描述 解决完成以后就可以提交了 git commit -m “跟developer分支合并完成提交”

要是以后不打算在使用这个分支了,接下来就可以把这个分支删除 git branch -D developer 在查看一下确认一下是否删除成功 git branch 在这里插入图片描述

下面详细使用步骤

Git分支简介

Git分支是由指针管理起来的,所以创建、切换、合并、删除分支都非常快,非常适合大型项目的开发。

在分支上做开发,调试好了后再合并到主分支。那么每个人开发模块式都不会影响到别人。

分支使用策略:

主分支(默认创建的Master分支)只用来分布重大版本(对于每个版本可以创建不同的标签,以便于查找);日常开发应该在另一条分支上完成,可以取名为Develop;临时性分支,用完后最好删除,以免分支混乱。如: 功能(feature)分支预发布(release)分支修补bug(bug)分支 多人开发时,每个人还可以分出一个自己专属的分支,当阶段性工作完成后应该合并到上级分支。

分支常用命令 1、 查看已有分支:

git branch –a

在这里插入图片描述

2、创建、切换分支

创建并切换分支:git checkout -b

这条命令和下面两条命令效果相同。 创建分支:git branch 切换分支:git checkout

在这里插入图片描述

3、合并分支

git checkout master先切换到master分支

git merge fenzhi再将B分支的代码合并到master(在merge合并分支的时候,代码会有冲突,需要自己去解决这些冲突)

在这里插入图片描述

4、删除与恢复分支

当分支已经合并到主分支,并且不再需要接着该分支继续开发(后期也可以从主分支分出来),可以删除该分支。 (1)删除本地分支 git branch -d

在这里插入图片描述 (2)删除远程分支 git push origin --delete

在这里插入图片描述

误删分支需要恢复 使用git log 查出分支的提交号。

git branch ,

即创建提交号历史版本的一个分支,分支名称随意

在这里插入图片描述

5、查看分支图

git log --graph

为了使分支图更加简明,可以加上一些参数。

git log --graph --pretty=oneline --abbrev-commit

在这里插入图片描述

6、重命名分支

git branch –m 当前分支名 新的分支名

在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3