时间不在于你拥有多少,而在于你怎样使用——————时之沙 · 艾克

一、Git设置

1.1 Git全局设置

  • 当我们安装好Git以后,我们需要对Git进行账号、邮箱的设置
  • 设置用户信息

    git config --global user.name "meteor"

    git config --global user.email "meteor@.com"
  • 查看配置信息

    git config --list

1.2 Git获取仓库

在本地初始化一个Git仓库(不常用):

  • 在你创建的目录下执行git init,会出现一个隐藏的.git文件夹

  • 可以看到我们初始化一个仓库以后,出现了master分支,证明我们已经创建成功

从远程仓库克隆(常用):

  • 直接在我们创建的文件夹下面,使用git clone https://gitee.com/lx-meteor/reggie.git
  • 这样我们就可以从远程仓库中,获取项目。

1.3 Git详细概念

版本库:前面看到的.git隐藏文件夹就是版本库,版本库中存储了很多的配置信息日志信息文件版本信息等。

工作区:包含.git文件夹的目录就是工作区,也称为工作目录,主要用于存放我们的项目代码。

暂存区:.git文件夹中有很多文件,其中有一个index文件就是暂存区,也可以叫stage。暂存区是一个临时保存修改文件的地方。

  • 这个图也很好理解,当我们在自己的项目下编码后(工作区),用git add命令,将项目放入到.git文件下的index文件里(暂存区),然后就用git commit命令,放到了(版本库)中。

  • 我们可以通过git status来查看当前仓库状态

    • untracked未跟踪(没有被Git控制)

    • tracked已跟踪(已经被Git控制)

      • Unmodified未修改状态
      • Modified已修改状态
      • Staged已暂存状态

二、Git常用命令

2.1 本地仓库

  • git status:查看文件状态

  • git add:将文件的修改加入暂存区

  • git reset:将暂存区的文件取消或者是切换到指定版本

  • git commit:将暂存区的文件修改提交到版本库

  • git log:查看日志

  • 红色代表修改了但是没有放到暂存区

  • 绿色代表修改了,并且放到了暂存区

  • 通过git log 查看我们的提交记录

  • 使用git reset --hard ec8c25a05c4db2dab30ef4ad2d30cfd9b5924dbf恢复我们曾经提交的文件,时空穿梭!

2.2 远程仓库

  • git remote:查看远程仓库

  • git remote add [remote-name] http...:添加远程仓库

  • git clone http...:从远程仓库克隆

  • git pull [remote-name] [branch-name]:从远程仓库拉取

  • git push [remote-name] [branch-name]:推送到远程仓库

  • 我们要先提交到本地仓库,在提交到远程仓库


无脑步骤教学:

  1. git clone + 仓库链接(克隆远程仓库项目)
  2. git add .(将项目添加到暂存区)
  3. git commit -m "message" *(添加到本地库)
  4. git push origin master

  • 在我们刚建仓库的时候,也可能提交会出现bug,因为我们的仓库中有readme文件,而本地却没有。
  • git push -f origin master :仅第一次使用。(慎用!‍♂️)

三、分支与标签操作

3.1 分支

  • git branch:查看分支
  • git branch [name]:创建分支
  • git checkout:切换分支
  • git push [shortName] [name]:推送至远程仓库分支
  • git push origin b
  • git merge [name]:合并分支

分支的作用就是可以让我们拥有:

  • 多人分块开发
  • 在分支上修改bug,改好后提交到主分支

3.2 标签

  • git tag:列出已有的标签
  • git tag [name]:创建标签
  • git push [shortName] [name]:将标签推送到远程仓库
  • git push origin v1.0
  • git checkout -b [branch] [name]:检出标签

标签的作用就是可以让我们拥有:

  • 博客1.0版本
  • 博客1.0改版本
  • 博客1.0最终改版本
  • 博客1.0最最终改版本
  • 博客2.0版本

四、idea集成Git

自学吧,idea集成挺简单的

五、结尾

  • 对于Git知识内容就总结这么多,若想深入学习等待后续更新。
  • 我将会继续更新关于Java方向的学习知识,感兴趣的小伙伴可以关注一下。
  • 文章写得比较走心,用了很长时间,绝对不是copy过来的!
  • 尊重每一位学习知识的人,同时也尊重每一位分享知识的人。
  • 你的点赞与关注,是我努力前行的无限动力。

