Git pull(拉取) 名词解释

No commit

( 拉取代码时不提交本地代码)


Squash commit

( 提交代码时,需要删除之前的远程分支;使用git squash将多个commit信息合并成一个,并再次提交到远程分支,合并到master上.)

使用git squash目的:如果其他同事提交代码到master(develop),你rebase远程master时可能会遇到冲突,使用squash可以使解决冲突“简单化”;频繁commit导致多个无意义提交信息,容易引起他人理解git分支树困惑,使用squash让提交信息准确明了。 

缺点:将多次commit信息合并成一个,提交信息的减少导致理解困难,版本回滚会造成麻烦。


No fast forward

( 使得每一次的合并都创建一个新的commit记录 )


Fast-forward 进行合并

c.txt |    1 +

d.txt |    1 +

2 files changed, 2 insertions(+), 0 deletions(-)

create mode 100644 c.txt

create mode 100644 d.txt

可以看出这是一次fast-forward式的合并,且合并完之后的视图为扁平状,看不出develop分支开发的任何信息。

no-fast forward进行合并

—no-ff (no fast foward),使得每一次的合并都创建一个新的commit记录。即使这个commit只是fast-foward,用来避免丢失信息。

(master)$ git merge –no-ff develop

Merge made by recursive.

c.txt | 2 +-

d.txt | 2 +-

2 files changed, 2 insertions(+), 2 deletions(-)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. 安装 Github 查看是否安装git: $ git config --global user.name "...
    Albert_Sun阅读 14,654评论 9 163
  • Git 安装和使用教程 Git介绍 分布式:Git版本控制系统是一个分布式的系统,是用来保存工程源代码历史状态的命...
    无名_ff98阅读 5,514评论 0 3
  • 一、Git学习总结的命名 初始化一个Git仓库。 添加文件到Git仓库步骤分两步:使用命令git add <fil...
    Cheriez阅读 3,255评论 0 1
  • “许下的诺言不远了,相信明天会更好,梦想也会更近一步” 虽然地球看似那么大,但始终只是那么一个点,希望就在眼前,c...
    韩韩兔阅读 3,775评论 0 1
  • 窗外的楼房,白突突的,那脱落的墙皮,充分展示着这座老城的气息。老城似乎已经很累了,它不愿意跟随时代的步伐,慢吞吞...
    一杯热咖啡阅读 3,321评论 1 3