Git常用命令

一、 git 基本操作流程

1. 从远程分支拉取并创建新的分支
git pull origin [远程分支名]:[本地分支名]

// 从远程分支迁出本地分支,并切换到新的本地分支
git checkout -b [本地分支名] origin/[远程分支名] // 从远程分支更新
git pull origin [远程分支名]
2. 创建本地分支
git branch [本地分支称]

// 创建本地分支并切换到创建的分支
git checkout -b [本地分支名]
3. 切换本地分支
git checkout [本地分支名]
4. 查看分支
// 查看本地分支
git branch // 查看远程分支
git branch -r // 查看所有分支
git branch -a
5. 查看本地分支状态
// 查看本地分支
git status // 查看当前分支的日志信息(提交记录,本地与远程分支的对应关系)
git log --oneline --graph --decorate
6. 提交本地分支调整
git add -A  提交所有变化
git add -u 提交被修改(modified)和被删除(deleted)文件,不包括新文件(new)
git add . 提交新文件(new)和被修改(modified)文件,不包括被删除(deleted)文件
(在git 2.x 版本中和-A的作用一致)
6.1. git 1.x
Command New Files Modified Files Deleted Files Description
git add -A Y Y Y Stage All(new,modified,deleted) files
git add . Y Y N Stage New and Modified files only
git add -u N Y Y Stage Modified and Deleted files only
6.2. git 2.x
Command New Files Modified Files Deleted Files Description
git add -A Y Y Y Stage All(new,modified,deleted) files
git add . Y Y Y Stage All(new,modified,deleted) files
git add --ignore-removal Y Y N Stage New and Modified files only
git add -u N Y Y Stage Modified and Deleted files only
7. 提交本地分支调整索引
git commit -m '提交的描述信息'
8. push本地分支到远程并创建远程分支
git push origin [本地分支名]:[远程分支名]
9. 撤销单个文件
git checkout  [本地分支名]
例如:git checkout src/pages/lessonIndex/lessonIndex.wxss

二、 merge 合并操作

// 将b分支合并进a分支
// 首先切换到a分支
git checkout a
// 然后合并
git merge b

三、 rebase 变基操作

// 如果已commit则需要先reset commit
git reset --soft {commit} // 将新增文件添加进本地分支
git add .
// 将新增、修改、删除的操作写入暂存区
git stash save 'description'
//切换到dev分支
git checkout dev
// 将dev分支pull成最新
git pull origin dev
// 将当前分支rebase到最新分支
git rebase dev
// 查看暂存区列表
git stash list
// 将暂存区的内容取出
git stash pop
1、git更新合并代码流程
// 如果已commit则需要先reset commit
git reset --soft {commit} // 将新增文件添加进本地分支
git add .
// 将新增、修改、删除的操作写入暂存区
git stash save 'description'
//切换到dev分支
git checkout dev
// 将dev分支pull成最新
git pull origin dev
// 切换到当前开发分支feature/mt/debug
git checkout feature/mt/debug
// 合并dev分支的代码
git merge dev(不建议)
git rebase dev(建议)
// 查看暂存区列表
git stash list
// 将暂存区的内容取出,如果有多条记录使用git stash pop stash@{id}
git stash pop
// 提交修改文件
git add .
// 填写备注
git commit -m '备注信息'
// push到远程服务器
git push origin [本地分支名]:[远程分支名]
例如: git push origin feature/mt/debug:feature/mt/debug-fix

四、 查看远程分支状态

// 查看远程分支状态
git remote show origin // 删除远程实际已不存在的分支
git remote prune origin // 远程有分支,本地查不到时,将本地远程跟踪分支进行更新,与远程分支保持一致
git fetch

五、 分支删除

1. 删除本地分支
git branch -D [要删除的分支名]
2. 删除远程分支
git push origin --delete [远程分支名]
// push 一个空的分支到远程也可以删除
git push origin :[远程分支名]

六、 Git常用的撤销操作

1.基本状态标识
A- = untracked 未跟踪
A = tracked 已跟踪未修改
A+ = modified - 已修改未暂存
B = staged - 已暂存未提交
C = committed - 已提交未PUSH
2、各状态之间变华
A- -> B : git add <FILE>
B -> A- : git rm --cached <FILE>
B -> 删除不保留文件 : git rm -f <FILE>
A -> A- : git rm --cached <FILE>
A -> A+ : 修改文件
A+ -> A : git checkout -- <FILE>
A+ -> B : git add <FILE>
B -> A+ : git reset HEAD <FILE>
B -> C : git commit
C -> B : git reset --soft HEAD^
修改最后一次提交:git commit --amend
3、撤销修改
已修改,未暂存:git checkout . (git checkout <file>)
已暂存,未提交: git reset (git reset --hard 会覆盖)
已提交,未推送: git reset --hard origin/master (远程仓库覆盖本地仓库)
已推送: git reset --hard <commitID> (如果要覆盖远程必须强制推 git push -f)

