【Git】之分支合并命令
一、Git分支管理
1、查看Git分支
git branch
按Q键返回。
2、创建分支以及删除分支
git branch newtest
git branch -d newtest
3、切换分支
git checkout newtest
4、合并分支
① 主干上创建文件
zhangc@test:~/Desktop/GitTest/gitDemo|master
⇒ touch text.txt
zhangc@test:~/Desktop/GitTest/gitDemo|master
⇒ git add .
zhangc@test:~/Desktop/GitTest/gitDemo|master
⇒ git commit -m "add"
[master 57ccd61] add
2 files changed, 0 insertions(+), 0 deletions(-)
create mode 100644 text.txt
zhangc@test:~/Desktop/GitTest/gitDemo|master
⇒ ll
total 0
-rw-r--r-- 1 zhangc staff 0B Mar 9 17:14 README
-rw-r--r-- 1 zhangc staff 0B Mar 10 11:08 text.txt
② 分支上创建文件,并删除分支上的test.txt文件
zhangc@test:~/Desktop/GitTest/gitDemo|newtest
⇒ ll
total 0
-rw-r--r-- 1 zhangc staff 0B Mar 9 17:14 README
-rw-r--r-- 1 zhangc staff 0B Mar 10 11:08 text.txt
zhangc@test:~/Desktop/GitTest/gitDemo|newtest
⇒ touch zc.php
zhangc@test:~/Desktop/GitTest/gitDemo|newtest
⇒ git rm -rf ./text.txt
rm 'text.txt'
zhangc@test:~/Desktop/GitTest/gitDemo|newtest
⇒ git add ./
zhangc@test:~/Desktop/GitTest/gitDemo|newtest
⇒ git commit -m "add\del"
[newtest dee7c36] add\del
1 file changed, 0 insertions(+), 0 deletions(-)
rename text.txt => zc.php (100%)
zhangc@test:~/Desktop/GitTest/gitDemo|newtest
⇒ ll
total 0
-rw-r--r-- 1 zhangc staff 0B Mar 9 17:14 README
-rw-r--r-- 1 zhangc staff 0B Mar 10 11:10 zc.php
③ 切换到主干,并合并分支到主干
|newtest ⇒ git checkout master
Switched to branch 'master'
|master ⇒ ll
total 0
-rw-r--r-- 1 zhangc staff 0B Mar 9 17:14 README
-rw-r--r-- 1 zhangc staff 0B Mar 10 11:11 text.txt
|master ⇒ git merge newtest
Updating 57ccd61..dee7c36
Fast-forward
text.txt => zc.php | 0
1 file changed, 0 insertions(+), 0 deletions(-)
rename text.txt => zc.php (100%)
|master ⇒ ll
total 0
-rw-r--r-- 1 zhangc staff 0B Mar 9 17:14 README
-rw-r--r-- 1 zhangc staff 0B Mar 10 11:16 zc.php
再查看时,test.txt文件被删除,合并分支的文件生成
5、合并冲突
①修改主干上的文件内容
|master
⇒ echo "888" > zc.php
|master
⇒ git add .
zhangc@test:~/Desktop/GitTest/gitDemo|master
⇒ git commit -m "edit"
[master 0c5604f] edit
1 file changed, 1 insertion(+), 1 deletion(-)
②修改分支上的文件内容
|newtest
⇒ echo "777" > zc.php
zhangc@test:~/Desktop/GitTest/gitDemo|newtest
⇒ git add .
zhangc@test:~/Desktop/GitTest/gitDemo|newtest
⇒ git commit -m "m"
[newtest 4834eb6] m
1 file changed, 1 insertion(+), 1 deletion(-)
③分支合并到主干
|master
⇒ git merge newtest
Auto-merging zc.php
CONFLICT (content): Merge conflict in zc.php
Automatic merge failed; fix conflicts and then commit the result.
|master
⇒ cat zc.php
<<<<<<< HEAD
888
=======
777
>>>>>>> newtest
报错冲突
④接下来我们需要手动去修改它
vim zc.php
|master
⇒ cat zc.php
888
777
⇒ git add .
zhangc@test:~/Desktop/GitTest/gitDemo|master
⇒ git commit -m "add"
[master 9ad231f] add
现在我们成功解决了合并中的冲突,并提交了结果。
【Git】之分支合并命令的更多相关文章
- git -处理分支合并
1.分支间的合并 1)直接合并:把两个分支上的历史轨迹合二为一(就是所以修改都全部合并) zhangshuli@zhangshuli-MS-:~/myGit$ vim merge.txt zhangs ...
- git 代码分支合并merge提交新修改远程以及本地分支
第一步:创建本地分支 点击右键选择TortoiseGit,选择Create Branch…,在Branch框中填写新分支的名称(若选中”switch to new branch”则直接转到新分支上,省 ...
- Git dev分支合并到master分支完美实战
aa@aa-PC MINGW64 /f/online-center/cloud/server-functions_services (master) ...
- git操作的各种命令整理
1.常用的Git命令 命令 简要说明 git add 添加至暂存区 git add–interactive 交互式添加 git apply 应用补丁 git am 应用邮件格式补丁 git ann ...
- Git设置分支保护实现CodeReview卡点
# Git设置分支保护实现CodeReview卡点 > From:https://blog.csdn.net/crisschan/article/details/100922668 > G ...
- Git -- 分支与合并 (命令行+可视化工具p4merge)
基本命令 把所有的变化都放在master分支并不是最好的做法. 建议的做法是把变化放在分支里面. 至少应该准备一个feature分支之类的, 把变化都隔离开来, 然后等到所有的功能都稳定之后再合并到m ...
- 1git命令的使用,查看git仓库状态,添加文件到git跟踪,git提交,查看git分支,查看git仓库日志信息,切换git分支,解决git分支合并后出现冲突的问题
1新建一个存储git的文件夹,命令是: toto@toto-K45VD:~$ mkdir gitfolder 2初始化一个git仓库,命令是: toto@toto-K45VD:~$cd gitfold ...
- git常用命令速查:创建,修改提交,撤销,切换分支,合并分支,变基解决冲突
创建 $ git init #在当前目录下创建一个空的本地仓库 $ rm -rf .git #删除本地仓库 $ git add . #把当前目录下的所有文件添加到暂存区 $ git commi ...
- 【Git版本控制】Git的merge合并分支命令
1.实例 git checkout master git merge dev merge合并分支只对当前分支master产生影响,被合并的分支dev不受影响. 假设你有两个分支,“stable” 和 ...
- Git入门指南十一:Git branch 分支与合并分支
十五. Git branch 分支 查看当前有哪些branch bixiaopeng@bixiaopengtekiMacBook-Pro xmrobotium$ git branch * master ...
随机推荐
- QEMU + Vscode + Arm Arch's Linux调试小记
QEMU + Vscode + Arm Arch's Linux调试小记 前几天看到了一篇讲授如何调试ARM Linux内核的文章,这里现在记录一下调试ARM Linux内核的办法 下载QEMU ...
- Linux Mint操作系统安装
1,Linux 发行版 什么是Linux 发行版呢?这要从Linux 来源说起.Unix操作系统后期,开始收费和商业闭源了.一个叫Richard Stallman 的人就发起 GNU 计划,想模仿U ...
- rust项目中通过log4rs将日志写入文件
java项目中使用最广泛的日志系统应该是log4j(2)了.如果你也是一个Java程序员,可能在写rust的时候会想怎么能顺手地平移日志编写习惯到rust中来. log4rs就是干这个的.从名字就能看 ...
- ScreenToGif:一款开源免费且好用的录屏转Gif软件
ScreenToGif介绍 GitHub上的介绍:此工具允许您记录屏幕的选定区域.来自网络摄像头的实时提要或来自草图板的实时绘图.之后,您可以编辑动画并将其保存为 gif.apng.视频.psd 或 ...
- C#-WPF初学
1.新建一个WPF的应用: 2.拖拽控件并布局好: [小技巧]选中控件,点击"回形针"即可让该控件跟随窗口自动调整大小: 3.编写代码: 主程序代码如下: namespace Wp ...
- EasyBPM进销存之物料管理
本文是EasyBPM平台实现进销存系列中的一篇,主要讲述物料的相关的管理. 在ERP系统中,"物料"一词有着广泛的含义,它是所有产品.半成品.在制品.原材料.配套件.协作件.易耗品 ...
- django 计算两个TimeField的时差
在 Django 中,你可以使用 datetime 模块来计算两个 TimeField 字段的时间差.以下是一个示例: from datetime import datetime, timedelta ...
- 靶机: Chronos
靶机: Chronos 准备 靶机:https://www.vulnhub.com/entry/chronos-1,735/ 使用 VirtualBox 网络 Host-Only 配置网络环境:htt ...
- FFmpeg开发笔记(四十)Nginx集成rtmp模块实现RTMP推拉流
<FFmpeg开发实战:从零基础到短视频上线>一书的"10.2.2 FFmpeg向网络推流"介绍了轻量级流媒体服务器MediaMTX,虽然MediaMTX使用很简单, ...
- 【MySQL】30 备份与恢复
1.备份命令: mysqldump -u用户名 -p 密码 -h 服务主机IP -P 端口号 \ 数据库名称 \ > 指定备份的sql脚本文件位置 ↓ # 文件位置样例: # C:\Users\ ...