从入门到爱上Git的更多相关文章

  1. git入门手册:git的基本安装,本地库管理,远程上传

    前言: git是分布式的版本库控制系统,它能方便你将自己的代码寄存于远程服务器上,从而实现集体合作开发.git有GUI 图形界面,然而使用终端命令仍是主流.以下基于Ubuntu系统操作git(其方式也 ...

  2. android 入门-android Studio git 克隆

    最后是完成 以上是如何从android studio Git 克隆Github的项目

  3. Git入门指南十一:Git branch 分支与合并分支

    十五. Git branch 分支 查看当前有哪些branch bixiaopeng@bixiaopengtekiMacBook-Pro xmrobotium$ git branch * master ...

  4. [置顶] 【Git入门之一】Git是神马?

    1.Git是神马? 一个开源的分布式版本控制系统,可以有效的高速的控制管理各种从小到大的项目版本.他的作者就是大名鼎鼎的Linux系统创始人Linus. 2.分布式又是神马? 先看看集中式.简单说来, ...

  5. git 入门教程之 git 私服搭建教程

    git 私服搭建教程 前几节我们的远程仓库使用的是 github 网站,托管项目大多是公开的,如果不想让任何人都能看到就需要收费,而且 github 网站毕竟在国外,访问速度太慢,基于上述两点原因,我 ...

  6. git 入门教程之 git bash 竟然不支持 tree 命令

    开门见山 git bash 是 Windows 用户安装 git 时默认安装的命令行工具,不仅界面漂亮功能也不错,大多数情况下可以替代 Windows 原生的 cmd 命令行. 然而,git bash ...

  7. android 入门-android Studio git配置

    以后在整理

  8. Git学习记录 力做全网最强入门教程

    目录 Git学习记录 力做全网最强入门教程 什么是GitHub? 什么是Git? Git的配置 Git的安装(只介绍windos操作系统下) Git的配置 至此我们的入门教程到此结束,更新中级教程要等 ...

  9. [转]VS2015 Git 源码管理工具简单入门

    VS2015 Git 源码管理工具简单入门   1.VS Git插件 1.1 环境 VS2015+GitLab 1.2 Git操作过程图解 1.3 常见名词解释 拉取(Pull):将远程版本库合并到本 ...

随机推荐

  1. FreeRTOS --(8)任务管理之创建任务

    转载自https://blog.csdn.net/zhoutaopower/article/details/107034995 在<FreeRTOS --(7)任务管理之入门篇>文章基本分 ...

  2. ArrayLIst在指定位置插入的内部实现

    今天看到一个问题:ArrayList的add方法有两种使用,那么add到指定位置内部是怎么实现的? 发现自己对这块地方不熟悉,所以立马去看了ArrayList下的源码 // 第一个 public bo ...

  3. Flatbuffers学习

    flatbuffers简介 FlatBuffers 是一个(二进制 buffer)序列化开源库,由 Google 开源现在它支持C++, C#, C, Go, Java, Kotlin, JavaSc ...

  4. idea打开service窗口

  5. Unreal 输入系统 解析

    前言 输入系统,输入某个键,响应到GamePlay层做对应的事.例如 点击鼠标,前进还是开枪之类,是如何响应的.这里只说应用层逻辑,硬件层逻辑不讲述. 详解 1.问题来源 先看下面一个例子:跳跃的事件 ...

  6. maccms10二开批量入库和资源打包

    批量入库 因为maccms自带的采集采集起来很慢,而且很多资源站的采集接口不能对内容排序,导致最旧的数据最后入库.用java写个采集程序,采集完入库的时候发现不能一次性入库多个数据,导致入库也很慢,所 ...

  7. 140_Power BI&Power Pivot之降维展示同类型比较

    博客:www.jiaopengzi.com 焦棚子的文章目录 请点击下载附件 一.背景 最近一段时间比较忙,几乎没有时间更新网站内容,今天刚好周末,更新一个简单的需求. 上效果图: 在我们日常做对比分 ...

  8. 20212115 实验三 《python程序设计》实验报告

    实验报告 20212115<python程序设计>实验三报告 课程:<Python程序设计>班级: 2121姓名: 朱时鸿学号:20212115实验教师:王志强老师实验日期:2 ...

  9. 【Azure 应用服务】NodeJS Express + MSAL 应用实现AAD集成登录并部署在App Service Linux环境中的实现步骤

    问题描述 实现部署NodeJS Express应用在App Service Linux环境中,并且使用Microsoft Authentication  Library(MSAL)来实现登录Azure ...

  10. VSCode进一步深入了解学习

    紧接上一章节趁热打铁吧,未关注博主的记得关注哦! VSCode设置 (1)关闭预览模式 我们在 VScode 上打开一个新文件的话会覆盖掉以前的文件,这是因为 VSCode 默认开启了预览模式,预览模 ...