Git使用 从入门到入土 收藏吃灰系列(三) Git常用命令
文章目录
- 一、前言
- 二、常用的命令
一、前言
- 参考安装Git 详细安装教程
- 参考视频B站 Git最新教程通俗易懂,这个有点长,感觉讲的精华不多
- 参考视频『Git』知道这些就够了_哔哩哔哩_bilibili,这个精华多,推荐看这个
- 参考视频7小时学会Git 基础全套完整教程(从入门到精通)_哔哩哔哩_bilibili,这个虽然长,但是他偏实践,对小白友好,特别有意思
- 附一个Git动画学习网站
- Git教程 - 廖雪峰的官方网站 (liaoxuefeng.com)
讲讲小张的感受:我没有接触过Git
,所以看了很多视频,对于入门使用确实只要知道git clone
,git add
,git commit
,git push
,git merge
,确实也就足够了。但是我很好奇背后的原理,为什么要用git add
到暂存区而不是直接git commit
?很多指令之间为什么要按一定的顺序执行?所以这个系列我以初学的时候,小白的角度从安装到工作原理(有的是我自己的见解,如果感觉不对,欢迎指正),再到实际应用!另外,推荐看一遍第三个参考视频,然后看一下第四个参考视频,对工作原理的讲解和实际应用确实不错!
二、常用的命令
先把命令放在这里了,不需要看懂。后面会实践,看不懂回来查看。
2.1Linux命令
平时一定要多使用!这些可以直接在Git Bush Here中使用。CMD不可以用。
- cd 改变目录
- cd . . 回退到上一个目录,直接cd进入默认目录
- start <文件名> 打开文件
- cat <文件名> 在命令窗口显示文件内容
- vim <文件名> 在命令窗口编辑文件 按“Esc“ 输入“:wq”保存文件 ”:e!"放弃更改
- pwd 显示当前所在的目录路径
- ls(ll) 都是列出当前目录中的所有文件,只不过ll(两个ll)列出的内容更为详细
- touch 新建一个文件 如 touch index.js 就会在当前目录下新建一个index.js文件
- rm 删除一个文件, rm index.js 就会把index.js文件删除。
- mkdir 新建一个目录,就是新建一个文件夹
- rm -r 删除一个文件夹, rm -r src 删除src目录 rm -rf / 切勿在Linux中尝试!删除电脑中全部文件!
- mv 移动文件, mv index.html src,index.html 是我们要移动的文件, src 是目标文件夹,当然, 这样写,必须保证文件和目标 文 件夹在同一目录下
- reset 重新初始化终端/清屏。
- clear 清屏
- history 查看命令历史
- help 帮助
- exit 退出
- ‘#’ 表示注释
2.2常用的git命令
结合图片记忆基本的命令!
通常提交一个记录只需要依次执行git add .
,git commit
,git push
。操作都是对当前分支有效,加origin
就可以指定分支。
# 添加所有文件到暂存区
git add . # 添加指定文件到暂存区
git add <filename># 提交暂存区中的内容到本地仓库
git commit -m #"消息内容" -m 代表提交信息# 将当前分支push到远程(远程存在该分支)
git push# 将xxx分支推到远程上,因为远程上没有这个新的xxx分支,所以要加-u。第一次将新分支提交到远程上时需要加-u
git push origin xxx
git push -u origin xxx # 效果相同
git push --set-stream origin xxx # 效果相同# 将远程主机的最新内容拉到本地,不进行合并
git fetch# 将远程主机指定分支最新内容拉到本地,不进行合并
git fetch <远程主机名 默认是origin> <分支名># 将远程主机的最新内容拉到本地,与当前本地分支直接合并(仅是当前分支) 等于fetch+merge
git pull
git pull origin <branchName> # 指定分支
其它常用命令
# 克隆
git clone#查看所有文件状态
git status#查看指定文件状态
git status <filename># 列出所有本地分支
git branch# 列出所有远程分支
git branch -r# 新建一个分支,但依然停留在当前分支
git branch <branch-name># 新建一个分支,并切换到该分支
git checkout -b <branch-name># 切换到别的分支/记录
git checkout <branch-name># 合并指定分支到当前分支
git merge <branch-name># 合并远程分支到当前分支
git merge origin <远程分支># 删除分支
git branch -d <branch-name># 删除远程分支
git push origin --delete <branch-name>
git branch -dr <remote/branch># 变基 按提交顺序合并指定分支到当前分支
git rebase # 变基 整合提交记录到一条
git rebase -i <哈希值>
git rebase HEAD~数字 #从当前记录到前x个记录合并# 将添加到暂存区的文件移出
git reset <filename># 恢复已删除的文件
git reset <哈希值>--hard# 将所有未提交的修改(工作区和暂存区)保存至堆栈中
git stash# "挑拣"提交
git cherry pick
git log
# 查看提交记录
git log# 查看提交记录 展开显示每次提交的内容差异
git log -p# 查看远程提交记录与本地差异(必须先git fetch 拉取)
git log -p FETCH_HEAD# 图形化记录
git log --graph# 简化的图形记录
git log --graph --pretty=format:"%h %s"
git log --graph --oneline# 查看 dev 有,而 master 中没有的
git log dev ^master # 查看 dev 中比 master 中多提交了哪些内容
git log master..dev# 不知道谁提交的多谁提交的少,单纯想知道有什么不一样
git log dev...master# 查看所有记录,包括已删除的文件
git reflog
git diff
用来比较文件之间的不同
# 当工作区有改动,暂存区为空,diff的对比是"工作区与最后一次commit提交的仓库的所有文件";
# 当工作区有改动,暂存区不为空,diff对比的是"工作区与暂存区的所有文件"。
git diff
git diff <filename> # 指定文件# 显示暂存区(已add但未commit文件)和最后一次commit(HEAD)之间的所有不相同文件的增删改
git diff --cached
git diff --staged# 比较暂存区和工作区最后一次提交的差别
git diff HEAD
git diff HEAD <filename> # 指定文件
git diff <哈希值> <filename> # 指定某一次提交# 查看最近一次提交的版本与往过去时间线前数X个的版本之间的所有同git diff HEAD中定义文件之间的增删改
git diff HEAD~X
git diff HEAD^^^…(后面有X个^符号,X为正整数)# 比较两个分支上最后 commit 的内容的差别
git diff <branch-Name1> <branch-Name2>
git diff <origin/branch-Name1> <branch-Name2> #比较远程分支与本地分支
git diff <branch-Name1> <branch-Name2> --stat # 显示简略内容
git tag
用来建立标签
# 创建本地tag
git tag <tagName>
git tag -a <tagname> -m "XXX..." # 指定标签信息# 推送到远程仓库
git push origin <tagName># 本地有多条tag,一次推送全部
git push origin --tags# 切换标签 切换后,分支置空
git checkout <tagName># 查看本地某个 tag 的详细信息
git show <tagName># 查看本地所有 tag
git tag
git tag -l# 查看远程所有 tag
git ls-remote --tags origin# 本地 tag 的删除
git tag -d <tagName># 远程 tag 的删除
git push origin --delete tag <tagName>
下期介绍Git的工作原理:工作区,暂存区,本地仓库,远程仓库
专栏速览:
- Git使用 从入门到入土 收藏吃灰系列(一) 专栏前言
- Git使用 从入门到入土 收藏吃灰系列(二) Git的安装与配置
- Git使用 从入门到入土 收藏吃灰系列(三) Git常用命令
- Git使用 从入门到入土 收藏吃灰系列(四) Git工作原理
- Git使用 从入门到入土 收藏吃灰系列(五) Git本地仓库搭建
- Git使用 从入门到入土 收藏吃灰系列(六) 链接远程仓库
- Git使用 从入门到入土 收藏吃灰系列 (七) 同时配置Gitee、Github 公钥
- Git使用 从入门到入土 收藏吃灰系列 (八) 什么是分支 分支的作用
- Git使用 从入门到入土 收藏吃灰系列 (九) git reset 移除暂存区与版本回退
- Git使用 从入门到入土 收藏吃灰系列 (十) 详谈push、fetch、pull
- Git使用 从入门到入土 收藏吃灰系列 (十一) 下载所有远程仓库分支
- Git使用 从入门到入土 收藏吃灰系列 (十二) git merge 与 git rebase
- Git使用 从入门到入土 收藏吃灰系列 (十三) git stash、git check-pick、git tag、git diff
- Git使用 从入门到入土 收藏吃灰系列 (十四) 清除git仓库的所有提交记录
- Git使用 从入门到入土 收藏吃灰系列 (十五) 自定义Git命令
- Git使用 (十六) Github上的小按钮
- Git使用 (十七) 解决Git Bash中文乱码
Git使用 从入门到入土 收藏吃灰系列(三) Git常用命令相关推荐
- Git使用 从入门到入土 收藏吃灰系列 (九) git reset 移除暂存区与版本回退
文章目录 一.前言 二.Git远程命令实践 2.1git reset 移除暂存区 2.2 git log+git reflog+git reset 版本回退 一.前言 参考安装Git 详细安装教程 参 ...
- Git使用 从入门到入土 收藏吃灰系列(四) Git工作原理
文章目录 一.前言 一.Git基本理论(核心) 1.1工作区 1.2工作流程 一.前言 参考安装Git 详细安装教程 参考视频B站 Git最新教程通俗易懂,这个有点长,感觉讲的精华不多 参考视频『Gi ...
- Git使用 从入门到入土 收藏吃灰系列 (十三) git stash、git check-pick、git tag、git diff
文章目录 一.前言 二.git stash 存储到堆栈 三.Git tag 标签 四.git cherry-pick 挑选合并 五.git diff 本节速览 git stash 堆栈 git tag ...
- Git使用 从入门到入土 收藏吃灰系列(六) 链接远程仓库
文章目录 一.前言 二.使用Gitee链接远程仓库(免密登录) 2.1链接仓库 2.2使用指令上传远程仓库 三.利用GitHub连接远程仓库(免密登录) 一.前言 参考安装Git 详细安装教程 参考视 ...
- Git使用 从入门到入土 收藏吃灰系列 (十) 详谈push、fetch、pull
文章目录 一.前言 二.git push上传新的分支 三.git fetch 拉取远程仓库 四.git pull 拉取远程仓库 本节内容速览 二:git push使用 三:git fetch使用.为什 ...
- Git使用 从入门到入土 收藏吃灰系列 (八) 什么是分支 分支的作用
文章目录 一.前言 二.Git分支 2.1什么是分支? 2.2 分支有什么用? 一.前言 参考安装Git 详细安装教程 参考视频B站 Git最新教程通俗易懂,这个有点长,感觉讲的精华不多 参考视频『G ...
- Git使用 从入门到入土 收藏吃灰系列 (十四) 清除git仓库的所有提交记录
文章目录 一.前言 二.清除git仓库的所有提交记录 本节速览 清除git仓库的所有提交记录 一.前言 参考安装Git 详细安装教程 参考视频B站 Git最新教程通俗易懂,这个有点长,感觉讲的精华不多 ...
- 一个命令让redis服务端所有信息无所遁形~(收藏吃灰系列)
1.info命令作用 在redis客户端执行INFO 命令以便于计算机解析和人工阅读的简单格式返回有关redis服务端的所有信息和统计数据. 可选参数可用于选择特定的信息部分: Server 服务器基 ...
- 最新版Zookeeper常用命令总结(收藏吃灰系列)
1.服务端常用命令 在完成zookeeper的伪集群部署之后(部署教程参考linux上部署最新版本zookeeper伪分布式集群),可在bin目录下执行这些命令 启动ZK服务: bin/zkServe ...
最新文章
- 阿里公开招募鉴黄师,日薪1000元,还送硬盘和网盘会员?!
- ThinkPHP关联模型详解
- winsock I/O模型
- 三星S4接电话黑屏无法挂断通话
- [bzoj1088]扫雷
- 学习Python,在人工智能的风口抢占未来
- 派单o2o全开源版 v11.6.0 全新UI版 修复短信问题 小程序模块
- MakeItTalk:Adobe 语音驱动的头部动画
- kaggle房价预测最热解析
- enum class
- ZOJ 3527 Shinryaku! Kero Musume 【树形DP[带简单环]】
- 计算机用固态硬盘无法启动不了,新固态硬盘装完系统无法进入解决教程
- 试题 基础练习 特殊回文数
- 使用 JDBC 连接不同版本 DB2 数据库的兼容性问题
- 独孤求败姜贵昌,铁拳无敌姜万福
- rust倒地了怎么起来_ggxx出招表
- vios接口虚拟服务器,虚拟VIOS服务器安装手册V1.0
- Android 点击图片全屏预览 -——ZoomPreviewPicture默认预览使用
- 推荐几个检索论文及代码的网站
- 服务器合租速度的决定因素
热门文章
- sqli-lab的小白菜通关大合集
- 计算机维护方面的知识和技巧,电脑系统维护小常识有哪些 四大维护电脑的技巧推荐...
- .ccx插件如何安装到ps 2023里
- 多元线性回归LinearRegression
- 【C语言】Hellow World的多种输出写法
- c语言程序设计樱花,Qt实现樱花飞舞效果
- 基于stm32的俄罗斯方块游戏机(4、俄罗斯方块基本规则函数)(大三寒假)
- 弘辽科技:拼多多改销量会降权吗?什么情况下会降权?
- 为什么面试总倒在复试上?
- 最新某猪CMS(PigCMS)多用户微信营销系统全能版