从入门到爱上Git
时间不在于你拥有多少,而在于你怎样使用——————时之沙 · 艾克
一、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]:推送到远程仓库我们要先提交到本地仓库,在提交到远程仓库
无脑步骤教学:
- git clone + 仓库链接(克隆远程仓库项目)
- git add .(将项目添加到暂存区)
- git commit -m "message" *(添加到本地库)
- 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 bgit merge [name]:合并分支
分支的作用就是可以让我们拥有:
- 多人分块开发
- 在分支上修改bug,改好后提交到主分支
3.2 标签
git tag:列出已有的标签git tag [name]:创建标签git push [shortName] [name]:将标签推送到远程仓库git push origin v1.0git checkout -b [branch] [name]:检出标签
标签的作用就是可以让我们拥有:
- 博客1.0版本
- 博客1.0改版本
- 博客1.0最终改版本
- 博客1.0最最终改版本
- 博客2.0版本

四、idea集成Git
自学吧,idea集成挺简单的
五、结尾
- 对于Git知识内容就总结这么多,若想深入学习等待后续更新。
- 我将会继续更新关于Java方向的学习知识,感兴趣的小伙伴可以关注一下。
- 文章写得比较走心,用了很长时间,绝对不是copy过来的!
- 尊重每一位学习知识的人,同时也尊重每一位分享知识的人。
- 你的点赞与关注,是我努力前行的无限动力。
从入门到爱上Git的更多相关文章
- git入门手册:git的基本安装,本地库管理,远程上传
前言: git是分布式的版本库控制系统,它能方便你将自己的代码寄存于远程服务器上,从而实现集体合作开发.git有GUI 图形界面,然而使用终端命令仍是主流.以下基于Ubuntu系统操作git(其方式也 ...
- android 入门-android Studio git 克隆
最后是完成 以上是如何从android studio Git 克隆Github的项目
- Git入门指南十一:Git branch 分支与合并分支
十五. Git branch 分支 查看当前有哪些branch bixiaopeng@bixiaopengtekiMacBook-Pro xmrobotium$ git branch * master ...
- [置顶] 【Git入门之一】Git是神马?
1.Git是神马? 一个开源的分布式版本控制系统,可以有效的高速的控制管理各种从小到大的项目版本.他的作者就是大名鼎鼎的Linux系统创始人Linus. 2.分布式又是神马? 先看看集中式.简单说来, ...
- git 入门教程之 git 私服搭建教程
git 私服搭建教程 前几节我们的远程仓库使用的是 github 网站,托管项目大多是公开的,如果不想让任何人都能看到就需要收费,而且 github 网站毕竟在国外,访问速度太慢,基于上述两点原因,我 ...
- git 入门教程之 git bash 竟然不支持 tree 命令
开门见山 git bash 是 Windows 用户安装 git 时默认安装的命令行工具,不仅界面漂亮功能也不错,大多数情况下可以替代 Windows 原生的 cmd 命令行. 然而,git bash ...
- android 入门-android Studio git配置
以后在整理
- Git学习记录 力做全网最强入门教程
目录 Git学习记录 力做全网最强入门教程 什么是GitHub? 什么是Git? Git的配置 Git的安装(只介绍windos操作系统下) Git的配置 至此我们的入门教程到此结束,更新中级教程要等 ...
- [转]VS2015 Git 源码管理工具简单入门
VS2015 Git 源码管理工具简单入门 1.VS Git插件 1.1 环境 VS2015+GitLab 1.2 Git操作过程图解 1.3 常见名词解释 拉取(Pull):将远程版本库合并到本 ...
随机推荐
- Ajax学习笔记demo
AJAX学习 AJAX简介: 全称:Asynchronous JavaScript and XML (JavaScript执行异步网络请求(JS和XML)),通过AJAX可以在浏览器向服务器发送异步请 ...
- 【mq】从零开始实现 mq-05-实现优雅停机
前景回顾 [mq]从零开始实现 mq-01-生产者.消费者启动 [mq]从零开始实现 mq-02-如何实现生产者调用消费者? [mq]从零开始实现 mq-03-引入 broker 中间人 [mq]从零 ...
- 用 Python 为接口测试自动生成用例
用Python为接口自动生成测试用例 基于属性的测试会产生大量的.随机的参数,特别适合为单元测试和接口测试生成测试用例 尽管早在2006年haskell语言就有了QuickCheck来进行" ...
- MySQL中的全表扫描和索引树扫描
引言 在学习mysql时,我们经常会使用explain来查看sql查询的索引等优化手段的使用情况.在使用explain时,我们可以观察到,explain的输出有一个很关键的列,它就是type属性,ty ...
- 无线:PIN码
PIN码(PIN1),全称Personal Identification Number.就是SIM卡的个人识别密码.手机的PIN码是保护SIM卡的一种安全措施,防止别人盗用SIM卡,如果启用了开机PI ...
- linux篇-linux LAMP yum版安装
LAMP(linux.apache.mysql.php),是四个套件的合成,简单讲就是要把php运行在linux上,需要依赖apache和mysql数据库. 1 准备好一个linux系统(centos ...
- 好客租房16-jsx中的列表渲染
如果要渲染一组数组 应该使用数组的map方法 注意:渲染列表时候添加key属性 key属性的值要保持唯一 原则:map()遍历谁 就给谁添加key属性 尽量避免索引号作为key //导入react i ...
- Vue路由实现之通过URL中的hash(#号)来实现不同页面之间的切换(图表展示、案例分析、附源码详解)
前言 本篇随笔主要写了Vue框架中路由的基本概念.路由对象属性.vue-router插件的基本使用效果展示.案例分析.原理图解.附源码地址获取. 作为自己对Vue路由进行页面跳转效果知识的总结与笔记. ...
- TypeError: this.getOptions is not a function
我在vue ui界面中安装版本依赖包后报这个错误 less-loader/sass-loader安装的版本过高 解决办法 删除原有的版本依赖包,安装更低版本的依赖包. 如 @6.0.1为选择安装的版本 ...
- 【freertos】009-任务控制
目录 前言 9.1 相对延时 9.1.1 函数原型 9.1.2 函数说明 9.1.3 参考例子 9.2 绝对延时 9.2.1 函数原型 9.2.2 函数说明 9.2.3 参考例子 9.3 获取任务优先 ...