IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> 闭关修炼之git会这些就够用了 -> 正文阅读

[开发工具]闭关修炼之git会这些就够用了

简单的前言:生病赋闲在家,无事写点东西。

git是什么?

git:分布式版本控制
那么版本控制有什么作用呢?
作用大致有以下几种:

  • 将项目中某个文件恢复到之前任意版本
  • 整个项目恢复到之前任意版本
  • 比较各个版本之间差异
  • 查看最近出现的bug是谁提交代码导致
  • 当然还有一个作用就是协同开发

git的哪个概念是最重要的?

首先思考一个问题:git的哪个概念是最重要的?
我个人认为是commit,之所以说commit是最重要的,是因为所有概念都是围绕它来展开的,比如分支它仅仅是commit序列的集合载体,而在执行merge的时候,也是针对一个个commit进行合并;执行reset时,也是reset至某个commit;而rebase它的base指的就是commit,所以commit就是git中最核心的概念。
每一个commit会生成一个哈希值,这个值是唯一的,即commit_id

git常用操作

初始化

  • git init [项目名] -->创建一个新的本地代码库
  • git config --global user.name “your name” -->设置你的名字,将会被加到commit和tags中
  • git config --global user.email “your email” -->设置你的邮箱地址,将会被加到commit和tags中

本地操作

  • git add [file] -->将文件保存到暂存区(变绿
  • git add . -->将所有文件保存到暂存区(变绿
  • git commit -->将暂存区的修改保存到代码库(保存文件夹此时的快照到本地git仓库)(只提交那些已经绿了的文件)
  • git status -->查看当前状态,列出所有新修改、暂存区文件修改情况
  • git log -->显示所有commit记录
  • git reset --hard commit_id -->回滚版本
  • git diff [file] -->查看工作区和暂存区差别
    在这里插入图片描述
  • git rm [file] -->删除工作区和暂存区的文件
  • git reflog -->记录你所有操作记录
  • git checkout --[file] -->把工作区修改撤销掉
  • git reset HEAD [file] -->把暂存区修改撤销掉
  • git stash -->将工作区修改内容保存到贮藏区
  • git stash pop -->将贮藏区内容恢复到工作区
  • git tag -->列出代码库中所有的tag
  • git tag --a <版本号> -m message -->新增一个版本号

分支操作

  • git branch -a -->列出当地所有分支
  • git switch -c [name] -->创建一个新的name的分支
  • git switch [name] -->切换分支
  • git merge [from name] -->将name分支与当前分支合并
  • git branch -d [name] -->删除name分支
    在这里插入图片描述

远程操作

  • git clone [项目url] -->从远程代码库下载整个代码库和历史记录
  • git remote add -->链接一个远程库
  • git fetch -->从远程代码库下载所有变动
  • git pull -->从远程库拉取代码并将当前分支和他的upstream merge
  • git push [remote] [branch] -->将当前代码库推送到远程remote库的branch分支

常用工作流

  • Centralized Workflow(集中式工作流)–>大家都在master上搞开发

  • Feature Branch Workflow(功能分支工作流)–>为新feature创建branch
    在这里插入图片描述

  • Git Flow Workflow -->发布分支(release)、功能分支(feature)都从开发分支(develop)上创建,修复分支(hotfix)从主分支(master)上创建
    在这里插入图片描述

总结

在这里插入图片描述

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-03-03 16:35:43  更:2022-03-03 16:37:01 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 6:42:53-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码