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)

转载于:https://www.cnblogs.com/cxmSuperman/p/10716897.html

gjt常用命令---chalee相关推荐

  1. Kubectl 常用命令, 开发人员常用k8s命令

    Kubectl 常用命令: 什么是常用,我用的,就是常用的

  2. docker常用命令详解

    docker常用命令详解 本文只记录docker命令在大部分情境下的使用,如果想了解每一个选项的细节,请参考官方文档,这里只作为自己以后的备忘记录下来. 根据自己的理解,总的来说分为以下几种: Doc ...

  3. 客快物流大数据项目(十五):DockeFile常用命令

    目录 DockeFile常用命令 一.FROM 二.​​​​​​​MAINTAINER 三.​​​​​​​RUN

  4. 客快物流大数据项目(九):Docker常用命令

    目录 Docker常用命令 一.帮助命令 二.镜像命令 1.搜索镜像

  5. linux常用命令(转载)

    Linux常用命令大全(非常全!!!) 最近都在和Linux打交道,感觉还不错.我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因,比较短 ...

  6. maven发布项目到私服-snapshot快照库和release发布库的区别和作用及maven常用命令

    maven发布项目到私服-snapshot快照库和release发布库的区别和作用及maven常用命令 在日常的工作中由于各种原因,会出现这样一种情况,某些项目并没有打包至mvnrepository. ...

  7. linux kvm虚拟化命令,Linux系统下kvm虚拟化(三)日常管理常用命令和配置说明

    根据我们之前创建和一些操作可以知道,KVM虚拟机的管理主要是通过virsh命令对环境下kvm虚拟机进行管理,下边这里整理一些常用的配置说明以及如何进行日常管理维护. 1,查看KVM虚拟机配置文件 KV ...

  8. kubectl常用命令_《蹲坑学kubernetes》之十五:kubectl命令详解

    kubectl用于运行Kubernetes集群命令的管理工具.本章节主要讲了kubectl基本语法和使用方法.在以后的实际工作中,使用越来越多,也会越来越熟悉. 1.kubectl语法 kubectl ...

  9. 计算机网络管理的常用命令,网络管理常用命令图文详解.pdf

    网络工程师必备 – 网络管理常用命令图文详解 网络工程师必备 网络管理常用命令 图文详解 V1.0 V1.0 包含 ping.ipconfig.netstat.nbtstat.tracert. pat ...

最新文章

  1. 关于Synchronized研伸扩展
  2. 在windows下 格式化SD卡或U盘最快捷、安全的方法!
  3. 中商惠民签约神策数据 致力为客户提供最优服务模式
  4. bootstrap checkbox选中事件
  5. SpringSecurity分布式整合之common工具模块创建
  6. 3、从尾到头打印链表------------剑指offer系列
  7. spark指定类型+列名 将RDD转化成DataFrame
  8. Mybatis-no getter for property named 'col_name' in 'class com.xxx.onebean'
  9. CGAffineTransform 获取 旋转的弧度 和 角度 的方法
  10. 二分搜索(Binary Search)
  11. Magnific Popup – 免费的响应式 jQuery Lightbox 插件
  12. TIA博途中如何设置不需要初始化DB块也可以下载?
  13. 泛函分析中的数学空间概念图谱
  14. Unity拼图小游戏
  15. python实现排序算法lowb三人组之插入排序
  16. 50欧姆系统的由来的小故事
  17. 克鲁斯卡尔(kruskal)算法代码释义
  18. MySQL第十次作业
  19. 计算机装两个显示器怎么操作,一台电脑两个显示器的设置方法
  20. matlab学习笔记:如何在matlab中如何自定义函数和匿名函数

热门文章

  1. 【非洲秃鹫优化算法】基于非洲秃鹫优化算法求解多目标优化问题MOAVOA含Matlab源码
  2. ElementUI导航菜单嵌套多级折叠面板的小箭头图标bug
  3. devise rails
  4. android计算器退格键,计算器有关问题,如何写退格键
  5. win7系统设置无线临时(计算机到计算机)网络 手机,Win7无线临时网络允许移动WIFI和“启用Internet连接共享”...
  6. opencv的imwrite设置图片压缩率
  7. 解决:RuntimeError: mat1 and mat2 shapes cannot be multiplied (8x256 and 8x256)维度不匹配问题
  8. 庄子·内篇·逍遥游第一(郭象注)
  9. Python网络爬虫:爬取腾讯招聘网职位信息 并做成简单可视化图表
  10. linux和手机通讯,在Linux的系统下使用红外进行手机通讯