前言

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命令备忘录的更多相关文章

  1. linux常用命令大全(linux基础命令入门到精通+命令备忘录+面试复习+实例)

    作者:蓝藻(罗蓝国度) 创建时间:2018.7.3 编辑时间:2019.4.29 前言 本文特点 授之以渔:了解命令学习方法.用途:不再死记硬背,拒绝漫无目的: 准确无误:所有命令执行通过(环境为ce ...

  2. [转帖]linux常用命令大全(linux基础命令入门到精通+实例讲解+持续更新+命令备忘录+面试复习)

    linux常用命令大全(linux基础命令入门到精通+实例讲解+持续更新+命令备忘录+面试复习) https://www.cnblogs.com/caozy/p/9261224.html 总结的挺好的 ...

  3. Git初探--笔记整理和Git命令详解

    几个重要的概念 首先先明确几个概念: WorkPlace : 工作区 Index: 暂存区 Repository: 本地仓库/版本库 Remote: 远程仓库 当在Remote(如Github)上面c ...

  4. 工作中常用的git命令

    一 常用Git命令 git clone:(区分SSH or HTTP) git init:初始化仓库 二 Git命令详解 Git Bash下,cd /c git clone,从远程Git版本库克隆一份 ...

  5. 常用 Git 命令清单

    我每天使用 Git ,但是很多命令记不住. 一般来说,日常使用只要记住下图6个命令,就可以了.但是熟练使用,恐怕要记住60-100个命令. 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下 ...

  6. 常look的Git命令

    常用的Git命令   命令  简要说明 git add 添加至暂存区 git add–interactive 交互式添加 git apply   应用补丁 git am  应用邮件格式补丁 git a ...

  7. ***Linux下使用git命令及github项目

    在linux下搭建git环境1.创建Github账号,https://github.com2.Linux创建SSH密钥: ssh-keygen  ##一直默认就可以了 3.将公钥加入到Github账户 ...

  8. 我所记录的git命令(非常实用)

    一.前言 记录一下工作中常用到的git命令,只是简单的笔记,欢迎大家交流... [ 顺便问下园友们,怎么感觉博客园发布的博客搜索有时都搜不到,后台编辑能填的都填写了,还是觉得搜索排名不高? 相同的标题 ...

  9. GIT命令行的使用

    新手了解 有不对的地方指点下 首先, 了解下什么是GIT,GIT是一款开元的分布式版本控制工具, 在世界上的所有分布式版本控制工具中,GIT是最简单,最流行,同时也是最常用的 相比于其他版本的控制工具 ...

随机推荐

  1. 利用jsonconvert来转换json数据格式 (对象转为json)

      今天学了一下.net的WCF组件,边心血来潮,想着现在不都是前后分离,调接口开发不,于是赶紧写了一简单的后台数据,哈哈  废话不多说,直接上代码: 注意需要导入库! 实体类:Customer us ...

  2. 设计模式-访问者模式(Visitor)

    访问者模式是行为模式的一种.访问者模式的基本想法是,软件系统中拥有一个由许多对象构成的.比较稳定的对象结构,这些对象的类都拥有一个accept方法用来接受访问者的访问.访问者是一个接口,它拥有一个vi ...

  3. 关于自己"手机瘾"的切身体验

    其实之前也喜欢看手机,只是从去年7月份开始,因为自控能力.新项目等原因,导致"手机瘾"这个病更严重了,控制不住,一看就是几小时.去年过年的时候,自己定的第一个目标就是戒掉手机瘾,到 ...

  4. Hive入门(一)

    1 Hive中的数据定义 1.1 存储与创建 Hive会为每个数据库创建一个目录.数据库中的表以子目录的形式存储. 有一个例外是default中的表,因为这个库本身没有目录. 数据库的顶级目录是hiv ...

  5. 从微信小程序开发者工具源码看实现原理(一)- - 小程序架构设计

    使用微信小程序开发已经很长时间了,对小程序开发已经相当熟练了:但是作为一名对技术有追求的前端开发,仅仅熟练掌握小程序的开发感觉还是不够的,我们应该更进一步的去理解其背后实现的原理以及对应的考量,这可能 ...

  6. Java设计模式学习笔记(二) 简单工厂模式

    前言 本篇是设计模式学习笔记的其中一篇文章,如对其他模式有兴趣,可从该地址查找设计模式学习笔记汇总地址 正文开始... 1. 简介 简单工厂模式不属于GoF23中设计模式之一,但在软件开发中应用也较为 ...

  7. C语言学习书籍推荐《C语言程序设计 现代方法(第2版)》下载

    下载地址:点我 C语言仍然是计算机领域的通用语言之一,但现在的C语言已经和当初的时候大不相同了.本书主要的一个目的就是通过一种“现代方法”来介绍C语言,书中强调标准C,强调软件工程,不再强调“手工优化 ...

  8. C语言的指针移动怎么理解

    C Primer pkus(第五版)中文版,老外写的还是很经典的,推荐给朋友们,购买地址:C primer plus 5版中文版购买 另外再推荐本书: 程序员面试宝典(第5版)第五版:程序员面试宝典( ...

  9. 一次线上遇到磁盘IO瓶颈的问题处理

    Load  average %wa    的含义是等待输入输出的CPU时间百分比 结合iostat命令可以发现磁盘已经在100%满负荷在跑 await:每一个IO请求的处理的平均时间(单位是毫秒).这 ...

  10. linux下运行python3出现TypeError: a bytes-like object is required, not 'str'

    目标:用python将中文存入csv,且中文正常显示. 环境:linux,python3 百度N久,方法都不行或是比较复杂. 以上代码用python3运行后,出现TypeError: a bytes- ...