Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理,是目前使用范围最广的版本管理工具。

之前的博客中介绍了linux下安装Git的内容,这篇博客,简单介绍下使用Git进行本地文件管理和连接上传远程仓库的方法。。。

一、Windows上安装Git

一般我们工作的电脑都是Windows系统,要使用git首先要进行安装。从软件管家或者其他平台找到git的安装包,下载后默认安装即可。

安装成功之后,可以在开始菜单里面找到git:

或者在桌面右键,也可以看到:

其中GUI为用户界面模式,Bash为命令行模式,这里就以Bash为例子介绍git的基本使用方法(其实相比于GUI,个人觉得Bash更容易学习理解)。

二、设置

由于git是分布式管理工具,需要输入用户名和邮箱以作为标识,因此,在命令行输入下列的命令:

PS:注意git config  --global参数,有了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然你也可以对某个仓库指定的不同的用户名和邮箱,根据个人情况设置。

三、工作原理

安装好之后,在使用前先来了解一下Git的工作原理,是很有必要的一件事,下面是Git的工作流程和简化原理图:

1、Git工作流程

2、Git简化原理图

四、基本用法

1、创建版本库

版本库就是我们所说的“仓库”,英文名repository,你可以理解为一个目录,这个目录里面的所有文件都可以被Git管理,文件的修改,删除Git都能跟踪,

以便任何时刻都可以追踪历史,或者在将来某个时刻还可以将文件”还原”。

下面是在我的电脑→D盘→TEST文件下,创建一个名为lianxi的版本库:

命令解析:

cd:进入某个目录

mkdir:创建一个文件

pwd:显示当前的目录路径

2、添加文件到版本库

要添加文件到版本库,首先需要将这个目录变为git可以管理的仓库,命令如下:

然后,在lianxi目录下创建一个文件,这里我创建的文件为0409.txt,内容为123456

使用下列的命令,将创建的文件添加到暂存区,然后提交到仓库:

命令解析:

git add:将文件提交到暂存区

git commit -m:将暂存区文件提交到仓库(单引号内为注释)

3、检查是否有未提交的文件

通过下面的命令,检查该版本库是否有文件未提交:

命令解析:

git status:检查当前文件状态

4、检查文件是否被修改

修改0409.txt的文件,然后重新检查状态:

修改文件后,通过命令git status发现,文件已经被修改,但是未提交,如果要检查文件修改了什么内容,可以通过上图中的命令来查看,发现文件的第二行增加了666666的内容。

检查无误后,继续提交修改后的文件,提交命令和上面一样。

命令解析:

git diff:查看文件修改的内容

5、查看历史变更记录

再次修改文件内容,第三行增加233333的内容,然后保存提交:

现在已经修改了2次文件,可以通过如下命令查看历史修改记录:

如上图所示:每次提交都会有自己的版本号,当然,入过觉得这样看起来比较费事,可以使用命令,获得精简版本的日志记录。

命令解析:

git log:获得历史修改记录

git log --pretty=oneline:使记录只显示主要的内容,一行显示

6、版本回退

首先通过命令行查看当前的文件内容:

然后通过下列的命令,执行版本回退:

可以看到内容已经回退到上一个版本,通过git log查看修改记录,发现最近的一次233333内容的记录已经看不到了,如果想回到最新的版本,可以通过如下命令进行回退:

从上图可以看到,文件版本又回退到了最新的状态。

命令解析:

cat:查看文件内容

git reset --hard HEAD^:回退到上一个版本

git reflog:获取历史版本号

git reset --hard 版本号:回退到该版本号对应的版本

PS:如果要回退到上上个版本,可以使用git reset --hard HEAD^^命令,但是这样稍显麻烦,如果回退到100个版本之前,只需要执行这个命令即可:git reset --hard HEAD~100;

五、将本地文件推送到github仓库

PS:关于Git和github关联,可以参考这篇博客:Git关联github,这里跳过不细说。

检查文件是否还有未提交或者修改的,然后将文件提交到github仓库,命令如下:

命令解析:

git remote add origin https://github.com/zwg481026/APITest.git是将你本地的仓库和github仓库进行关联,在操作时候,需要将github地址替换为自己的,否则无法推送!

然后执行下面的命令:

第一次推送master分支时,加上了 –u参数,Git会将本地的master分支内容推送的远程新的master分支,还会把2个master分支关联起来,在以后的推送或者拉取时就可以简化操作。

推送成功后,可以立刻在github页面中看到远程库的内容已经和本地一模一样了,登录你的github,从仓库中查看:

之后,只要本地做了修改提交,就可以使用git push origin master命令进行文件推送。

六、其他

关于git的命令还有很多,后续会不断更新,敬请期待。。。

