idea中如何使用git来做分支的切换合并:
git命令的区别:
Git中从远程的分支获取最新的版本到本地有这样2个命令:
1. git
fetch:相当于是从远程获取最新版本到本地,不会自动merge
git fetch origin master
git log -p master..origin/master
git merge origin/master
以上命令的含义:
首先从远程的origin的master主分支下载最新的版本到origin/master分支上
然后比较本地的master分支和origin/master分支的差别
最后进行合并
上述过程其实可以用以下更清晰的方式来进行:
git fetch origin master:tmp
git diff tmp
git merge tmp
从远程获取最新的版本到本地的test分支上
之后再进行比较合并
2. git
pull:相当于是从远程获取最新版本并merge到本地
git pull origin master
上述命令其实相当于git fetch 和 git merge
在实际使用中,git fetch更安全一些
因为在merge前,我们可以查看更新情况,然后再决定是否合并
git中rebase与merge的区别:
1、git分支的类型
git中branch有三种类型:
- local branch
本地分支,就是我们平常操作的分支,git中默认是master分支
创建分支: git branch b1
切换分支: git checkout b1 - remote branch
它实际上是指向远端服务器的某个分支,用来跟踪远程分支的变化 - tracking branch
跟踪分支是一种和远程分支有直接联系的本地分支(远程分支的本地书签、别名),跟踪分支是一种本地分支
- 当我们在跟踪分支上使用git pull命令,会自动从相应的remote branch上fetch,然后在merge到该分支上,如果我们想在跟踪分支上直接使用git push命令,让它自动push到对应的remote branch上,当我们使用git clone命令后,会自动在本地建立一个master的分支来跟踪origin/master.
2、idea中git分支的切换
在idea的右下角会有一个git:master,这是默认的分支,我们可以打开来切换分支。
打开之后,将项目的分支进行切换,选择哪个分支,即让哪个分支的 五星亮起来!
3、git本地分支的拉取、合并、删除
本地分支的创建和推送到远程:
idea中本地分支创建:
这样一个本地分支就创建好了,我们在push代码的时候,会自动的将本地分支在远程的仓库创建(如果远程仓库没有的话)。
这样我们在github或者gitlab上面就可以看到这个分支了。
4、分支如何进行合并
我们通常是从master拉取一个分支开发,那么如何在gitlab中拉取呢?
5、分支的合并:
我们通常将拉取的分支代码编写完后,需要合并到dev分支上,最后合并到master分支,如何做呢:
进入gitlab的项目,点击merge request
然后将source分支合并到目标分支:
1. merge_requests
2.new Merge Request
3.Compare branches for new Merge Request