一、本地库初始化

  命令:git init

  效果:

    

    注意:.git 目录中存放的是本地库相关的子目录和文件,不要删除,也不要胡乱修改

二、设置签名

  形式

    用户名:user

    Email 地址:user@123.com

  作用:区分不同开发人员的身份

  辨析:这里设置的签名和登录远程库(代码托管中心)的账号、密码没有任何关辨析:这里设置的签名和登录远程库(代码托管中心)的账号、密码没有任何关系。

  命令:

    • 项目级别/仓库级别:仅在当前本地库范围内有效
      • git config user.name zyc
      • git config user.email goodMorning_pro@123.com
      • 信息保存位置:./.git/config 文件
      •          
    •  系统用户级别:登录当前操作系统的用户范围
      • git config --global user.name zyc
      • git config --global goodMorning_pro@456.com
      • 信息保存位置:~/.gitconfig 文件
    • 级别优先级
      • 就近原则:项目级别优先于系统用户级别,二者都有时采用项目级别的签名

      • 如果只有系统用户级别的签名,就以系统用户级别的签名为准
      • 二者都没有不允许

三、基本操作

  1、状态查看

    git status

    查看工作区、暂存区状态

  2、添加

    git add [file name]

    将工作区的“新建/修改”添加到暂存区

  3、提交

    git commit -m "commit message" [file name]

    将暂存区的内容提交到本地库

  

  4、查看历史记录

    git log

    

      多屏显示控制方式:

      空格向下翻页

      b 向上翻页

      q 退出

    git log --pretty=oneline

    

    git log --oneline

    

    git reflog

    

      HEAD@{移动到当前版本需要多少步}

  5、前进后退

    本质

    

    基于索引值操作[推荐]

       git reset --hard [局部索引值]

       git reset --hard a6ace91

    使用^符号:只能后退

       git reset --hard HEAD^

       注:一个^表示后退一步,n 个表示后退 n 步

    使用~符号:只能后退

       git reset --hard HEAD~n

       注:表示后退 n 步

  6、 reset 命令的三个参数对比

    • --soft 参数

      仅仅在本地库移动 HEAD 指针

    • --mixed 参数

      在本地库移动 HEAD 指针

      重置暂存区

    • --hard 参数

      在本地库移动 HEAD 指针

      重置暂存区

      重置工作区

  7、删除文件并找回

    前提:删除前,文件存在时的状态提交到了本地库。

    操作:git reset --hard [指针位置]

      删除操作已经提交到本地库:指针位置指向历史记录

      删除操作尚未提交到本地库:指针位置使用 HEAD

  8、 比较文件差异

    git diff [文件名]

      将工作区中的文件和暂存区进行比较

    git diff [本地库中历史版本] [文件名]

      将工作区中的文件和本地库历史记录比较

    不带文件名比较多个文件

Gi命令行操作的更多相关文章

  1. 命令行操作svn和git和git

    前几天在写代码的时候电脑突然坏掉,老大交代的任务没完成,非常痛恨自己用svn或者git保存代码,相信很多程序员遇到过,硬盘坏掉,存在硬盘中的代码丢失,无法找回的问题,svn和git可谓程序员界的福音, ...

  2. mysql 命令行操作入门(详细讲解版)

    之前分享过多次Mysql主题,今天继续分享mysql命令行入门   1. 那么多mysql客户端工具,为何要分享命令行操作? -快捷.简单.方便 -在没有客户端的情况下怎么办 -如果是mysql未开启 ...

  3. windows下使用TortoiseGit代替Git命令行操作

    windows下使用TortoiseGit代替Git命令行操作 大家在使用svn的时候,都非常喜欢使用小乌龟,也就是TortoiseSVN:那么git也有小乌龟版本,即TortoiseGit. 1.安 ...

  4. linux快速入门 1.1命令行操作

    http://lovesoo.org/linux-command-line-operation.html 1.1命令行操作 目录: <wp_nokeywordlink>Shell简介 &l ...

  5. MongoDB命令行操作

    本文专门介绍MongoDB的命令行操作.其实,这些操作在MongoDB官网提供的Quick Reference上都有,但是英文的,为了方便,这里将其稍微整理下,方便查阅. 这里用来做测试的是远端(10 ...

  6. Ant命令行操作

    Ant命令行操作 Ant构建文件可以将项目编译,打包,測试,它是Apache软件基金会jakarta文件夹中的一个子项目,具有跨平台性,操作简单,并且非常easy上手. 关于Ant执行,能够在项目中找 ...

  7. SVN的命令行操作

    最近在进行svn二次开发,使用的是svnkit.看了很多svnkit的api,渐渐发现都是和SVN的命令行操作对应的.顺便研究一下svn的命名行操作. 1.将文件checkout到本地目录: 基本命令 ...

  8. Hadoop系列006-HDFS概念及命令行操作

    本人微信公众号,欢迎扫码关注! HDFS概念及命令行操作 一.HDFS概念 1.1 概念 HDFS,它是一个文件系统,用于存储文件,通过目录树来定位文件:其次,它是分布式的,由很多服务器联合起来实现其 ...

  9. windows 命令行操作 Mysql 数据库

    1 前言 有接手一个新项目,项目中到了 Mysql 数据库 ,这里总结下 windows 命令行操作 Mysql 数据库. 2 Cmd操作数据库 2.1 连接Mysql服务器,命令如下:(root用户 ...

随机推荐

  1. sftp配置多个用户权限的问题

    groupadd group1 chmod 0755 /test/useradd -g group1 -d /test/backend/ -M test_backendusermod -s /sbin ...

  2. OutOfRangeError的解决办法

    自制TFRecord数据集,训练神经网络出现的一个问题,及解决办法.   错误现象: 数据训练完成后,测试数据集正确率时,运行mnist_test.py文件,出现错误代码 问题分析:显示需测试数据10 ...

  3. Lua 可变参数 ... 的一点测试

    function test( ... ) if (...) then dibug("has ...") else dibug("no ...") end for ...

  4. C# List<> Find相关接口学习

    参考 http://blog.csdn.net/daigualu/article/details/54315564 示例: List<int> test = new List<int ...

  5. 解决input获取焦点时底部菜单被顶上来问题

    <div class="search-box"> <input class="search-input" type="text&qu ...

  6. 4.NIO的非阻塞式网络通信

    /*阻塞 和 非阻塞 是对于 网络通信而言的*/ /*原先IO通信在进行一些读写操作 或者 等待 客户机连接 这种,是阻塞的,必须要等到有数据被处理,当前线程才被释放*/ /*NIO 通信 是将这个阻 ...

  7. 【SpringMVC】入门

    一.概述 1.1 SpringMVC是什么 1.2 MVC在b/s系统的应用 1.3 SpringMVC 原理 二.入门程序 2.1 需求 2.2 引入依赖 2.3 前端控制器 2.4 springm ...

  8. springboot系列(四)springboot 配置

    在springboot出现之前,spring项目会存在多个配置文件,如web.xml,配置spring的多个spring-xxx.xml,xxx代表配置spring的某一功能,如aplication- ...

  9. 关闭mysql严格模式

    配置文件my.ini sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" 修改为 s ...

  10. 通用mapper接口已经写好的 根据 list 集合查询 相应数据

    package tk.mybatis.mapper.additional.idlist; import org.apache.ibatis.annotations.Param; import org. ...