目前我用的比较多的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. Java 内存泄漏知多少?

    先看再点赞,给自己一点思考的时间,如果对自己有帮助,微信搜索[程序职场]关注这个执着的职场程序员.我有什么:职场规划指导,技能提升方法,讲不完的职场故事,个人成长经验. 面试的时候内存管理是不是很多面 ...

  2. NTFS安全权限

    一.NTFS权限概述 1.通过设置NTFS权限,实现不同的用户访问不同的对象的权限 2.分配了真确的访问权限后,用户才能访问其资源 3.设置权限防止资源被篡改.删除 二.文件系统概述 文件系统即在外部 ...

  3. ArchLinux安装步骤(一)

    本文为安装archlinux的教程,需要有硬盘分区,挂载等基础linux命令的了解还有vim的基本操作,不知道也没关系,这里有大神的视频教程ArchLinux指南. 确实是不是uefi模式 ls /s ...

  4. Kubernetes 1.13.3 部署 Prometheus+Grafana-7.5.2(最新版本踩坑)

    本教程直接在 Kubernetes 1.13.3 版本上安装 Prometheus 和 Grafana-7.5.2,至于它们的原理和概念就不再赘述,这里就直接开始操作. Git 下载相关 YAML 文 ...

  5. Python使用笔记27--mysql操作封装类

    1.面向过程 1 import pymysql 2 3 #面向过程 4 mysql_info = {'host':'127.0.0.1', 5 'port':3306, 6 'user':'root' ...

  6. C语言:printf标志符

    %d 十进制整数 %i %lf双精度浮点数 %o八进制整数  0%o或0%O %x十六进制整数  0x%x 或  0X%X %f单精度浮点数 %E  %e科学计数法 %s  字符串 %c  字符(单个 ...

  7. Python+Requests+Re(正则)爬取某糗事百科图片(数据分析一)

    1.博客目前在学习爬虫课程,使用正则表达式来爬取网页的图片信息 2.下面我们一起来回归下Python中的正则使用方式/方法 3.糗事百科图片爬取源码如下: import requestsimport ...

  8. 【动态规划DP】[USACO16OPEN]248

    题目描述 Bessie likes downloading games to play on her cell phone, even though she doesfind the small to ...

  9. Python基础之读写xml总结

    参考文章:https://blog.csdn.net/weixin_42749767/article/details/82770563 先介绍xml.dom.minidom包,有一个读写的例子 rea ...

  10. 2021最新Java基础知总结,助力大厂offer

    本文是我花了三周时间整理出来的,希望对Java初学者有帮助~ Java概述 Java的特点 Java是一门面向对象的编程语言.面向对象和面向过程是一种软件开发思想. 面向过程就是分析出解决问题所需要的 ...