gjt常用命令---chalee的更多相关文章

  1. Linux 常用命令(持续补充)

    常用命令: command &:将进程放在后台执行 ctrl + z:暂停当前进程 并放入后台 jobs:查看当前后台任务 bg( %id):将任务转为后台执行 fg( %id):将任务调回前 ...

  2. LVM基本介绍与常用命令

    一.LVM介绍LVM是 Logical Volume Manager(逻辑卷管理)的简写,它是Linux环境下对磁盘分区进行管理的一种机制LVM - 优点:LVM通常用于装备大量磁盘的系统,但它同样适 ...

  3. Linux学习笔记(一):常用命令

    经过统计Linux中能够识别的命令超过3000种,当然常用的命令就远远没有这么多了,按照我的习惯,我把已经学过的Linux常用命令做了以下几个方面的分割: 1.文件处理命令 2.文件搜索命令 3.帮助 ...

  4. git常用命令(持续更新中)

    git常用命令(持续更新中) 本地仓库操作git int                                 初始化本地仓库git add .                       ...

  5. 【原】npm 常用命令详解

    今年上半年在学习gulp的使用,对npm的掌握是必不可少的,经常到npm官网查询文档让我感到不爽,还不如整理了一些常用的命令到自己博客上,于是根据自己的理解简单翻译过来,终于有点输出,想学习npm这块 ...

  6. npm常用命令

    npm常用命令 环境:win7 npm 是什么 NPM(node package manager),通常称为node包管理器.顾名思义,它的主要功能就是管理node包,包括:安装.卸载.更新.查看.搜 ...

  7. Git 常用命令

    一.初始環境配置 git config --global user.name "John Doe"git config --global user.email johndoe@ex ...

  8. linux iptables常用命令之配置生产环境iptables及优化

    在了解iptables的详细原理之前,我们先来看下如何使用iptables,以终为始,有可能会让你对iptables了解更深 所以接下来我们以配置一个生产环境下的iptables为例来讲讲它的常用命令 ...

  9. Linux常用命令(一)

    Linux常用命令 1. pwd查看当前路径(Print Working Directory)    [root@CentOS ~]# pwd/root 2. cd .. 返回上一级 .. 表示上一级 ...

随机推荐

  1. lua 操作redis

    Redis在2.6推出了脚本功能,允许开发者使用Lua语言编写脚本传到Redis中执行.使用脚本的好处如下: 1.减少网络开销:本来5次网络请求的操作,可以用一个请求完成,原先5次请求的逻辑放在red ...

  2. 减少xcode错误输出

    运行xcrun相关命令如果出现找不到对应模块和工具,要确认一下在xcode中命令行工具是否正确设置了 xcrun simctl spawn booted log config --mode " ...

  3. boot跳转到app后,中断不起作用的原因

    boot跳转到app后 osKernelStart()之前,中断有问题,不起作用 原因是因为boot跳转之前__disable_irq(); 跳转到APP后,并不是一切从头开始,__disable_i ...

  4. webapi 利用webapiHelp和swagger生成接口文档

    webapi 利用webapiHelp和swagger生成接口文档.均依赖xml(需允许项目生成注释xml) webapiHelp:微软技术自带,仅含有模块.方法.请求-相应参数的注释. swagge ...

  5. 一、使用官方工具建立空springboot

          自己搭过springboot,看的官网,一点点自己弄,集成druid,做了些例子,从0到1弄了一下午. 当时没看到有工具可用,可以把依赖都加上,简称STS.       下载地址: htt ...

  6. layui 根据后台传来的值选择按钮

    {{# if(d.status == 'xxx'){ }} <a class="layui-btn layui-btn-xs layui-btn-disabled" lay- ...

  7. Charles 的界面详解

    后续补充.......... 一.主导航栏 1.File.Edit.View.Proxy.Tools.Window.Help 2.View栏 (1)structure视图是将网络请求按访问的域名分类: ...

  8. weblogic的基础安装

    安装java环境 不能使用centos自带的openjdk  必须使用源码安装 把下载的jdk-8u181-linux-x64.tar 解压到 /usr/src目录下      tar zxvf jd ...

  9. HibernateValidators

    public final class HibernateValidators { private static final Validator VALIDATOR; private Hibernate ...

  10. 【Docker】-NO.131.Docker.1 -【Docker】

    Style:Mac Series:Java Since:2018-09-10 End:2018-09-10 Total Hours:1 Degree Of Diffculty:5 Degree Of ...