一、本地库初始化

  命令: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. iis7 运行多个https,433端口监听多个htps 站点

    默认情况一个服务器的IIS只能绑定一个HTTPS也就是443端口,现在有需要一个服务器 iis 433 端口 绑定多个 申请到证书后(不是必须要通配符的证书),添加多个https站点,先绑定别的端口 ...

  2. ASP.NET WEB应用程序(.network4.5)MVC Razor视图引擎2 视图模板页

    https://www.cnblogs.com/xlhblogs/archive/2013/06/09/3129449.html MVC Razor模板引擎 @RenderBody.@RenderPa ...

  3. Python 生成动态变量 调用动态变量

    动态生成变量: variable = locals() for i in range(10): variable['A'+str(i)] = 123 print(A8) 调用动态变量: v = loc ...

  4. Shell学习笔记:awk实现group by分组统计功能

    日常部分数据以 txt 的文件格式提供,为避免入库之后再进行统计的麻烦,故学习 shell 进行处理,减少工作量. 1.样例数据 # test.txt YD5Gxxx|6618151|68254490 ...

  5. 空a标签在IE下无效之解决方法

    过程就不分析了,只说解决方法: 1.给a标签添加样式:background:url(about:blank); 2.给a标签随便添加背景色或者背景图片,然后将a标签的透明度设置为0,不过在IE中需要使 ...

  6. Linq以本周和本月为条件的Sql,Liqn查询本周,Linq查询本月

    //计算本周时间 时间 > DateTime.Now.AddDays(-Convert.ToInt32(DateTime.Now.Date.DayOfWeek) //计算本月时间 时间 > ...

  7. Mysql中的锁机制-转载

    原文:http://blog.csdn.net/soonfly/article/details/70238902 锁是计算机协调多个进程或线程并发访问某一资源的机制.在数据库中,除传统的 计算资源(如 ...

  8. 跨域详解之jsonp,底层的实现原理

    分享一下跨域,不仅是因为现在的工作中遇到的越来越多,而且在面试中也经常被问到. 那么什么是跨域呢,我们来看官方给出的解释:浏览器不能执行其他网站的脚本.它是由浏览器的同源策略造成的(所谓同源是指,域名 ...

  9. Anaconda查找源及配置清华镜像

    Anaconda配置清华源 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ c ...

  10. Struts2 Action类的创建以及参数传递以及接收

    一.Struts中Action得创建方式 1,直接创建一个简单的Action类 添加Struts.xml,配置转发方法返回转发的页面. 2,实现一个Action类 Strust.xml配置对应的Url ...