【编程笔记】学会使用 Git

目录

  • 一、介绍 Git
  • 二、安装 Git
  • 三、 常用 linux 目录
  • 四、Git 的必要配置
    • (1) 查看和删除之前的配置
    • (2) 配置 Git
  • 五、Git 基本理论
  • 六、Git 项目搭建
  • 七、Git 文件操作
  • 八、分支
  • Git 笔记 ❀❀❀
    • (1) 常规使用
    • (2) 分支

一、介绍 Git

📖 VCS:Version Control System 版本控制系统
📖 多人开发必用版本控制
📖 版本控制工具: GitSVN、CVS、VSS、TFS
📖 分布式版本控制系统(Git):可立即看到代码的改变
📖 集中式版本控制系统(SVN):需要中央服务器

📖 Linus 两周写完 Git 代码的核心

在这里插入图片描述

二、安装 Git

📖 英文:https://git-scm.com/
📖 https://git-scm.com/download/win

📖 中文:https://git.p2hp.com/

📖 卸载 Git:
① 删除环境变量
② 控制面板 - 程序 - 删除

📖 通过【next】按钮安装
在这里插入图片描述
📖 Git 环境变量安装的时候配置好的(无需自己配置)
在这里插入图片描述

三、 常用 linux 目录

💡 cd
💡 cd …
💡 pwd
💡 ls
💡 ll
💡 touch:新建文件
💡 rm:删除文件
💡 mkdir:新建一个目录
💡 rm -r: 删除一个文件夹
💡 mv:移动文件
💡 reset
💡 clear: 在 Windows 中是 cls
💡 history: 查看历史命令
💡 help
💡 exit

四、Git 的必要配置

(1) 查看和删除之前的配置

# 查看 git 全部可配置项
git config -l

在这里插入图片描述


# 查看系统 git 配置(系统对 git 的配置)
git config --system --list

在这里插入图片描述


# 查看用户对 git 的配置
git config --global --list

在这里插入图片描述


全部的配置都是写在本地(电脑)的一个配置文件上
linux 中配置文件在 etc 目录下
在这里插入图片描述

系统配置:Git 安装目录下的 etc 目录下的 gitconfig 文件夹存有系统配置项

在这里插入图片描述

全局配置:
在这里插入图片描述

(2) 配置 Git

git config --global user.name "ZhangGuoQing"
git config --global user.email "3665668856@qq.com"

在这里插入图片描述

五、Git 基本理论

🎄 Git 本地有三个工作区:工作目录(Working Directory)暂存区(Stage/Index)资源区(Repository / Git Directory)

