git的简易上手笔记,及常用命令集合
git的底层是数据库,所有数据是以文件方式存储在隐藏的.git目录中(强烈推荐廖雪峰git教程)
工作区(working directory)就是电脑上能看到的目录;
版本库(repository)就是工作区的隐藏目录.git。
暂存区(stage)是git add和git commit之间的部分,git add提交的文件全部储存在stage里。
git管理的是修改,不是文件!
master:默认开发分支 Head:默认开发分支
origin:默认远程版本库 Head^:Head的父提交
git一般工作提交流程:
git branch:确定当前分支没问题
git status:查看文件修改状态(必要时git diff -- “file”查看具体文件修改内容)
git pull:拉取远程代码,注意是否有冲突(拉取不成功时,git stash缓存代码后在拉,git stash pop出缓存代码)
git add <file>:最好单个添加修改文件,防止多余文件添加进去
git commit -m “这里写描述”:把暂存区的所有内容提交到当前分支<一次性提交>
git push:
git绝对会用到的各种撤销操作:
git branch -a :查看远程分支
git merge <branch>:合并分支到当前分支
git branch -D ‘’:强制删除分支,不能删除当前checkout的分支
git push origin :‘’:删除远程分支
git reset HEAD <file>:撤销git add已暂存的文件
git checkout -- <file>:撤销对文件的修改
git reset --hard commit_id:撤销commit日志,git log查看commit日志
git commit --amend:修改最后一次提交
git reset --hard HEAD^:撤销上次提交的所有改动(--hard表示放弃所有本地改动,HEAD最近一个提交,HEAD^上一次提交)
注意:不要为了图方便随意用git stash缓存,分支切来切去容易丢失修改记录,泪的教训...
创建版本库:
git clone <url>:克隆远程版本库(先创建远程仓库,在git clone到本地库)
git init:初始化本地版本库
修改和提交:
git status:查看状态
git diff:查看变更内容
git add .:跟踪所有改动过的文件
git add <file>:跟踪指定的文件
git mv <old> <new>:文件改名
git rm <file>:删除文件
git rm --cached <file>:停止跟踪文件但不删除
git commit -m “commit message”:提交所有更新过的文件
git commit --amend:修改最后一次提交
查看提交历史:
git log:查看提交历史
git log -p <file>:查看指定文件的提交历史
git blame <file>:以列表方式查看指定文件的提交历史
撤销:
git reset --hard HEAD:撤销工作区中所有未提交文件的修改内容
git checkout HEAD <file>:撤销指定的未提交文件的修改内容
git revert <commit>:撤销指定的提交
分支与标签:
git branch:显示所有本地分支
git checkout <branch/tag>:切换到指定分支或标签
git branch <new-branch>:创建新分支
git branch -d <branch>:删除本地分支
git tag:列出所有本地标签
git tag <tagname>:基于最新提交创建标签
git tag -d <tagname>:删除标签
合并与衍合:
git merge <branch>:合并指定分支到当前分支
git rebase <branch>:衍合指定分支到当前分支
远程操作:
git remote -v:查看远程版本库信息
git remote show <remote>:查看指定远程版本库信息
git remote add <remote> <url>:添加远程版本库
git fetch <remote>:从远程库获取代码
git pull <remote> <branch>:拉取代码及合并
git push <remote> <branch>:上传代码及合并
git push <remote> :<branch/tag-name>:删除远程分支或标签
git push --tags:上传所有标签
转载于:https://www.cnblogs.com/kino156/p/6407030.html
git的简易上手笔记,及常用命令集合相关推荐
- Linux自学笔记 | 10 常用命令 - 压缩解压类
Linux自学笔记 | 10 常用命令 - 压缩解压类 Linux自学笔记 | 01 文件系统和目录结构 Linux自学笔记 | 02 VIM编辑器的安装与使用 Linux自学笔记 | 03 Linu ...
- rpm常用命令集合2
提要: RPM 是 Red Hat Package Manager 的缩写,原意是Red Hat 软件包管理:本文介绍RPM,并结合实例来解说RPM手工安装.查询等应用: 正文:RPM包管理的用途: ...
- rpm常用命令集合1
提要:RPM 是 Red Hat Package Manager 的缩写,原意是Red Hat 软件包管理:本文介绍RPM,并结合实例来解说RPM手工安装.查询等应用: 正文:RPM包管理的用途: 1 ...
- android系列:第一篇 android开发常用命令集合,代码目录简介
下面整理了android开发常用命令集合如adb命令,adb over wifi,jgrep等代码搜索命令,编译环境变量配置,lunch平台选择,mm模块编译,godir代码路径跳转,log.v()等 ...
- 数据包构造分析工具Hping3常用命令集合大学霸IT达人
数据包构造分析工具Hping3常用命令集合大学霸IT达人 Hping是一个命令行下使用的TCPIP数据包组装分析工具.该工具的命令模式很像Unix下的ping命令.它不止能发送ICMP回应请求,还支持 ...
- 基于ARP的网络扫描工具netdiscover常用命令集合大学霸IT达人
基于ARP的网络扫描工具netdiscover常用命令集合大学霸IT达人 ARP是将IP地址转化物理地址的网络协议.通过该协议,可以判断某个IP地址是否被使用,从而发现网络中存活的主机.netdisc ...
- 批量探测工具fpingping常用命令集合大学霸IT达人
批量探测工具fpingping常用命令集合大学霸IT达人 批量探测工具fpingping是各个系统自带的基于ICMP协议的主机探测工具.但该工具一次只能检测一个主机,不满足渗透测试批量探测的需要.fp ...
- ARP探测目标工具arping常用命令集合大学霸IT达人
ARP探测目标工具arping常用命令集合大学霸IT达人 ARP协议是一种将IP地址转化物理地址的协议.通过ARP请求包和响应包,可以判断一个IP地址是否在使用.同理,通过该协议可以探测局域网主机是否 ...
- ARP监控工具ARPalert常用命令集合大学霸IT达人
ARP监控工具ARPalert常用命令集合大学霸IT达人 ARP协议用于IP转化为MAC地址.由于ARP协议的缺陷,导致被用于中间人攻击.ARPalert是一款专用的ARP监控工具.该工具可以对网络中 ...
最新文章
- 计算机丢失mfc120u.dll,mfc120u.dll丢失怎么修好
- 我们工作到底为了什么(坚持全篇看完你将受益匪浅)(转)
- 大型机房综合布线图!绝对一流!
- python语句分为复合语句_复合语句if条件的Python求值
- 外设驱动库开发笔记18:MS5837压力变送器驱动
- uva 1401 - Remember the Word
- 在linux中 与 的区别,在linux中,和, |和|| , 与 的区别
- 【Elasticsearch】你看懂 Elasticsearch Log 中的 GC 日志了吗?
- 2120: 数颜色(带修莫队)
- iOS H264编码及解码
- 《老路用得上的商学课16—20》消费心理学(一)
- NIO消息边界问题处理
- 作为开发者你必须要知道的五大浏览器,记得收藏
- pycharm光标变成黑框,恢复成竖线
- 新浪sae部署微信订阅号
- HTML那些可爱的“表情包”
- pink老师JavaScript视频教程笔记
- argparse.ArgumentError: argument --title: conflicting option string: --title
- 在线表格编辑插件handsontable使用
- 平板个人计算机的品牌和配置,十大平板电脑品牌