文章目录

  • 一、前言
  • 二、常用的命令

一、前言

  • 参考安装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不可以用。

  1. cd 改变目录
  2. cd . . 回退到上一个目录,直接cd进入默认目录
  3. start <文件名> 打开文件
  4. cat <文件名> 在命令窗口显示文件内容
  5. vim <文件名> 在命令窗口编辑文件 按“Esc“ 输入“:wq”保存文件 ”:e!"放弃更改
  6. pwd 显示当前所在的目录路径
  7. ls(ll) 都是列出当前目录中的所有文件,只不过ll(两个ll)列出的内容更为详细
  8. touch 新建一个文件 如 touch index.js 就会在当前目录下新建一个index.js文件
  9. rm 删除一个文件, rm index.js 就会把index.js文件删除。
  10. mkdir 新建一个目录,就是新建一个文件夹
  11. rm -r 删除一个文件夹, rm -r src 删除src目录 rm -rf / 切勿在Linux中尝试!删除电脑中全部文件!
  12. mv 移动文件, mv index.html src,index.html 是我们要移动的文件, src 是目标文件夹,当然, 这样写,必须保证文件和目标 文 件夹在同一目录下
  13. reset 重新初始化终端/清屏。
  14. clear 清屏
  15. history 查看命令历史
  16. help 帮助
  17. exit 退出
  18. ‘#’ 表示注释

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的工作原理:工作区,暂存区,本地仓库,远程仓库

专栏速览:

  1. Git使用 从入门到入土 收藏吃灰系列(一) 专栏前言
  2. Git使用 从入门到入土 收藏吃灰系列(二) Git的安装与配置
  3. Git使用 从入门到入土 收藏吃灰系列(三) Git常用命令
  4. Git使用 从入门到入土 收藏吃灰系列(四) Git工作原理
  5. Git使用 从入门到入土 收藏吃灰系列(五) Git本地仓库搭建
  6. Git使用 从入门到入土 收藏吃灰系列(六) 链接远程仓库
  7. Git使用 从入门到入土 收藏吃灰系列 (七) 同时配置Gitee、Github 公钥
  8. Git使用 从入门到入土 收藏吃灰系列 (八) 什么是分支 分支的作用
  9. Git使用 从入门到入土 收藏吃灰系列 (九) git reset 移除暂存区与版本回退
  10. Git使用 从入门到入土 收藏吃灰系列 (十) 详谈push、fetch、pull
  11. Git使用 从入门到入土 收藏吃灰系列 (十一) 下载所有远程仓库分支
  12. Git使用 从入门到入土 收藏吃灰系列 (十二) git merge 与 git rebase
  13. Git使用 从入门到入土 收藏吃灰系列 (十三) git stash、git check-pick、git tag、git diff
  14. Git使用 从入门到入土 收藏吃灰系列 (十四) 清除git仓库的所有提交记录
  15. Git使用 从入门到入土 收藏吃灰系列 (十五) 自定义Git命令
  16. Git使用 (十六) Github上的小按钮
  17. Git使用 (十七) 解决Git Bash中文乱码