Git基础使用教程的更多相关文章

  1. Git基础使用教程(仓库初始化,源码clone,源码push)

    一.下载Git源码管理客户端 Git下载地址:https://git-scm.com/ 二.检查电脑是否已安装Git 1)已安装:输入git出现下图提示则代表已安装成功. 2)未安装情况下git会出现 ...

  2. ###Git 基础图解、分支图解、全面教程、常用命令###

    一.Git 基础图解 转自:http://www.cnblogs.com/yaozhongxiao/p/3811130.html Git 图解剖析 git中文件内容并没有真正存储在索引(.git/in ...

  3. Git基础教程(二)

    继续上篇Git基础教程(一),在开篇之前,先回顾一下上篇中的基本命令. 配置命令:git config --global * 版本库初始化:git init 向版本库添加文件:git add * 提交 ...

  4. Git入门基础详情教程

    前言 写了一篇文章<一篇文章了解Github和Git教程>还觉得不错,继续写了<为了Github默默付出,我想了解你>,那么继续写Git 基础知识. Git 官网:https: ...

  5. Android基础新手教程——1.5.2 Git之使用GitHub搭建远程仓库

    Android基础新手教程--1.5.2 Git之使用GitHub搭建远程仓库 标签(空格分隔): Android基础新手教程 本节引言: 在上一节中.我们学习了怎样使用Git.构建我们的本地仓库.轻 ...

  6. git github 使用教程

    参考文章:文章地址: http://wuyuans.com/2012/05/github-simple-tutorial/ github是一个基于git的代码托管平台,付费用户可以建私人仓库,我们一般 ...

  7. 国内代码托管git-osc基础使用教程

    git-osc是开源中国社区团队推出的基于Git的快速的.免费的.稳定的在线代码托管平台,不限制私有库和公有库数量.国内同类的有taocode.SVNchina等等 个人更喜欢git-osc的界面与操 ...

  8. Git基础 —— Github 的使用

    Git 基础学习系列 Git 基础 -- 安装 配置 别名 对象 Git 基础 -- 常用命令 Git 基础 -- 常见使用场景 Git基础 -- Github 的使用 Github 的利用 Gith ...

  9. Git 基础 —— 常用命令

    Git 基础学习系列 Git 基础 -- 安装 配置 别名 对象 Git 基础 -- 常用命令 Git 基础 -- 常见使用场景 Git基础 -- Github 的使用 git init 创建 Git ...

随机推荐

  1. 照葫芦画瓢系列之Java --- Maven的配置

    一.Maven仓库分类 Maven中,仓库只分为两类:本地仓库和远程仓库.当Maven根据坐标寻找构件的时候,它首先去查看本地仓库,如果本地仓库有此构件,则直接使用,如果本地仓库不存在此构件,或者需要 ...

  2. Centos 7下VMware三台虚拟机Hadoop集群初体验

    一.下载并安装Centos 7 传送门:https://www.centos.org/download/    注:下载DVD ISO镜像 这里详解一下VMware安装中的两个过程 网卡配置 是Add ...

  3. 2014年5月16至24日,杨学明老师为深圳创维RGB事业部提供两天的《软件测试管理》内训服务!

    2014年5月16日和24日,<在软件开发流程中构筑软件质量—软件测试管理>内训课程在深圳创维集团成功举办!来自创维研发.测试.生产等部门的管理人员和核心骨干等参加了此次培训,此次培训由研 ...

  4. 智能POS正餐主副机模式FAQ(无桌台或桌台模块)

    1.无桌台 (1).如果是初次使用,首先检查是否是新建的机器号,新建的机器是默认关闭桌台的,需要到模块管理中开启. 2.无桌台模块 (1).是否在主副机开启连接上后重启主机与副机,且同步数据.

  5. SQL Server遗失管理权限账号密码怎么办?

    假如一个SQL Server实例只允许"SQL身份认证"模式登录数据库,而糟糕的是你忘记了sa的密码(sa出于安全考虑应该被禁用,这里仅仅为了描述问题)或其它具有sysadmin角 ...

  6. IntelliJ IDEA安装后需要必须做的一件事

    把Alt+斜杆 删除 Ctrl+空格修改成 Alt+斜杆 Ctrl+空格用过输入法的人都应该知道为什么要做上面一件事

  7. jenkins 备份配置信息

    本文介绍几种备份jenkin配置信息的方法,大家可根据实际情况做出选择. 我的测试环境如下: windows 7 jenkins 2.32.3 ____升级到___2.46.3 (长期支持版本) 多种 ...

  8. 几个常用dos网络命令

    ping www.baidu.com 测试网络的同时,查看ip地址 1. 如图:百度的ip为  14.215.177.39.浏览器直接输入ip即可进入百度首页. 另外还有,14.215.177.38 ...

  9. docker容器持久化卷讲解

    docker容器自身存储数据效率比较低,因此我们为了提高磁盘IO的性能等,需要在容器中挂载一个外部存储设备.关于讲解大致如下: Docker中的数据可以存储在类似于虚拟机磁盘的介质中,在Docker中 ...

  10. 第七章 LED将为我闪烁:控制发光二级管

    LED驱动开发实验 如图所示,LED1-LED2 分别与GPC0_3.GPC0_4 相连,通过GPC0_3.GPC0_4 引脚的高低电平来控制三极管的导通性,从而控制LED 的亮灭. 根据三极管的特性 ...