1.基本命令
git branch 查看本地分支
git branch -r 查看远程分支
git checkout xxx 切换分支
git pull origin master //从远程同步到本地,master或分支名
git pull origin xxx
git checkout -b xxx 新建xxx的分支
git checkout -b 本地分支名 远程分支名
git branch -D xxx 删除本地分支
git status 查看状态
git add file 添加到本地server cache
git checkout -- file 从本地回滚
git add path1 path2 ... 添加修改文件路径到stage状态。
git commit 提交本地server
git log
git diff cmt1 cmt2 --stat 查看cmt1 和cmt2两个版本的文件变化
git checkout -- filename 去除本地文件的修改、
git stash 去除本地的所有更新
git log --committer xiaojin.lh 查看某个committer的提交
git reset --hard commit-id :回滚到commit-id,讲commit-id之后提交的commit都去除

2.拉取远程分支
1).首先clone,获取远程的主干
git clone git@gitlab.abcde-inc.com:mysql-engine/alisql.git 空目录

2).查看远程分支
git branch -r

3).根据远程分支建立本地分支
git checkout -b 本地分支名 远程分支名

4).拉取远程的最新分支
git pull origin feature_encryption_issue1

5).拉取远程的某个tag,比如拉取远程rocksdb的4.11.2版本
git checkout -b 4.11.2 v4.11.2

3.推送到远程
git push <远程主机名> <本地分支名>:<远程分支名>
git push origin xxx:xxx 把本地的分支推送到远程
git push origin xxx,省略远程分支,表示将本地的xxx分支推送到远程的xxx分支,若分支不存在,则创建。
git push origin xxx:xxx --dry-run 模拟推送
git push orgin :xxx,表示推送一个空分支到远程,相当于删除远程分支。
等价于:
git push origin --delete xxx

4.合并分支master
1).切换到master分支(想要合并的目的分支,这里是master)
2).合并分支
git merge feature_encryption_issue1,(合并想要合并的分支名,这里是feature_encryption_issue1)
3).推送到远程
git push origin master

比如你在开发feature_xxx,这个时候master已经更新了,你需要合并最新的master:
4).在feature_xxx分支更新master
git checkout feature_xxx
git merge master

5).master 合并某个分支 feature_xxx
git checkout master
git merge feature_xxx

5.提交Merge Request步骤
1).删除远程分支
git push origin :xxx_branch //删除远程的xxx分支

2).拉取master
git clone git@gitlab.abcde-inc.com:mysql-engine/mysql.git xxx_branch

3).建立新分支
git checkout -b xxx_branch

4).合并diff文件
git apply xxx.diff

5).本地提交
git commit -am "[feature]comment"

6).推送到远程分支
git push origin xxx_remote_branch

7).本地提交,使用--amend //commit沿用之前的版本号
git commit --amend 【本地提交】

8).推送到远程,使用 --force
git push origin xxx:xxx --force 【推送到远程】

6.生成patch,合并patch
1).基本命令
git diff old-commit current-commit > xxx.patch 生成patch
git apply xxx.patch 应用某个patch,事务操作,全部成功或全部失败。
git apply -R xxx.patch 恢复某个commit,xxx.patch是变更的内容。
git apply --check patch 在应用patch之前,可以用命令 --check 确认patch是否有冲突问题。
git apply patch --reject 如果有冲突,可以通过--reject查看冲突在哪里,然后进行修改。

2).拉取一个主干,然后应用patch
git clone git@gitlab.abcde-inc.com:mysql-engine/alisql.git
patch -p1 < *.diff
3).commit
4).push到远程。

