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

前言
作为一名专业的前端攻城狮,拥有可以解决需求的技术以外,对于代码的管理也是不可忽视的一点。多多少少写代码过程中,都无法避免不出现bug,遇到这种情况我们都想回到之前的哪一步,重新来过。如果每修改一点代码,都往本地保存一个备份的话,特别的消耗时间,也让程序猿没有办法专注于写代码。这时候就急需一个帮助来帮助我们管理代码的工具,那就跟着本文一起来学习一下git吧~

一、git

官网:git

1. 简介

Git 是一个免费的开源 分布式版本控制系统,旨在快速高效地处理从小到大的所有项目。

2. 作用

备份文件的变化,以便将来查阅或者 回到历史版本,使用历史版本的代码。
完成多人合作,轻松合并代码

3. 使用git 的重要性

工作场景一:项目的需求不断的变化,改来改去,也可能需要改回原来的代码。

  • 使用版本管理软件
    • 可以对代码每次的改动做记录,记录一次,叫做形成一个版本。
    • 可以轻松的将代码回退到任意一个版本。(可以使用之前版本中的代码、文件)
    • 电脑关机了,版本也不会丢失。

工作场景二:多个合作开发,代码不好合并。

  • 使用版本管理软件 + 远程仓库,可以解决多人合作的问题。

使用git进行管理的作用

  • 记录代码的版本,可以随时回退。
  • 配合远程仓库,实现多人协作,可以很轻松的合并代码

版本管理软件的作用

  • 记录代码的版本,可以随时回退。
  • 配合远程仓库,实现多人协作,可以很轻松的合并代码

告诉Git,你是谁?

  • Git软件在工作的时候,需要知道你是谁?所以需要设置一个用户名和邮箱。

  • 这个用户名和邮箱,最好使用你的github账号或码云账号(如果你有账号的话),当然随便填也可以。

  • 具体做法:

  1. 任何文件夹,空白处,右键 --> Git Bash Here
  2. 依次执行下面两行命令
git config --global user.name "xxx"
git config --global user.email "xxx"

配置之后,可以通过下面的命令来检查是否配置成功了

# 查看所有的全局配置项
git config --list --global

# 查看单个的配置项,比如查看用户名
git config user.name

初体验

使用Git记录代码的每一次变更

  • 创建一个项目文件夹,随便创建一个即可。
  • 在项目文件夹里面的空白处,右键 --> Git Bash Here,打开黑窗口。
    • 在黑窗口中,输入 git init 然后按回车,表示执行这条命令。
    • 这一步是Git初始化。初始化之后,表示Git软件可以管理这个项目了
    • 对于一个项目来说,初始化工作只需要做一次。
  • 写代码测试
    • 随便写点代码
    • 执行命令 git add .
    • 执行命令 git commit -m '提交说明'
    • 执行完这两个命令,表示使用Git把当前代码及文件的改动记录起来了
  • 重复这个过程,多使用Git记录几次

查看所有的历史记录

查看提交日志

  • git log
  • git log --oneline
  • git log --reflog 或者 git log --oneline --reflog 查看所有的版本在这里插入图片描述

体验在历史版本中穿梭

  • git reset --hard 版本号 — 通过它,让代码整体,可以在历史版本中穿梭

目前还有很多知识没有学习,所以,穿梭到历史之后,不要改代码,先体验一下穿梭的感觉。

穿梭到历史之后,如何查看所有的版本号

穿梭到历史版本之后,通过 git log 查看不到之后的版本号。

需要加 --reflog 选项,才能查看所有的版本号

  • git log --reflog
  • git log --reflog --oneline

Git初始化详解

目的是学习,所以,随便创建一个项目文件夹,打开项目文件夹

注意:一定要在项目文件夹,右键–>Git Bash Here。

至于项目中有没有文件无所谓。

执行下面的命令:

# 初始化,表示使用Git管理我们的项目。这个命令只需要执行一次(注意空格)
git init
  • 执行 git init 命令之后,会在项目文件夹中生成一个隐藏的 .git 文件夹
  • .git 文件夹里面保存着当前项目文件的更改记录。所以这个文件夹不能删除
  • 对于一个项目来说,git init 只需要执行一次
  • 切记,不要项目套项目。

查看日志详解

查看日志的命令:

git log

查看简略版的信息(前7位版本号 及 提交说明):

git log --oneline
git log --pretty=oneline

如果回到历史版本,还想查看完整的历史记录,需要使用 --reflog 选项。

git log --reflog --oneline

只查看最近的两次提交

git log -2
git log -2 --pretty=oneline

Git工作时涉及的几个区域

  • 工作区
    • 工作区,指的是使用Git管理后的文件,这些文件显示在磁盘上,供我们使用或修改的区域。所以,粗略的说,项目文件夹就是工作区。
  • 暂存区
    • 执行 git add .之后,文件由工作区,添加到了暂存区。 暂存区保存了下次将提交的文件列表信息。
  • Git 仓库区、本地仓库
    • 执行 git commit -m '提交说明' 之后,代码会被提交到仓库区。仓库区是 Git 中最重要的部分,代码只有提交到仓库,才会形成一次历史记录,即才会形成一个版本。
  • 远程仓库
    • Git服务器上的仓库,比如,码云或者github网站上创建的的仓库,叫做远程仓库。远程仓库用于存储代码和发布项目,多人协作也需要远程仓库。

添加提交命令

添加文件到暂存区

新文件,只有添加到暂存区,才叫做被Git管理。否则和Git没什么关系,即使文件在项目文件夹。

# 添加指定文件到暂存区
git add 文件名

# 以空格隔开可以一次 add 多个文件
git add [file1] [file2] ...

# 添加指定目录到暂存区,包括子目录
git add [dir] [file] [dir] [file] [file] ...

# 添加当前目录的所有文件到暂存区,包括子目录
git add .


默认空文件夹,是不能添加,不能提交的

提交文件到仓库

提交到仓库的文件,是暂存区中的文件。

# 提交暂存区到仓库区
git commit -m [message]

# 提交暂存区的指定文件到仓库区
git commit [file1] [file2] ... -m [message]

# 提交工作区和暂存区自上次commit之后的变化,直接到仓库区。
# 新文件,从未被Git管理过,是不能直接提交到仓库区的
git commit -a -m "提交日志"


撤销

撤销,是把暂存区的代码撤销到工作区;或者把最后一次提交的代码撤销到暂存区和工作区

  • 暂存区 —> 工作区:git checkout 文件
  • 本地仓库 —> 暂存区:git reset 文件
  • 本地仓库 —> 暂存区/工作区:git reset --hard

分支

分支就是当前项目的一个副本(可以理解为把当前项目复制了一份,可以这样理解,但是要知道内部实现并非如此)。

初始化之后,默认是在master分支上进行操作的,master分支也叫做主分支。

实际开发中,正规的公司,都不允许直接在master分支上开发。需要创建分支,在分支上开发,最后将代码合并回master。

分支常用命令

# 查看所有本地分支
git branch

# 创建新分支
git branch 分支名
# 比如,创建一个叫做login的分支
git branch login

# 切换分支
git checkout 分支名
# 比如,切换到login分支
git checkout login
# 比如,切换到master分支
git checkout master

# 删除分支(删除时,必须先切换到其他分支)
git branch -d 分支名
git branch -D 分支名  强制删除分支

# 创建并直接切换分支
git checkout -b 分支名

体验:

  • 创建并切换到dev分支上;在dev分支上,写点代码,提交一下。
  • 切换分支,查看两个分支的不同。

切换分支之前,必须把当前分支的代码全部提交到仓库。

  开发工具 最新文章
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常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2021-09-09 11:59:09  更:2021-09-09 11:59:33 
 
开发: 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/16 4:30:34-

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