Git使用 从入门到入土 收藏吃灰系列(三) Git常用命令相关推荐

  1. Git使用 从入门到入土 收藏吃灰系列 (九) git reset 移除暂存区与版本回退

    文章目录 一.前言 二.Git远程命令实践 2.1git reset 移除暂存区 2.2 git log+git reflog+git reset 版本回退 一.前言 参考安装Git 详细安装教程 参 ...

  2. Git使用 从入门到入土 收藏吃灰系列(四) Git工作原理

    文章目录 一.前言 一.Git基本理论(核心) 1.1工作区 1.2工作流程 一.前言 参考安装Git 详细安装教程 参考视频B站 Git最新教程通俗易懂,这个有点长,感觉讲的精华不多 参考视频『Gi ...

  3. Git使用 从入门到入土 收藏吃灰系列 (十三) git stash、git check-pick、git tag、git diff

    文章目录 一.前言 二.git stash 存储到堆栈 三.Git tag 标签 四.git cherry-pick 挑选合并 五.git diff 本节速览 git stash 堆栈 git tag ...

  4. Git使用 从入门到入土 收藏吃灰系列(六) 链接远程仓库

    文章目录 一.前言 二.使用Gitee链接远程仓库(免密登录) 2.1链接仓库 2.2使用指令上传远程仓库 三.利用GitHub连接远程仓库(免密登录) 一.前言 参考安装Git 详细安装教程 参考视 ...

  5. Git使用 从入门到入土 收藏吃灰系列 (十) 详谈push、fetch、pull

    文章目录 一.前言 二.git push上传新的分支 三.git fetch 拉取远程仓库 四.git pull 拉取远程仓库 本节内容速览 二:git push使用 三:git fetch使用.为什 ...

  6. Git使用 从入门到入土 收藏吃灰系列 (八) 什么是分支 分支的作用

    文章目录 一.前言 二.Git分支 2.1什么是分支? 2.2 分支有什么用? 一.前言 参考安装Git 详细安装教程 参考视频B站 Git最新教程通俗易懂,这个有点长,感觉讲的精华不多 参考视频『G ...

  7. Git使用 从入门到入土 收藏吃灰系列 (十四) 清除git仓库的所有提交记录

    文章目录 一.前言 二.清除git仓库的所有提交记录 本节速览 清除git仓库的所有提交记录 一.前言 参考安装Git 详细安装教程 参考视频B站 Git最新教程通俗易懂,这个有点长,感觉讲的精华不多 ...

  8. 一个命令让redis服务端所有信息无所遁形~(收藏吃灰系列)

    1.info命令作用 在redis客户端执行INFO 命令以便于计算机解析和人工阅读的简单格式返回有关redis服务端的所有信息和统计数据. 可选参数可用于选择特定的信息部分: Server 服务器基 ...

  9. 最新版Zookeeper常用命令总结(收藏吃灰系列)

    1.服务端常用命令 在完成zookeeper的伪集群部署之后(部署教程参考linux上部署最新版本zookeeper伪分布式集群),可在bin目录下执行这些命令 启动ZK服务: bin/zkServe ...

最新文章

  1. 阿里公开招募鉴黄师,日薪1000元,还送硬盘和网盘会员?!
  2. ThinkPHP关联模型详解
  3. winsock I/O模型
  4. 三星S4接电话黑屏无法挂断通话
  5. [bzoj1088]扫雷
  6. 学习Python,在人工智能的风口抢占未来
  7. 派单o2o全开源版 v11.6.0 全新UI版 修复短信问题 小程序模块
  8. MakeItTalk:Adobe 语音驱动的头部动画
  9. kaggle房价预测最热解析
  10. enum class
  11. ZOJ 3527 Shinryaku! Kero Musume 【树形DP[带简单环]】
  12. 计算机用固态硬盘无法启动不了,新固态硬盘装完系统无法进入解决教程
  13. 试题 基础练习 特殊回文数
  14. 使用 JDBC 连接不同版本 DB2 数据库的兼容性问题
  15. 独孤求败姜贵昌,铁拳无敌姜万福
  16. rust倒地了怎么起来_ggxx出招表
  17. vios接口虚拟服务器,虚拟VIOS服务器安装手册V1.0
  18. Android 点击图片全屏预览 -——ZoomPreviewPicture默认预览使用
  19. 推荐几个检索论文及代码的网站
  20. 服务器合租速度的决定因素

热门文章

  1. sqli-lab的小白菜通关大合集
  2. 计算机维护方面的知识和技巧,电脑系统维护小常识有哪些 四大维护电脑的技巧推荐...
  3. .ccx插件如何安装到ps 2023里
  4. 多元线性回归LinearRegression
  5. 【C语言】Hellow World的多种输出写法
  6. c语言程序设计樱花,Qt实现樱花飞舞效果
  7. 基于stm32的俄罗斯方块游戏机(4、俄罗斯方块基本规则函数)(大三寒假)
  8. 弘辽科技:拼多多改销量会降权吗?什么情况下会降权?
  9. 为什么面试总倒在复试上?
  10. 最新某猪CMS(PigCMS)多用户微信营销系统全能版