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 add)

取消加入暂存区

提交变更(版本更新)

版本回退

查看日志

使用clone指令克隆线上仓库到本地

在仓库上做对应的操作(提交暂存区、提交本地仓库、提交线上仓库、拉取线上仓库)

git clone和git pull的区别联系

分支


我的理解

git是一个版本控制工具,意思它就是一个软件,版本控制有两个作用,一是记录每次修改完的项目,方便出问题时回到原本的状态;二是多人协同开发。git是和github进行联动使用的。我们开发的时候可能会很多人协同开发,在使用git的时候输入用户名邮箱可以让Git记住你,比如你用你输入的用户名进行了项目更新,他就会有一个类似日志的东西,记录每一次更改和进行操作的人。

大致工作流程就是你在本地写完代码以后add到你在本地创造的目录中,等你觉得差不多完活了在把它push到github的仓库里。 在每天工作的第一件事就是先git pull拉取线上最新的版本;每天下班前要做的是git push,将本地代码提交到线上仓库。

注意在使用的时候路径尽量不要有中文。

创建本地目录:

mkdir pro_git
cd pro_git

Git仓库初始化

执行之后会在项目目录下创建“.git”的隐藏目录,这个目录是Git所创建的,不能删除,也不能随意更改其中的内容。它所在的文件夹就是仓库,会记录你所做的变更。

git init
之后再使用git status命令,可以查看当前仓库信息。

输入用户名邮箱:

git config --global user.name "MUNG29" //这俩最好和github的保持同步
git config --global user.email "735587142@qq.com"

将文件加入暂存区(git add)

查看当前状态:git status 
添加到缓存区:git add 文件名
说明:git add指令,可以添加一个文件,也可以同时添加多个文件。
语法1:git add 文件名
语法2:git add 文件名1 文件名2 文件名3 …
语法3:git add .   将所有文件加入暂存区

加入暂存区效果展示:

它绿了

取消加入暂存区

如果你add了一个文件,但是发现不该add它的,可以使用此命令来把它去掉

git reset <filename>

这样绿色的文件就重新变红了

提交变更(版本更新)

git commit -m "注释"

效果:

版本回退

如果你觉得新版本不如某次版本好,可以通过git reset <hash> --<模式>, 回到某次状态(hash值可以通过日志看到)

git reset <hash> --<模式>
hash值很长,但是一般前7位就可以锁定是哪个版本了,所以输入前7位就好
模式有三种:
--hard:不保存所有变更,一切都回到你回退到的hash版本的状态
--soft:保留变更且变更内容处于Staged(绿)
--mixed:保留变更且变更内容处于Mdifiled(红)

那如果你又后悔了,怎么回到刚刚的新版本呢?

这个时候git log的日志已经去掉你回到的这个版本以后的记录了,比如上面有6次提交,你回到了第五次,那git log就看不到第六次的内容了

这个时候你就可以通过 git reflog 来查看所有记录

git reflog

然后找到你想回到的版本hash值,再次git reset <hash>

查看日志

通过 git log, 我们可以知道什么人在什么时间提交了什么样的commit, 每个commit会生成一个唯一的哈希值

可以通过查看日志确定自己是否已经进行提交了

使用clone指令克隆线上仓库到本地

语法:git clone 线上仓库地址

在仓库上做对应的操作(提交暂存区、提交本地仓库、提交线上仓库、拉取线上仓库

在首次往线上仓库shop提交内容的时候出现了403的致命错误,原因是不是任何人都可以往线上仓库提交内容,必须需鉴权。 (如果不加可以的话那就不加) 需要修改“.git/config”文件内容:

提交到线上仓库:git push
拉取线上仓库:git pull

git clone和git pull的区别联系

git clone就是将一个库复制到本地,是一个本地从无到有的过程。包括里面的日志信息,git项目里的分支,你也可以直接切换、使用里面的分支等等。

git pull 作用是,取回远程主机某个分支的更新,再与本地的指定分支合并

类比一下,前者相当于你下载了一个游戏,后者相当于游戏更新。因为多人协同合作,线上仓库经常更新,就像游戏更新,你总不能每次都重新下载最新版本的游戏吧,肯定是选择更新。

分支

在开发的时候往往是团队协作,多人进行开发,因此光有一个分支是无法满足多人同时开发的需求的,并且在分支上工作并不影响其他分支的正常使用,会更加安全,Git鼓励开发者使用分支去完成一些开发任务。

掌握分支以后,如果你想回到某个版本,就可以直接切换分支,而不用再查找hashID了

分支相关指令:
查看所有分支:git branch (绿色的代表当前所处的分支)
创建分支:git branch 分支名 ? git checkout -b <分支名> <以谁为模板,可省>
切换分支: git checkout 分支名
删除分支:git branch -d 分支名
合并分支:git merge 被合并的分支名  (通常要解决冲突)
对比查看远程仓库信息:git fetch
?
git pull=git fetch+git merge

通常我们把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-06-29 19:17:52  更:2022-06-29 19:18:41 
 
开发: 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/14 15:16:55-

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