git开发常用命令的更多相关文章

  1. Git是什么、Git的功能、为什么versioncontrol用Git、Git的常用命令、Git的优缺点

    Git是什么 git是目前世界上最先进的分布式版本控制系统(没有之一). Git是用于 Linux内核开发的版本控制工具.与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版 ...

  2. Git 基础 —— 常用命令

    Git 基础学习系列 Git 基础 -- 安装 配置 别名 对象 Git 基础 -- 常用命令 Git 基础 -- 常见使用场景 Git基础 -- Github 的使用 git init 创建 Git ...

  3. git的常用命令。。

    git的常用命令.. git help <command>  显示command的help git show  显示某次提交的内容 git show $id git co -- <f ...

  4. GIT 版本控制常用命令学习汇总

    GIT 版本控制常用命令汇总 git version 查看当前git版本信息 git help 获取全部命令帮助信息 git help <command> 获取指定命令帮助信息 git c ...

  5. git log 常用命令及技巧

    git log常用命令以及技巧 1.git log 如果不带任何参数,它会列出所有历史记录,最近的排在最上方,显示提交对象的哈希值,作者.提交日期.和提交说明.如果记录过多,则按Page Up.Pag ...

  6. Git基本常用命令

    Git基本常用命令如下: mkdir: XX (创建一个空目录 XX指目录名) pwd: 显示当前目录的路径. git init 把当前的目录变成可以管理的git仓库,生成隐藏.git文件. git ...

  7. Git stash 常用命令

    参考: Git: How to look at the stash Git学习笔记05--git stash Git stash 常用命令 1.git stash: 保存当前的工作进度: 2.git ...

  8. git之常用命令

    git之常用命令 1.下载远程仓库最新代码 $ git pull --rebase origin master 2.上传代码 $ git push origin master 3.退出编辑 ESC + ...

  9. Git - Git基本常用命令

    Git基本常用命令 mkdir:         XX (创建一个空目录 XX指目录名) pwd:          显示当前目录的路径. git init          把当前的目录变成可以管理 ...

随机推荐

  1. SQL两列数据,行转列

    SQL中只有两列数据(字段1,字段2),将其相同字段1的行转列 转换前: 转换后: --测试数据 if not object_id(N'Tempdb..#T') is null drop table ...

  2. Android 平台 Native 代码的崩溃捕获机制及实现

    本文来自于腾讯Bugly公众号(weixinBugly),未经作者同意,请勿转载,原文地址:https://mp.weixin.qq.com/s/g-WzYF3wWAljok1XjPoo7w 一.背景 ...

  3. new Date()传参的浏览器兼容性

    测试以下是在IE9的测试情况 可以看到IE9不支持new Date('2018-1-2')和new Date('123456'),但是支持new Date('2018-01-02').new Date ...

  4. 百度APP移动端网络深度优化实践分享(二):网络连接优化篇

    本文由百度技术团队“蔡锐”原创发表于“百度App技术”公众号,原题为<百度App网络深度优化系列<二>连接优化>,感谢原作者的无私分享. 一.前言 在<百度APP移动端网 ...

  5. ajax data属性传值的方式总结

    在和后台同事对接口的时候,有一个小问题一直困扰着我.那就是用ajax请求后台接口数据,需要用data属性传值的时候,data属性传值的方式感觉没有统一用一种方式. 后来仔细想想,其实哪种方式都可以,主 ...

  6. React教程(一) React介绍与搭建

    React的介绍: React来自于Facebook公司的开源项目 React 可以开发单页面应用 spa(单页面应用) react 组件化模块化 开发模式 React通过对DOM的模拟(虚拟dom) ...

  7. Spring Cloud Eureka 注册中心集群搭建,Greenwich 最新版!

    Spring Cloud 的注册中心可以由 Eureka.Consul.Zookeeper.ETCD 等来实现,这里推荐使用 Spring Cloud Eureka 来实现注册中心,它基于 Netfl ...

  8. 由一个emoji引发的思考

    由一个emoji引发的思考 从毕业以来,基本就一直在做移动端,但是一直就关于移动端的开发,各种适配问题的解决,在日常搬砖中处理了就过了,也没有把东西都沉淀下来,觉得甚是寒颜.现就一个小bug,让我们来 ...

  9. 学习ASP.NET Core Razor 编程系列十三——文件上传功能(一)

    学习ASP.NET Core Razor 编程系列目录 学习ASP.NET Core Razor 编程系列一 学习ASP.NET Core Razor 编程系列二——添加一个实体 学习ASP.NET ...

  10. SpringBoot + Spring Security 学习笔记(一)自定义基本使用及个性化登录配置

    官方文档参考,5.1.2 中文参考文档,4.1 中文参考文档,4.1 官方文档中文翻译与源码解读 SpringSecurity 核心功能: 认证(你是谁) 授权(你能干什么) 攻击防护(防止伪造身份) ...