一、前言
- 本篇博客将开发过程中使用到的 Git 的相关功能做个分享,在需要的时候也可以进行查阅,可以通过左下方目录查看具体有哪些功能。随着后续的积累,会不断完善补充该博客。
- 看到博客的各位前辈、大佬,发现问题 或者 有什么意见建议烦请给予点指导哈哈。
二、Git 简介
- Git 是一个分布式版本控制系统
- 【举例解释】 一般我们写一份报告会经过几个版本的调整,在编写过程中可能会存下一下几个问题:
- 问题① 写《Git 简介V 1.0》可能是在自己的 “个人电脑” 上完成的,当想要修改的使用,只能在自己的 “个人电脑” 上打开修改;
- 问题② 写完《Git 简介 V 2.0》时,回头发现《Git 简介 V1.0》的部分内容还是需要,但在2.0时被删除了,想得起来相对好点,费点功夫重新写,想不起来就需要重新构思了。
- 针对以上问题,Git 就很好的帮我们解决了。我们把每次写完的版本提交到 Git 仓库(可以把这个仓库理解成一个网盘),不管在何时何地,只要想到要修改,到 Git 仓库把我们提交的内容拉取(可以理解成从网盘下载到本地)下来,修改完再提交到 Git 仓库,下次再拉去下来就是最新改动的版本,此外Git 会留存每一次的修改内容,方便我们回溯。
- 官网地址,点击这里
- 因为本篇博客主要是记录一些功能,所以具体的安装不做介绍,网上很多前辈、大佬都有分享。
三、功能命令
3.1 将远程代码拉到本地
git fetch
3.2 将远程代码拉到本地,并进行 merge
git pull
3.3 比较两次 commit 之间代码的不同
git diff 32913 32e13
3.4 查看 当前 分支的 commit 数据,不包括已删除
git log
3.5 查看 所有 分支的数据,包括删除的记录
git reflog
3.6 让本地的代码与远程保持一致
git status
git reset --hard origin/romote_branch
3.7 本地与远程冲突 pull 不下来
git stash
git pull
git stash pop
3.8 合并多次提交
git rebase -i head~3
git reabse -i 13e13
* p, pick:使用该次提交
* r,reword:使用该次提交,但重新编辑提交信息
* d,drop:丢掉该commit
* e,edit:使用该次提交,但停止到该次提交
* s,squash:将该commit和前一个commit合并
* f,fixup:将该commit与前一个commit合并,但不保留该提交的注释信息
3.9 改 commit 的描述
git commit --amend
第一步: git rebase -i HEAD~5
第二步: 在编辑框中,将要修改commit的提交内容前面加edit
第三步: git commit --amend
第四步: git rebase --continue