git开发常用命令
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开发常用命令的更多相关文章
- Git是什么、Git的功能、为什么versioncontrol用Git、Git的常用命令、Git的优缺点
Git是什么 git是目前世界上最先进的分布式版本控制系统(没有之一). Git是用于 Linux内核开发的版本控制工具.与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版 ...
- Git 基础 —— 常用命令
Git 基础学习系列 Git 基础 -- 安装 配置 别名 对象 Git 基础 -- 常用命令 Git 基础 -- 常见使用场景 Git基础 -- Github 的使用 git init 创建 Git ...
- git的常用命令。。
git的常用命令.. git help <command> 显示command的help git show 显示某次提交的内容 git show $id git co -- <f ...
- GIT 版本控制常用命令学习汇总
GIT 版本控制常用命令汇总 git version 查看当前git版本信息 git help 获取全部命令帮助信息 git help <command> 获取指定命令帮助信息 git c ...
- git log 常用命令及技巧
git log常用命令以及技巧 1.git log 如果不带任何参数,它会列出所有历史记录,最近的排在最上方,显示提交对象的哈希值,作者.提交日期.和提交说明.如果记录过多,则按Page Up.Pag ...
- Git基本常用命令
Git基本常用命令如下: mkdir: XX (创建一个空目录 XX指目录名) pwd: 显示当前目录的路径. git init 把当前的目录变成可以管理的git仓库,生成隐藏.git文件. git ...
- Git stash 常用命令
参考: Git: How to look at the stash Git学习笔记05--git stash Git stash 常用命令 1.git stash: 保存当前的工作进度: 2.git ...
- git之常用命令
git之常用命令 1.下载远程仓库最新代码 $ git pull --rebase origin master 2.上传代码 $ git push origin master 3.退出编辑 ESC + ...
- Git - Git基本常用命令
Git基本常用命令 mkdir: XX (创建一个空目录 XX指目录名) pwd: 显示当前目录的路径. git init 把当前的目录变成可以管理 ...
随机推荐
- JAVA基础知识(一)—JAVA概述
JAVA概述 1991 年Sun公司的James Gosling(詹姆斯·高斯林)等人开始开发名称为 Oak 的语言,希望用于控制嵌入在有线电视交换盒.PDA等的微处理器: 1994年将Oak语言更名 ...
- 简单几步用纯CSS3实现3D翻转效果
作为前端开发人员的必修课,CSS3翻转能带我们完成许多基本动效,本期我们将用CSS3实现hover翻转效果~ 第一步非常简单,我们简单画1个演示方块,为其 添加transition和transform ...
- php7连接mysql测试代码
php7连接mysql测试代码 <?php $mysqli = new mysqli("localhost", "root", "passwor ...
- Windows 安装 Scoop
Scoop介绍 scoop是Windows下的包管理工具 安装环境要求 1,操作环境:win10 2,确保你的 PowerShell 版本 >= 3. win7或许低于3,得升级.如何确认Pow ...
- 数组for循环查找范围
数组for循环查找范围,如果是判读是否在键值之间,如$array[$i],那么接邻的元素不能用$array[$i+1]或者$array[$i-1]只能用$array[$i++]
- #Java学习之路——基础阶段二(第一篇)
我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容. 前言: ...
- chrome谷歌浏览器开发者工具-网络带宽控制
有时候我们想在本地测试一下图片预加载loading的加载情况,如下图: 可无奈一般网络带宽都比较好,基本上看不到效果,图片一下子就加载出来了, 可能这个时候有些小伙伴想到的办法是用定时器延迟加载 其实 ...
- 音频处理贤内助--libsndfile
libsndfile是由Erik de Castro Lopo写的的广泛用于读写音频文件的C语言库.它支持的音频格式十分广泛并且能够自动的从一种格式到另外一种格式.它极大的方便了开发者,可以让开发者忽 ...
- Python基础(max,min方法)
max函数(min函数使用方法一致): #-----------------max函数----------------- #max之简单层次的使用 li=[1,0,2,45,12,-2,7,9] re ...
- 数据库~dotnetcore连接Mysql插入中文失败
到目录 在dotnetcore里,连接mysql数据,插入中文时出现无法识别,并提示插入失败的情况,分析后得知它是编码问题,即数据库编码问题,你的中文在数据表里无法被识别! 解决方法(一) 进行mys ...