Git命令备忘录
前言
Git在平时的开发中经常使用,整理Git使用全面的梳理。
基本内容
开始之前
请自行准备好Git工具以及配置好Git的基本配置
基础内容
基础概念
如下内容,在码云或者Github上新建仓库出现的内容,
mkdir demo
cd demo
git init
touch README.md
git add README.md
git commit -m "first commit"
git remote add origin https://gitee.com/will-we/demo.git
git push -u origin master
基础命令
git init 创建git仓库
git add 把文件添加进去,实际上就是把文件修改添加到暂存区
git status 查看仓库当前的状态
git diff查看difference
git log显示从最近到最远的提交日志
git reset --hard版本回复,格式:git reset --hard commit的Id号
git reset --hard HEAD^ 回到上次提交的版本
git reflog记录在本地存储库中更新分支和其他引用的提示
git checkout -- file文件在工作区的修改全部撤销
git reset HEAD <file>将当前版本上文件恢复
git rm 删除暂存区的文件(直接工区删除后,提交版本库也删除)
远程仓库
开始之前,请配置本地与远程仓库的相关配置,秘钥等配置
git remote查看远程库的信息
git remote -v显示更详细的信息
git push origin master推送到远程主分支
> 推送失败,先用git pull抓取远程的新提交,有冲突先解决冲突
分支管理
基本命令
git checkout -b dev创建并切换dev分支
git branch查看所有分支,当前分支*表示
git branch <name>创建分支
git merge命令用于合并指定分支到当前分支
git branch -d <name>删除分支
git branch -D <name>强行删除分支(git branch -d <name>删除操作时会该分支做合并,如果没有合并将出现错误)
git log --graph --pretty=oneline --abbrev-commit看到分支的合并情况
stash命令
git stash将工作备份后临时清理工作区为版本库,用于紧急修改缺陷场景
git stash list查看备份的工作现场
git stash apply恢复工作现场
git stash drop删除之前的备份现场
git stash pop先恢复再删除之前的备份
rebase命令
git rebase作用 和git merge的效果类似,但是git rebase不再包含分支的提交信息最终log为一条直线
关于两者的区别可参考内容: git rebash 和 git merge 区别
在rebase的过程中,也许会出现冲突(conflict). 在这种情况,Git会停止rebase并会让你去解决 冲突;在解决完冲突后,用"git-add"命令去更新这些内容的索引(index), 然后,你无需执行 git-commit,只要执行;当然可以--absort回复到rebase之前的状态。
$ git rebase --continue
冲突问题
“<<<<<<<” 表示冲突代码开始
“=======” 表示test与master冲突代码分隔符
“>>>>>>>" 表示冲突代码的结束
标签管理
git tag显示标签列表
git tag <tagname>添加轻标签
git log --decorate显示包含标签资料的历史记录
git tag -a <tagname> -m '注解内容'添加注解标签
git tag -n显示标签的列表和注解
git tag -d <tagname>删除标签
git push origin <tagname>可以推送一个本地标签
git push origin --tags可以推送全部未推送过的本地标签;
git push origin :refs/tags/<tagname>可以删除一个远程标签
参考教程
Git命令备忘录的更多相关文章
- linux常用命令大全(linux基础命令入门到精通+命令备忘录+面试复习+实例)
作者:蓝藻(罗蓝国度) 创建时间:2018.7.3 编辑时间:2019.4.29 前言 本文特点 授之以渔:了解命令学习方法.用途:不再死记硬背,拒绝漫无目的: 准确无误:所有命令执行通过(环境为ce ...
- [转帖]linux常用命令大全(linux基础命令入门到精通+实例讲解+持续更新+命令备忘录+面试复习)
linux常用命令大全(linux基础命令入门到精通+实例讲解+持续更新+命令备忘录+面试复习) https://www.cnblogs.com/caozy/p/9261224.html 总结的挺好的 ...
- Git初探--笔记整理和Git命令详解
几个重要的概念 首先先明确几个概念: WorkPlace : 工作区 Index: 暂存区 Repository: 本地仓库/版本库 Remote: 远程仓库 当在Remote(如Github)上面c ...
- 工作中常用的git命令
一 常用Git命令 git clone:(区分SSH or HTTP) git init:初始化仓库 二 Git命令详解 Git Bash下,cd /c git clone,从远程Git版本库克隆一份 ...
- 常用 Git 命令清单
我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下 ...
- 常look的Git命令
常用的Git命令 命令 简要说明 git add 添加至暂存区 git add–interactive 交互式添加 git apply 应用补丁 git am 应用邮件格式补丁 git a ...
- ***Linux下使用git命令及github项目
在linux下搭建git环境1.创建Github账号,https://github.com2.Linux创建SSH密钥: ssh-keygen ##一直默认就可以了 3.将公钥加入到Github账户 ...
- 我所记录的git命令(非常实用)
一.前言 记录一下工作中常用到的git命令,只是简单的笔记,欢迎大家交流... [ 顺便问下园友们,怎么感觉博客园发布的博客搜索有时都搜不到,后台编辑能填的都填写了,还是觉得搜索排名不高? 相同的标题 ...
- GIT命令行的使用
新手了解 有不对的地方指点下 首先, 了解下什么是GIT,GIT是一款开元的分布式版本控制工具, 在世界上的所有分布式版本控制工具中,GIT是最简单,最流行,同时也是最常用的 相比于其他版本的控制工具 ...
随机推荐
- POJ 1651:Multiplication Puzzle(区间DP)
http://poj.org/problem?id=1651 题意:给出n个数字,每取中间一个数,就会使得权值加上中间这个数和两边的乘积,求取剩两个数最少的权值是多少. 思路:区间dp. 一开始想了挺 ...
- JSON.stringify() 的深入理解
目录 序言 语法 深入理解 序言 最近在看<你所不知道的javascript>[中卷]一书,第一部分是类型和语法.本文是基于这部分的产物.在强制类型转换->抽象值操作-> to ...
- 生产Server遭挖矿程序入侵,暴力占用CPU
区块链的火热,利益驱使必然导致不少PC或Server,被变成肉鸡,执行挖矿程序进行挖矿,进而导致我们正常的程序无法正常. (Centos7 Server)使用top命令查看服务器进程运行情况,发现几个 ...
- C语言指针专题——为何要学习指针
欢迎转发本文! 之前的文章与各位谈论了指针是什么,以及指针为何这那么难学.不少知友留言说看了我的文章对指针了解了不少,这给我继续创作提供了莫大的动力啊.指针其实就是一个纸老虎,你看着可怕,等你了解其本 ...
- JS代码实现复制功能
本人没什么基础看了好久百度,不知道为什么在百度上问一个js实现copy功能会多出那么多代码出来,感觉废话一堆效果还没能达到需要复制 的效果. 然而在我看来,js复制代码 无非就那么几句罢了.原生cop ...
- Oracle使用MyBatis中RowBounds实现分页查询
Oracle中分页查询因为存在伪列rownum,sql语句写起来较为复杂,现在介绍一种通过使用MyBatis中的RowBounds进行分页查询,非常方便. 使用MyBatis中的RowBounds进行 ...
- R语言矩阵
矩阵是元素布置成二维矩形布局的R对象. 它们包含相同原子类型的元素. R创建矩阵的语法: matrix(data, nrow, ncol, byrow, dimnames) 参数说明: data - ...
- 【译】深入理解G1的GC日志(一)
本文翻译自:https://www.redhat.com/en/blog/collecting-and-reading-g1-garbage-collector-logs-part-2?source= ...
- C#7.2 新增功能
连载目录 [已更新最新开发文章,点击查看详细] C# 7.2 又是一个单点版本,它增添了大量有用的功能. 此版本的一项主要功能是避免不必要的复制或分配,进而更有效地处理值类型. C# 7.2 使 ...
- Java秒杀系统实战系列~整体业务流程介绍与数据库设计
摘要: 本篇博文是“Java秒杀系统实战系列文章”的第三篇,本篇博文将主要介绍秒杀系统的整体业务流程,并根据相应的业务流程进行数据库设计,最终采用Mybatis逆向工程生成相应的实体类Entity.操 ...