Git branch && Git checkout常见用法
git branch 和 git checkout经常在一起使用,所以在此将它们合在一起
1.Git branch
一般用于分支的操作,比如创建分支,查看分支等等,
1.1 git branch
不带参数:列出本地已经存在的分支,并且在当前分支的前面用"*"标记
1.2 git branch -r
查看远程版本库分支列表
1.3 git branch -a
查看所有分支列表,包括本地和远程
1.4 git branch dev
创建名为dev的分支,创建分支时需要是最新的环境,创建分支但依然停留在当前分支
1.5 git branch -d dev
删除dev分支,如果在分支中有一些未merge的提交,那么会删除分支失败,此时可以使用 git branch -D dev:强制删除dev分支,
1.6 git branch -vv
可以查看本地分支对应的远程分支
1.7 git branch -m oldName newName
给分支重命名
2. Git checkout
1. 操作文件 2. 操作分支
2.1 操作文件
2.1.1 git checkout filename 放弃单个文件的修改
2.1.2 git checkout . 放弃当前目录下的修改
2.2 操作分支
2.2.1 git checkout master 将分支切换到master
2.2.2 git checkout -b master 如果分支存在则只切换分支,若不存在则创建并切换到master分支,repo start是对git checkout -b这个命令的封装,将所有仓库的分支都切换到master,master是分支名,
2.3 查看帮助
git checkout --help
当然git checkout还有许多命令,但这些已经能满足我们日常开发所需
1.查看本地分支 git branch
2.创建本地分支并切换到分支 git checkout -b 分支名称
3.创建分支 git branch 分支名称
4.切换分支 git checkout 分支名称
5.将分支合并到当前分支,先git checkout 当前分支 ,然后在git merge 需要合并的分支
注:a,也可以远程新建分支然后拉到本地(例如:远程分支是demo)
git checkout -b demo origin/demo //检出远程的demo分支到本地
6.查看所有本地仓库分支和远程分支
git branch -al
注:a,前面带有remotes的分支都是远程分支。
b,星号(*)表示当前所在分支。
7.提交本地分支到远程分支
git push origin t:t
注本地分支和远程分支相同时不需要冒号直接写t就可以
8.删除分支
git push origin --delete demo //删除远程分支demo
注:也可以直接推送一个空分支到远程分支,其实就相当于删除远程分支:
git push origin :demo //推送本地的空分支(冒号前面的分支)到远程origin的demo(冒号后面的分支)(没有会自动创建)
9.把某个分支上的内容都拉取到本地
git pull origin dev(远程分支名称)
10.
-
查看分支:git branch
-
创建分支:git branch <name>
-
切换分支:git checkout <name>
-
创建+切换分支:git checkout -b <name>
-
合并某分支到当前分支:git merge <name>
-
删除分支:git branch -d <name>
IDEA知识专栏IDEA知识专栏,持续更新,喜欢请关注😍
目录
检出项目
- 前提:在开发环境中安装好IntelliJ IDEA和git.
- 打开idea,选择VCS→Checkout from Version Control→Git或者点击VCS→Git→Clone
- 或者
- 出现填写项目详情窗口
- 从gitlab官网复制远程地址
- 可以选Test按钮测试远程服务是否可用,出现success为服务正常,之后选择相应项目类型,检出即可
更新项目
- 更新项目有两种方式第一种为更新当前窗口下的整个项目
- 第二种为更新相应文件,文件右键Git→Repository→Pull
- 出现更新详情窗口
- 选择Pull
- 窗口左下方出现本次更新的内容
提交文件
- 新建TestController测试类
- 文件右键选择add,表示文件交给git托管
- 选择文件右键Git→Commit file ,提交文件
- 左上角会默认比对出本地仓库和远程仓库的区别,勾选文件前的单选框提交相应文件,左侧中部为备注框,选择Commit and push (提交)
- 选择文件右键Git→Repository→Push 上传文件
解决冲突
- 当在本地修改的文件,别人也修改了且已提交到了远程服务器,这时需要解决冲突。为了模拟这个场景,对TestController这个方法同时修改服务器代码和本地代码。修改完成后提交文件
- 填写备注后提交
- 系统会检查出文件有冲突,提示需要合并,出现冲突窗口
- 点击文件,即可进入详情页面
- 详情页面分为三栏,左边为本地版本,中间为修改前版本,右边为服务器最新版本,左右两边代码不可以修改
- 当前冲突页面1所指按钮可以切换冲突位置,2处按钮可以让冲突部分高亮显示,3处可以选择文件是否整体滑动。
- 基于两个版本对中间版本修改后点击apply,即生成最终版本的文件,选择提交
- 这时会提示上传失败,最好将文件重新编译一下,确认无误后重新push即可
- 上传成功!
取消提交
有的时候我们不想push已经commit,可以在idea中进行如下操作取消
首先我们模拟一个测试提交
项目右键选择GIT->Repository->Resrt HEAD
弹出回退页面
在To Commit中填入回退的版本信息, HEAD^ 代表回退到上次提交前,HEAD~n 数字代表往回退的版本数,回退的代码不会丢失,想要提交的话再次commit即可。
还原代码
假如我们还原开发了一半的代码或者自己做的实验性的功能,有什么快速的办法呢
- 第一种就是手动还原,把自己新增的文件挨个删除,右键Git---->Compare with Branch ,把修改项目还原即可。优点是风险小,缺点是操作复杂,无法复原代码
- 第二种是删除本地分支,从远程重新拉一个分支,拉下来的代码是最新版本的。优点是操作简单,缺点是无法复原代码,
- 第三种是最推荐的,操作简单、风险小、代码可复原。idea git有一个仓库可以存储代码,选择项目右键----->Git–>Repository—>Stash Changes ,就会创建一个存储备份,以后需要的时候在Unstash Changes找到相应记录还原即可。也可以选择drop删除存储的代码。详细操作参考idea git 切换分支、拉取最新 自己写的代码被冲了怎么办
IntelliJ IDEA高效开发友情链接:
IntelliJ IDEA 常用快捷键
IntelliJ IDEA git 新项目提交
idea导航栏添加push按钮
IntelliJ IDEA导入Web项目
IntelliJ IDEA spring-boot 热部署
IntelliJ IDEA Spring Boot优秀博文分享
一、pull操作
1、将远程指定分支 拉取到 本地指定分支上:
git pull origin <远程分支名>:<本地分支名>
- 1
(注:命令里的尖括号<>只是包裹中文的标识,方便你看的,实际使用时不用写,不过冒号需要)
2、将远程指定分支 拉取到 本地当前分支上:
git pull origin <远程分支名>
- 1
3、将与本地当前分支同名的远程分支 拉取到 本地当前分支上(需先关联远程分支,方法见文章末尾,只需关联一次)
git pull
- 1
在克隆远程项目的时候,本地分支会自动与远程仓库建立追踪关系,可以使用默认的origin来替代远程仓库名,
所以,推荐命令 git pull origin <远程仓库名>,操作简单,安全可控。
二、push操作
1、将本地当前分支 推送到 远程指定分支上(注意:pull是远程在前本地在后,push相反):
git push origin <本地分支名>:<远程分支名>
- 1
2、将本地当前分支 推送到 与本地当前分支同名的远程分支上(注意:pull是远程在前本地在后,push相反):
git push origin <本地分支名>
- 1
3、将本地当前分支 推送到 与本地当前分支同名的远程分支上(需先关联远程分支,方法见文章末尾)
git push
- 1
同样的,推荐使用第2种方式,git push origin <远程同名分支名>
附:
将本地分支与远程同名分支相关联
git push --set-upstream origin <本地分支名>
// 简写方式
git push -u origin <本地分支名>
https://www.jb51.net/article/192265.htm
idea+git合并分支解决冲突及详解步骤