🎄 Working Directory: 平时存放项目代码的地方
🎄 Stage / Index: 临时存放你的改动(事实上就是一个文件,保存即将提交到文件列表的信息)
🎄 Repository(本地仓库):安全存放数据的位置,此处有我们提交的全部版本的数据(其中 HEAD 指向最新放入仓库的版本

远程 Git 仓库

在这里插入图片描述

暂存区和本地仓库是在 .git 文件夹下,它是个隐藏文件夹


Git 工作流程:

① 在工作目录中 添加、修改、删除 文件
② 将需要版本控制的文件放入暂存区
③ 将暂存区的文件提交到本地仓库,进而提交到远程仓库

git 管理的文件有三种状态:
① 已修改(modified)
② 已暂存(staged)
③ 已提交(committed)

六、Git 项目搭建

在这里插入图片描述

🎈 创建全新的本地仓库

git init

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


🎈 克隆远程仓库 把远程代码拷贝到本地

git clone [url]

url 是远程仓库的地址(该地址来自于 Gitee 或 GitHub)

git clone https://gitee.com/whongbin/snowflakes_fall.git

在这里插入图片描述
在这里插入图片描述

七、Git 文件操作

文件有四种状态:
🎨 ① Untracked(未跟踪):此文件在文件夹中,但并没有假到 git 库,不参与版本控制。通过 git add 命令可把该文件的状态修改为 Staged

新创建的文件,处于该状态。执行 git add 可将其存入暂存区

🎨 ② Unmodify:文件已入库,未修改。版本库中的文件快照与本地文件夹中完全一致。
此种文件有2种去处:如果它被修改,则变为 Modified;如果使用 git rm 将其移出版本库,则它的状态修改为 Untracked

🎨 ③ Modified:文件已修改,仅仅是修改并未进行其他操作。此种文件有两种去路:

git add 进入暂存状态 Staged
git checkout 丢弃修改过的文件,返回到 Unmodify 状态【git checkout 从库中取出文件,覆盖当前修改】

🎨 ④ Staged:暂存状态。执行 git commit 将修改同步到库中,此时库中的文件和本地文件一致,文件为 Unmodify 状态【执行 git reset HEAD filename 取消暂存,文件状态变为 Modified】


查看当前文件夹中全部文件的状态

git status

在这里插入图片描述


在这里插入图片描述
在这里插入图片描述


在这里插入图片描述

在这里插入图片描述

八、分支


Git 笔记 ❀❀❀

(1) 常规使用

在这里插入图片描述
git init
git add .
git commit -m
git push
git --version
clear

git status: 查看工作区文件和暂存区文件的状态

git log: 查看操作日志(时间由近至远)
git log --pretty=oneline
git log --oneline
git reflog

git reset --hard 67c89: 前进或后退历史版本
hard: 暂存区、工作区和本地库同步发生改变
mixed:暂存区和本地库同步改变,工作区不发生改变
soft:本地库发生改变,但暂存区和工作区都不发生改变

找回本地库或暂存区删除的文件: git reset --hard 67c89: 前进或后退历史版本

git diff [filename]:比较工作区和暂存区文件差异
git diff HEAD filename: 比较暂存区和本地库文件差异
git diff de5t6 filename: 比较暂存区和本地库文件差异


(2) 分支

在这里插入图片描述

# 查看全部分支
git branch -v

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/502506.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

第六讲 B+树索引

1 B树大家庭 有一种称为 B 树的特定数据结构,人们还使用该术语来泛指一类平衡树数据结构: B-Tree (1971)BTree (1973)B*Tree (1977?)B link-Tree (1981)Bε-Tree (2003)Bw-Tree (2013) 2 B树 BTree 是一种自平衡【self-balance】、有序【ordered】的…

JavaEE 初阶篇-深入了解多线程安全问题(出现线程不安全的原因与解决线程不安全的方法)

🔥博客主页: 【小扳_-CSDN博客】 ❤感谢大家点赞👍收藏⭐评论✍ 文章目录 1.0 多线程安全问题概述 1.1 线程不安全的实际例子 2.0 出现线程不安全的原因 2.1 线程在系统中是随机调度且抢占式执行的模式 2.2 多个线程同时修改同一个变量 2.3 线…

C语言-编译和链接

目录 1.前言2.编译2.1预处理(预编译)2.1.1 #define 定义常量2.1.2 #define 定义宏2.1.3带有副作用的宏参数2.1.4宏替换规则2.1.5 #和##2.1.5.1 #运算符2.1.5.2 ## 运算符 2.1.6 命名约定2.1.7 #undef2.1.8 条件编译2.1.9 头文件的包含2.1.9.1 本地文件包…

基于RIP的MGRE综合实验

实验拓扑: 实验要求: 1、R5为ISP,只能进行IP地址配置,其所有地址均配为公有Ip地址; 2、R1和R5间使用PPP的PAP认证,R5为主认证方; R2与R5之间使用ppp的cHAP认证,R5为主认证方; R3与R5之间使用H…

Clip算法解读

论文地址:https://arxiv.org/pdf/2103.00020.pdf 代码地址:https://github.com/OpenAI/CLIPz 中文clip代码:https://gitcode.com/OFA-Sys/Chinese-CLIP/overview 一、动机 主要解决的问题: 超大规模的文本集合训练出的 NLP 模…

pbrt-v4 windows编译失败指南

cpu下编译成功很容易,但是gpu有点麻烦,主要有下面几个坑 安装optix 7,cmake build 要加上PBRT_OPTIX_PATH cmake cuda 版本要对应,不然会出现 cuda not found,或者generate的时候报错,导致最后pbrt.exe --…

FANUC机器人故障诊断—报警代码更新(三)

FANUC机器人故障诊断中,有些报警代码,继续更新如下。 一、报警代码(SRVO-348) SRVO-348DCS MCC关闭报警a,b [原因]向电磁接触器发出了关闭指令,而电磁接触器尚未关闭。 [对策] 1.当急停单元上连接了CRMA…

在react项目用echarts绘制中国地图

文章目录 一、引入echarts二、下载地图json数据三、编写react组件四、组件使用 一、引入echarts 安装:npm i echarts --save 二、下载地图json数据 由于echarts内部不再支持地图数据,所以要绘制地图需要自己去下载数据。建议使用阿里云的。 地址&…

接口自动化框架搭建(四):pytest的使用

1,使用说明 网上资料比较多,我这边就简单写下 1,目录结构 2,test_1.py创建两条测试用例 def test_1():print(test1)def test_2():print(test2)3,在pycharm中执行 4,执行结果: 2&#xff0…

Mysql连接报错:1130-host ... is not allowed to connect to this MySql server如何处理

我用navicat连接我的阿里云服务器的mysql服务器的时候,出现了1130的报错。(mysql Server version: 5.7.42-0ubuntu0.18.04.1 (Ubuntu)) 我来记录一下这个原因,以及修改过程! 1.首先进入mysql -u root -p, mysql客户端…

车载电子与软件架构

车载电子与软件架构 我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师 (Wechat:gongkenan2013)。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 本就是小人物,输了就是输了,不要在意别人怎么看自己。江湖一碗茶,喝完再挣扎,出门靠自己,四…

Unity LineRenderer的基本了解

在Unity中,LineRenderer组件用于在场景中绘制简单的线条。它通常用于绘制轨迹、路径、激光等效果。 下面来了解下它的基本信息。 1、创建 法1:通过代码创建 using UnityEngine;public class CreateLineRenderer : MonoBehaviour {void Start(){// 创…

排序算法超详细代码和知识点整理(java版)

排序 1、冒泡排序 ​ 两层循环,相邻两个进行比较,大的推到后面去,一共比较“数组长度”轮,每一轮都是从第一个元素开始比较,每一轮比较都会将一个元素固定到数组最后的一个位置。【其实就是不停的把元素往后堆&#…

LLaMA-Factory参数的解答

打开LLaMA-Factory的web页面会有一堆参数 ,但不知道怎么选,选哪个,这个文章详细解读一下,每个参数到底是什么含义这是个人写的参数解读,我并非该领域的人如果那个大佬看到有参数不对请反馈一下,或者有补充的…

我于窗中窥月光,恰如仰头见“链表”(Java篇)

本篇会加入个人的所谓‘鱼式疯言’ ❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言 而是理解过并总结出来通俗易懂的大白话, 小编会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的. 🤭🤭🤭可能说的不是那么严谨.但小编初心是能让更多人…

时序预测 | Matlab实现GWO-BP灰狼算法优化BP神经网络时间序列预测

时序预测 | Matlab实现GWO-BP灰狼算法优化BP神经网络时间序列预测 目录 时序预测 | Matlab实现GWO-BP灰狼算法优化BP神经网络时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.Matlab实现GWO-BP灰狼算法优化BP神经网络时间序列预测(完整源码和数据…

算法学习——LeetCode力扣动态规划篇6

算法学习——LeetCode力扣动态规划篇6 121. 买卖股票的最佳时机 121. 买卖股票的最佳时机 - 力扣(LeetCode) 描述 给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。 你只能选择 某一天 买入这只股票&…

三元组数据模型:构建知识图谱的基石

目录 前言1. 三元组数据模型概述1.1 定义与结构1.2 特点 2. 三元组在知识图谱中的应用2.1 知识表示2.2 知识推理2.3 数据整合 3 三元组的数据格式3.1 N-Triples :3.2 RDF/XML :3.3 Turtle (又称为 Terse RDF Triple Language)&…

编程语言|C语言——数组与指针

一、数组 同一类型的变量——元素(element)集中在一起,在内存上排列成一条直线,这就是数组(array)。 1.1 一维数组 一维数组的声明 int arr1[10]; int arr2[2 8];#define N 10 int arr3[N];int count 10;…

JavaScript的学习笔记

<script src"index.js" defer></script>&#xff0c;defer的作用是延迟加载index.js文件 定义变量 变量的类型分为两大类&#xff1a;基本类型和复合类型 JavaScript是一种弱类型语言&#xff0c;所以没有强类型语言所具有的int,float,char等等&#x…