git 最新笔记,工作中的必会技能
1.状态查看:
git status 可以查看工作区,暂存区的状态
untracked 在暂存区没有该文件
modified 修改过
staged 使用git add 暂存过
2.添加操作:
git add [file name] 将工作区的新建/修改添加到暂存区
3.提交操作
git commit -m "commit message" [file name] 将暂存区的内容提交到本地仓库
4.查看历史记录
git log 多屏显示控制方式 空格向下翻页 b向上翻页 q退出 git log --pretty=online // 简洁方式 git log --oneline git reflog
5.前进后退
5.1基于索引值操作[推荐] git reset --hard [索引值]
5.2使用^符号:只能后退 git reset --hard HEAD^(表示往后退一步,后退几步加几个^)
5.3使用~符号:只能后退 git reset --hard HEAD~n(表示后退n步)
6.reset命令的三个参数对比
--soft 参数
仅仅在本地库移动指针
--mixed参数
在本地库移动HEAD指针
重置暂存区
--hard参数(常用)
在本地库移动HEAD指针
重置暂存区
重置工作区
7.删除文件后找回
前提:删除前,文件存在的状态提交到了本地库
操作:git reset --hard[指针位置]
删除操作已经提交到本地库:指针位置指向历史记录
删除操作尚未提交到本地库:指针位置使用HEAD
8.文件比较
git diff [文件名] 将工作区中的文件和暂存区进行比较
git diff [本地库历史版本] [文件名] 将工作区中的文件和本地历史版本进行比较
不带文件名可以比较多个文件
git diff --cached 比较缓存区与本地库最近一次commit内容
git diff HEAD 比较工作区与本地最近一次commit内容
git diff <commit ID> <commit ID> 比较两个commit之间的差异
9.分支管理
git branch 查看本地分支
git branch -r 查看远程分支
git branch [分支名] 新建一个分支
git branch -d [分支名] 删除分支
git checkout [分支名] 切换分支
git checkout -b [分支名] 新建分支并切换到该分支
git merge [分支名] 合并分支
git branch --merged 查看哪些分支已经合并到当前分支
git branch --no-merged 查看哪些分支没有合并到当前分支
10.git远程库别名
git remote add [别名] [远程库地址]
11.远程库修改的拉取
pull = fetch + merge
git pull [远程库地址别名] [远程库分支名]
git fetch [远程库地址别名] [远程库分支名]
12.推送到远程库
git push [远程库地址别名] [远程库分支名]
13.文件暂存
git stash save -a "message" 添加改动到stash
git stash drop
<stash@(ID)>删除暂存git stash list 查看stash列表
git stash clear 删除全部暂存
git stash pop
<stash@(ID)>恢复改动
14.撤销操作
git checkout -- <file> 撤销工作区修改
git reset HEAD <file> 撤销暂存区文件(不覆盖工作区)
git reset --(soft | mixed | hard) <HEAD -num> | <commit ID> 版本回退
15.线上回滚操作
方法一:(强制指针回移)
1.查看历史记录
git reflog
2.本地分支回滚到指定版本
git reset --hard [索引值]
3.强推到远程(直接push推不上去,需要强推,因为reset之后,远程分支比本地分支新)
git push -f origin [远程分支名]
方法二:(推荐)
1.查看历史记录
git reflog
2.反向新创建一个版本,这个版本的内容与我们回滚的版本内容一致,HEAD会指向这个新版本,而不是回退到之前版本
git revert [索引值]
3.直接推送到远程即可
git push origin [远程分支名]
16.查看文档
git help -a 展示git命令大纲全部列表
git help git help [命令]
git 最新笔记,工作中的必会技能的更多相关文章
- 关于git你日常工作中会用到的一些东西
前言 git是一个版本控制工具, 版本控制主要的好处有三点: 从当前版本回退到任意版本 查看历史版本 对比两个版本差异 git 相关术语 repository 仓库 branch 分支 summary ...
- 学习ES6笔记──工作中常用到的ES6语法
学习博客:https://segmentfault.com/a/1190000016068235
- 【转】git 学习笔记( 随时更新中…… 最后更新日期201304281518)--不错
原文网址:http://blog.csdn.net/yasin_lee/article/details/5975070 GIT 是版本管理的未来! 推荐几个GIT教程网站 http://www-c ...
- git在工作中的用法总结-使用篇
上一篇介绍了git的环境安装配置,本篇对git在工作中常用的用法进行总结,已满足大部分的日常工作需求,对于其他的一些git命令用法在今后使用到时我也会更新上来,文中如有错误,欢迎大家指出来,谢谢~ 一 ...
- 工作中常用的Git操作--------(一)
今天主要记录一下平常工作当中使用的git操作: 1.git的安装这里省略: 2.git的操作指令: 在项目开发中,经常是拉去经理已经搭建好的一个项目,也就是给我们一个git地址.比如:http://g ...
- git工作中常用命令-工作中踩过的坑
踩坑篇又来啦,这是我在工作中从git小白进化到现在工作中运用自如的过程中,踩过的坑,以及解决办法. 1.基于远程develop分支,建一个本地task分支,并切换到该task分支 git checko ...
- Git学习笔记(2)-Eclipse中Git插件使用
目前我使用的Eclipse luna版本中已经集成了git插件,这里就不介绍如何安装Git插件了,不懂可以看其他的博客. 上篇笔记介绍了Git的基本指令,实际开发中我基本都使用eclipse插件进行代 ...
- 【Git】工作中99%能用到的git命令
Git使用笔记 1.第一次使用github ============================================= 1)github注册账号 使用邮箱注册账号 先不要创建版本库 2 ...
- git工作中最常用的用法教程,不走命令行
·1.1 git的概述 Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理. Git 是 Linus Torvalds 为了帮助管理 Lin ...
随机推荐
- laravel服务容器 转
laravel框架底层解析 本文参考陈昊<Laravel框架关键技术解析>,搭建一个属于自己的简化版服务容器.其中涉及到反射.自动加载,还是需要去了解一下. laravel服务容器 建立项 ...
- 《Connecting the Dots: A Knowledgeable Path Generator for Commonsense Question Answering》一文的理解和总结
构建常识问答知识路径生成器 论文贡献 提出学习一个多跳知识路径产生器来根据问题动态产生结构化证据.生成器以预先训练的语言模型为主干,利用语言模型中存储的大量非结构化知识来补充知识库的不完整性.路径 ...
- 这份算法攻略,我拿到了5个大厂的offer
每个时代,都不会亏待会学习的人. 大家好,我是 yes. 我持续在 LeetCode 刷算法题将近有一年半的时间了,这一年半以来我对算法的看法改变了很多,但是实话实说支持我前进的还是面试. 在之前的文 ...
- 这十个Python常用库?学习Python的你必须要知道!
想知道Python取得如此巨大成功的原因吗?只要看看Python提供的大量库就知道了 ,包括原生库和第三方库.不过,有这么多Python库,有些库得不到应有的关注也就不足为奇了.此外,只在一个领域里的 ...
- IDEA Cannot resolve plugin org.apache.maven.plugins:maven-site-plugin:3.8.2-plugin爆红错误
如果确认本地库存在,maven仓库配置正确,将其显式声明出来,问题解决 <!--报找不到该依赖的错误, 本地库又存在,将其显式声明在这里,问题解决--> <plugin> &l ...
- 本地文件r如何上传到github上
来源:http://www.cnblogs.com/shenchanghui/p/7184101.html 来源:http://blog.csdn.net/zamamiro/article/detai ...
- Java学习的第五十二天
1.例9.4对象数组的使用方法 public class Cjava { public static void main(String[]args) { Box b[] = {new Box(10,1 ...
- MobileNet——一种模型轻量化方法
导言 新的CNN网络的提出,提高了模型的学习能力但同时也带来了学习效率的降低的问题(主要体现在模型的存储问题和模型进行预测的速度问题),这使得模型的轻量化逐渐得到重视.轻量化模型设计主要思想在于设计更 ...
- python100实例
实例001:数字组合 题目 有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 程序分析 遍历全部可能,把有重复的剃掉. total=0 for i in range(1 ...
- How to Convert and Import VHD to VMDK (VMWare)
VHD or Virtual Hard Disk is the disk image format used by Microsoft virtualization software such as ...