目前我用的比较多的git指令

git clone -b [branch-name]: 拉取远程指定分支代码

git status: 查看工作区修改状态

在将修改添加进暂存区的时候需要git add . 将修改记录添加到git中

git stash -m "message" push [file-list] : 添加暂存信息, 便于以后知道自己当初存了个啥

git stash list: 查看暂存区列表

git stash [push] [pop] [file-name,file-name1, file-name2...]: 暂存修改

git clear [index]: 清空暂存区, 清空指定

git暂存指定文件指令:git stash push file1 file2 file3 file4 ...(file1、file2、file3的路径为git status显示出来的路径)

后面stash@{0}: 里的 {0} 表示是暂存区中位置, 后面跟着是暂存信息, 通过-m添加message得到

git stash clear

git stash create []

git merge [branch-name]: 将branch-name指向的分支合并到当前分支

注意: 合并之前需要先更新另一个分支上的记录: git pull

如果不想新的修改影响到切换到的新分支, 需要stash暂存修改记录.

如果暂存之后想恢复的话可以git pop指定stash记录, 不过务必记得pop, 要不然stash存一堆东西不知道是啥

合并之后如果有冲突一定要解决冲突

如果不想因为merge影响其他分支的话, 可以git checkout -b branch-name创建一个新的分支, 然后在新的分支上进行合并, 处理不好分支的话那就直接把分支删了重新拉, 当然对于大佬来说肯定有好办法

注意: 合并代码一定要在本地合并然后验证一下合并结果没有问题之后再提MR, 虽然Gitlab, Github上会检查MR是否合理, 但是在本地验证通过的话想必会更好

git reset: 撤销本地commit

git撤销Commit:git reset --soft HEAD^

--soft:撤销commit, 但是 git add . 不撤销

--hard:撤销commit, 以及 git add . 恢复到上一次提交状态,会删除工作空间的代码,谨慎操作!!!

HEAD^:回退上一个commit,也可以写成HEAD~1,如果有多个commit要撤销,那么使用HEAD~N,再配合--soft或者--hard

如果使用git reset HEAD~N(或者HEAD^)--hard撤销commit记录时(--soft也适用),我反悔了怎么办? 可以通过git reflog [commit-id]

单纯使用git reflog时,可以查看当前所有动作(commit、checkout、reset、pull、push等)且会带着commit-id。

通过git reflog commit-id可以撤回当前reset的记录【三十天内有效】

git修改message:git commit --amend,会自动进入message编辑

git show commit_id:显示commit_id指向的提交记录信息

git branch -d branch-name : 删除分支(-D 强制删除)

git pull: 拉取远程仓库代码以更新本地代码

git rebase: 变基还不会用, 大佬教教我

GIT-版本管理-初阶使用的更多相关文章

  1. Git 版本管理的简单理解

    来源:百度知道 现在使用Git版本管理代码的项目非常多.但是Git本身是一条复杂的系统.我从几个简单的点来说明Git的基本功能.希望能帮助初学者快速入门. 工具/原料   Git code dot j ...

  2. GIT版本管理工具

    原文:http://blog.csdn.net/ithomer/article/details/7527877 Git 是一个分布式版本控制工具,它的作者 Linus Torvalds 是这样给我们介 ...

  3. Nodejs初阶之express

    PS: 2014/09/24 更新<Express 4.X 启航指南>,欢迎阅读和评论:)   老规矩,开头部分都是些自娱自乐的随想,想到哪写到哪... 到今天俺已经在俺厂工作俩年零几天了 ...

  4. R语言实战(一)介绍、数据集与图形初阶

    本文对应<R语言实战>前3章,因为里面大部分内容已经比较熟悉,所以在这里只是起一个索引的作用. 第1章       R语言介绍 获取帮助函数 help(), ? 查看函数帮助 exampl ...

  5. 平衡树初阶——AVL平衡二叉查找树+三大平衡树(Treap + Splay + SBT)模板【超详解】

    平衡树初阶——AVL平衡二叉查找树 一.什么是二叉树 1. 什么是树. 计算机科学里面的树本质是一个树状图.树首先是一个有向无环图,由根节点指向子结点.但是不严格的说,我们也研究无向树.所谓无向树就是 ...

  6. git学习——<四>git版本管理

    一.git版本管理的优势 都说git比svn强大,强大在哪呢? 首先,从部署上说:svn.cvs都是集中式的,一台服务器上部署服务,所有客户端编写的代码都要提交到该服务器上.git是分布式的,所有人都 ...

  7. 重温ASP.NET WebAPI(一)初阶

    重温ASP.NET WebAPI(一)初阶   前言 本文为个人对WebApi的回顾无参考价值.主要简单介绍WEB api和webapi项目的基本结构,并创建简单地webaapi项目实现CRUD操作. ...

  8. Git——版本管理工具(一)

    Git 是一个分布式版本控制工具,它的作者 Linus Torvalds 是这样给我们介绍 Git  —— The stupid content tracker(傻瓜式的内容跟踪器) 1. Git 背 ...

  9. Git 版本管理工具(一)

    转自:http://blog.csdn.net/ithomer/article/details/7527877 Git 是一个分布式版本控制工具,它的作者 Linus Torvalds 是这样给我们介 ...

  10. GIT版本管理工具教程

    目录 GIT版本管理工具教程 一 Git初始化 二 简单指令使用 基本操作 简单总结 三 Git进阶 Git三大区域 Git回滚 Git分支 Git工作流 四 Github代码管理仓库 第一步:注册G ...

