Gi命令行操作

摘要:
仅在当前本地库的范围内有效gitconfiguser.namezycgitconfiguser.emailgoodMorning_pro@123.com信息存储位置:登录到当前操作系统gitconfig--globaluser的用户范围。namezycgitconfig--全局goodMorning_pro@456.com信息存储位置:

一、本地库初始化

  命令:git init

  效果:

    Gi命令行操作第1张

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

二、设置签名

  形式

    用户名:user

    Email 地址:user@123.com

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

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

  命令:

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

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

 三、基本操作

  1、状态查看

    git status

    查看工作区、暂存区状态

  2、添加

    git add [file name]

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

  3、提交

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

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

  Gi命令行操作第4张

  4、查看历史记录

    git log

    Gi命令行操作第5张

      多屏显示控制方式:

      空格向下翻页

      b 向上翻页

      q 退出

    git log --pretty=oneline

    Gi命令行操作第6张

    git log --oneline

    Gi命令行操作第7张

    git reflog

    Gi命令行操作第8张

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

  5、前进后退

     本质

    Gi命令行操作第9张

    基于索引值操作[推荐]

       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命令行操作》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇JUnit使用简介程序员:如何成为一个全栈的工程师?下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

2020第44周Windows文件系统不区分大小写

由于Windows文件系统不区分大小写,所以你不能通过大小写来区分文件名或文件夹名,比如你在资源管理器中新建一个A.txt文件,想再建个a.txt时会提示你重名并自动重命名。这在Git操作时可能会遇到问题,比如你代码库里文件或文件夹修改了名称,默认Git认为是没变的,如果单纯让Git在仓库中区分大小写会产生两份文件并且无法在Windows系统中观察到),...

C#中的ComboBox实现只能选择不能输入,且下拉框中有默认值。

下拉框有DropDownStyle这一属性,把DropDownStyle类型选为DropDownList,则下拉框只能选择不能输入了。但是这时的下拉框是没有默认值的,即使在Text属性中输入默认值,也不起作用。就要在(某某某.Designer.cs)文件中修改。这是没有修改的:this.NameTemplateBox.Cursor = System.Win...

Visual Studio 2012设置Jquery/Javascript智能提示

Visual Studio 2012设置Jquery/Javascript智能提示在Visual Studio 2008 Visual Studio 2010中微软已经开始支持jquery/javascript智能提示了。反而是Visual Studio 2012让人莫不清楚头脑。 但是需要安装一个插件。方法在这里也补充一下: 1  安装VS2008SP...

gitlab+jenkins自动化打包IOS-jenkins配置

实现的效果如图:  构建界面:   完成效果:   功能说明: 根据选择的代码分支,执行构建打包  构建成功后根据ipa/apk生成二维码,并可在历史构建列表中展示各个版本的二维码,通过手机扫描二维码可直接安装对应版本 因为搭建平台写了一系列博文,这里作一个总结与整理  首先jenkins需要的插件: build-name-setter:用于修改Bu...

c语言_头文件_windows.h

概述 Win32程序的开头都可看到: #include <windows.h> WINDOWS.H是一个最重要的头文件,它包含了其他Windows头文件,这些头文件的某些也包含了其他头文件。这些头文件中最重要的和最基本的是: WINDEF.H 基本数据类型定义。 WINNT.H 支持Unicode的类型定义。 WINBASE.H Kernel(...

ubuntu12中设置PATH环境变量的几种方法(三种办法)

如果在Ubuntu12系统中自行安装了一些软件,特别是使用tar.gz文件包安装的软件,通常会放在/usr/local或者/opt,甚至放在/home下,但是如果要调用或执行时,必须加上完整的路径才可以,因为Ubuntu系统默认只执行/bin和/usr/bin下的程序,这非常不方便。一种简单的方法是直接将自己的可执行程序复制到/bin或者/usr/bin...