git merge的使用

在实际开发中经常会用到git merge操作。但很多情况下我们并不想合并后直接提交,这里介绍git merge的两个常用参数:

--no-commit

--no-commit 参数使得合并后,为了防止合并失败并不自动提交,能够给使用者一个机会在提交前审视和修改合并结果。(这个使用后不会合并为一次commit)

git merge --no-commit dev.master   // dev.master 是要合并的分支名称

--squash

--squash 参数当一个合并发生时,从当前分支和对方分支的共同祖先节点之后的对方分支节点,一直到对方分支的顶部节点将会压缩在一起,使用者可以经过审视后进行提交,产生一个新的节点。(即将要合并的多次commit合并成一次commit)。

git merge --squash dev.master      // dev.master 是要合并的分支名称

在PhpStorm中的使用:

其中勾选"No commit":相当于使用--no-commit

勾选"Squash commit":相当于使用--squash

原文地址:https://www.cnblogs.com/woods1815/p/10704673.html

时间: 2024-10-07 23:31:33

git merge的使用的相关文章

git merge rebase的区别及应用场景

前两天和同事交流发现他在日常开发中跟上游保持同步每次都是用git pull操作,而我一直习惯git fetch然后rebase,发现这两种操作后的log是有些区别的.他每次pull操作之后都会自动生成一个merge记录,而使用fetch+rebase就没有. 查了下发现其实就是git pull命令两种参数的区别: git pull --merge  默认参数,相当于:git fetch + git merge git pull --rebase 手动指定,相当于:git fetch + git

git merge branch

git branch   look at your branches git branch newbranch git checkout newbrach do something git checkout master git merge newbranch git branch -d newbrach git merge branch,布布扣,bubuko.com

git merge以及比较两个repo

一.需求 1)有两个相关的branch github下载的repo有master和work两个分支,由于远端已经更新,master分支落后于远端分支,work分支又有新的更新内容,需要将远端master分支的更新pull下来,并且和work分支进行合并. 二.操作步骤 1)有两个相关的branch clone下来repo 1.git remote set-url origin https://... 2.git pull 3.git checkout -b new_branch 4.git me

聊下git merge --squash

你经常会面临着将dev分支或者很多零散的分支merge到一个公共release分支里. 但是有一种情况是需要你处理的,就是在你的dev的分支里有很多commit记录.而这些commit是无需在release里体现的. develop 主分支 develop主分支最近的一个commit是"fix imageprint bug.".我们拉出一个分支进行项目开发,里面会有很多commit记录. git checkout -b develop_newfeature_ImportDataInte

[vim] 使用 fugitive.vim 处理 git merge 文件冲突

fugitive.vim 是一个处理 git 信息的 vim 插件. 非常好用,这里展示下怎样用它来处理 git merge 操作中常遇到的文件冲突. 在项目目录中打开 vim, command 模式下输入命令:Gstatus,出现以下界面

git merge commitId 把其他分支的某次提交merge进该分支

之前遇到的问题回顾: 1.目前log出来的内容只能查看不能编辑,虽然fetch下来,但是master和origin/master同时存在.我merge进来然后根据冲突去单个编辑用其他文本编辑器处理,编译确认,再一次add新版本,再次commit和push. 2.我在想有没有单个文件merge的形式,我找了蛮久,找不到类似的命令? 终于看到gitchina站长的视频,发现原来一直需要的是git merge commitId即可. 在此贴一下比较高质量的博客: http://blog.jobbole

闲谈 git merge 与 git rebase 的区别

前言 相信大部分使用 Git 的朋友都会遇见相同的疑问,并且也从网上搜索了不少资料.那么,为什么我还要写这篇文章呢?因为我想尝试从自己的角度解释这个问题,如果能给到大家灵光一闪的感悟,便善莫大焉啦.估计点进来的朋友也对 merge 和 rebase 有了一定了解,所以我也就不浪费篇幅再去详细介绍 merge 和 rebase,让我们直入主题吧. merge 与 rebase 的区别 merge 现在假设我们有一个主分支 master 及一个开发分支 deve,仓库历史就像这样:现在如果在 mas

三十八、git merge简介

git merge的基本用法为把一个分支或或某个commit的修改合并现在的分支上. 我们可以运行git merge -h查看其命令usage: git merge [options] [<commit>...]    or: git merge [options] <msg> HEAD <commit>    or: git merge --abort -n                    do not show a diffstat at the end of

Git merge 冲突解决简明教程

目录 1.????概述????1 2.????从git difftool & mergetool 工具开始 – Beyond Compare????1 2.1.????下载安装Beyond Compare????1 2.2.????创建启动Beyond Compare脚本????1 2.2.1.????创建git-difftool-bcomp-wrapper.sh????2 2.2.2.????创建git-mergetool-bcomp-wrapper.sh????2 2.3.????设置环境变

git merge 合并分支

git merge 用来做分支合并,将其他分支中的内容合并到当前分支中.比如分支结构如下: master / C0 ---- C1 ---- C2 ---- C4 C3 ---- C5 issueFix 当前分支是master$ git checkout master 把issueFix中的内容Merge进来:$ git merge issueFix 如果没有冲突的话,merge完成.有冲突的话,git会提示那个文件中有冲突,比如有如下冲突: <<<<<<< HE