随机推荐

  1. 元素类型为 "configuration" 的内容必须匹配 "(properties?,settings?,typeAliases?,typeHandlers?

    报错主要部分如下: Error building SqlSession.### Cause: org.apache.ibatis.builder.BuilderException: Error cre ...

  2. 数据源连接数据库配置相关xml文件

    学完数据源连接数据后,做个笔记,当我们的程序对数据库访问频繁时,为了提高程序运行效率,我们可以通过 数据源连接数据库,从数据库连接池中直接取得出于空闲状态的数据库连接对象,以下是相关xml文件的配置: ...

  3. String、StringBuilder和StringBuffer的比较

    目录 1.String特性 1.1 不可变 1.2 字符串常量池 2.StringBuilder和StringBuffer 2.1 区别 2.2 应用场景 1.String特性 1.1 不可变 它是I ...

  4. 腾讯云短信详细教程(C#,WinForm)

    1.申请一个微信公众号(申请公众号是准备工作的第一步,必须先完成)(那为什么要用公众号呢?是因为这个条件对于学生党来说比较简单实现,不需要本人有上市的APP或是网站等) 2.百度搜索"腾讯云 ...

  5. 【网络IO系列】 预备知识 操作系统之内核程序和用户程序

    一.概念 首先我们先来复习一下操作系统的概念和作用 操作系统是用户和硬件之间的一层媒介程序,为上提供编程接口,为下调用资源,管理驱动,以使用硬件. 从以上的表述我们可以看出OS的两点作用,第一个是对下 ...

  6. Django基础07篇 ORM操作

    1.新增(类似数据库操作的insert) # 新增 #方式一: models.Category.objects.create(name='MySQL') #方式二: c = models.Catego ...

  7. 小刻也能看懂的Unraid系统使用手册:基础篇

    小刻也能看懂的Unraid系统使用手册 基础篇 Unraid系统简介 Unraid 的本体其实是 Linux,它主要安装在 NAS 和 All in One 服务器上,经常可以在 Linus 的视频里 ...

  8. Modelsim波形显示字符

    偶然在 QQ 群里看到一个大佬发的 Modelsim 波形显示字符,闲着没事拿来玩玩,并将改良过程也整理一下. 一.字符点阵产生 软件采用 PCtoLCD2002,打开后不需要设置,直接打字然后点击[ ...

  9. springMVC-3-获取参数

    RequestMapping修饰类 源码: 根据源码可以知道,requestmapping既可以修饰方法也可以修饰类 @Target({ElementType.METHOD, ElementType. ...

  10. (opencv01)读入图像

    (opencv01)Opencv之读入图像 读入图像  img = cv2.imread(filepath, flags) filepath : 要读入图片的完整路径 flags : 读入图片的标志 ...