3、Git之常用命令
3.1、速查表
| 命令 | 作用 |
|---|---|
| git config --global user.name 用户名 | 设置用户签名(昵称) |
| git config --global user.email 邮箱 | 设置用户签名(邮箱) |
| git init | 初始化本地库 |
| git status | 查看本地库状态 |
| git add 文件名 | 添加到暂存区 |
| git commit -m "日志信息" 文件名 | 提交到本地库 |
| git reflog | 查看历史记录 |
| git reset --hard 版本号 | 版本穿梭 |
3.2、用户签名
3.2.1、设置用户签名

随便在一个地方右击鼠标,打开 Git 的命令行界面。

git config --global user.name 用户名
git config --global user.email 邮箱
签名的作用是为了区分不同操作者的身份。
用户的签名信息在每一个版本的提交信息中能够看到,以此确认本次提交是谁做的。
注意:Git 首次安装必须设置用户签名,否则无法提交代码。
3.2.2、查看用户签名

在 Windows 用户目录下的 .gitconfig 文件中,可以查看已设置的用户签名信息

注意:这里设置的用户签名,和将来登录 GitHub(或其他代码托管中心)的账号没有任何关系。
3.3、初始化本地库
3.3.1、新建一个文件夹

文件夹名称可以是任意的。
3.3.2、进入命令行界面

进入新建的文件夹,在空白处右击,在该文件夹下打开 Git 的命令行界面。

3.3.3、进行本地库初始化

执行本地库初始化命令后,该文件夹下会多了一个名称是 .git 的子文件夹(默认是隐藏状态),这就是刚创建的一个空的 Git 本地库。
git init
3.3.4、查看隐藏的本地库



3.4、查看本地库状态
3.4.1、查看初始化状态

git status
状态信息说明如下:
On branch master : 目前在 master (默认)分支上。
No commits yet :还没提交过任何内容到本地库。
nothing to commit : 现在没有什么可以提交到本地库的,因为工作区没有任何文件。
3.4.2、新增文件

在 .git 的父文件夹中(即工作区),添加一个文件。
3.4.3、查看新增文件后的状态

git status
状态信息说明如下:
Untracked files : 未被追踪的文件,本例为 hello.txt 。
nothing added to commit but untracked files present :除了未被追踪的文件,现在没有什么可以提交到本地库的。
3.5、添加到暂存区
3.5.1、将工作区的文件添加到暂存区

git add 未被追踪的文件名
注意:只使用“git add”,不添加未被追踪的文件名,会将所有未被追踪的文件都添加到暂存区。
3.5.2、查看添加到暂存区后的状态

git status
状态信息说明如下:
- Changes to be committed :要提交的更改,本例为 hello.txt 这个新文件。
注意:如果不想将暂存区中的内容提交到本地库形成历史版本,可以使用“git rm --cached 文件名”命令将暂存区追踪的内容删除(工作区的内容不受影响)。
3.6、提交到本地库
3.6.1、将暂存区的文件提交到本地库

git commit -m "日志信息" 文件名
提示信息说明如下:
[master (root-commit) 624e314] :一旦提交就会形成不能删除的历史版本,624e314 为本例提交到本地库的(精简)版本号。
1 file changed, 1 insertion(+) :一个文件有改变,插入了一行。
create mode 100644 hello.txt :100表示文件类型为常规文件,644表示具体的文件权限。
3.6.2、查看提交到本地库的状态

git status
状态信息说明如下:
- nothing to commit, working tree clean :工作区的内容和本地库最新版本的内容一致,现在没有什么可以提交到本地库的。
3.7、修改文件
3.7.1、修改前的文件内容

3.7.2、修改后的文件内容

3.7.3、查看修改文件后的状态

git status
状态信息说明如下:
- Changes not staged for commit :未暂存提交的更改。
3.7.4、将工作区的文件添加到暂存区

git add 未被追踪的文件名
注意:只使用“git add”,不添加未被追踪的文件名,会将所有未被追踪的文件都添加到暂存区。
3.7.5、查看添加到暂存区后的状态

3.7.6、将暂存区的文件提交到本地库

git commit -m "日志信息" 文件名
提示信息说明如下:
- 1 file changed, 1 insertion(+), 1 deletion(-) :一个文件有改变,修改了一行(旧行删除,新行插入)。
3.7.7、查看提交到本地库后的状态

git status
3.8、删除文件
3.8.1、删除文件前

3.8.2、删除文件后

3.8.3、查看删除文件后的状态

git status
3.8.4、将工作区的文件添加到暂存区

git add 未被追踪的文件名
3.8.5、查看添加到暂存区后的状态

git status
3.8.6、将暂存区的文件提交到本地库

git commit -m "日志信息" 文件名
提示信息说明如下:
- 1 file changed, 1 deletion(-) :一个文件有改变,删除了一行(因为文件内容只有一行)。
3.8.7、查看提交到本地库后的状态

git status
3.9、历史版本
注意:因为我不小心做了多次版本穿梭操作,所以为了更好的演示效果,我重做了上述的操作,因此下文的版本号和上文的会不一样。
3.9.1、查看历史版本(精简)

git reflog
3.9.2、查看历史版本(详细)

git log
如图所示,详细的历史版本信息会展示完整的版本号和用户签名。
3.9.3、版本穿梭

git reset --hard 版本号
注意:版本号可以使用完整的,也可以使用精简的(前提是精简的版本号没有重复)。

如图所示,穿梭到第二次提交的版本后,被删除的文件在工作区恢复了,文件内容和第二次提交时的一致。
3.9.4、查看穿梭后的历史版本

git reflog
3、Git之常用命令的更多相关文章
- GIT 版本控制常用命令学习汇总
GIT 版本控制常用命令汇总 git version 查看当前git版本信息 git help 获取全部命令帮助信息 git help <command> 获取指定命令帮助信息 git c ...
- git log 常用命令及技巧
git log常用命令以及技巧 1.git log 如果不带任何参数,它会列出所有历史记录,最近的排在最上方,显示提交对象的哈希值,作者.提交日期.和提交说明.如果记录过多,则按Page Up.Pag ...
- Git基本常用命令
Git基本常用命令如下: mkdir: XX (创建一个空目录 XX指目录名) pwd: 显示当前目录的路径. git init 把当前的目录变成可以管理的git仓库,生成隐藏.git文件. git ...
- Git是什么、Git的功能、为什么versioncontrol用Git、Git的常用命令、Git的优缺点
Git是什么 git是目前世界上最先进的分布式版本控制系统(没有之一). Git是用于 Linux内核开发的版本控制工具.与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版 ...
- Git stash 常用命令
参考: Git: How to look at the stash Git学习笔记05--git stash Git stash 常用命令 1.git stash: 保存当前的工作进度: 2.git ...
- Git 基础 —— 常用命令
Git 基础学习系列 Git 基础 -- 安装 配置 别名 对象 Git 基础 -- 常用命令 Git 基础 -- 常见使用场景 Git基础 -- Github 的使用 git init 创建 Git ...
- git之常用命令
git之常用命令 1.下载远程仓库最新代码 $ git pull --rebase origin master 2.上传代码 $ git push origin master 3.退出编辑 ESC + ...
- git的常用命令。。
git的常用命令.. git help <command> 显示command的help git show 显示某次提交的内容 git show $id git co -- <f ...
- Git - Git基本常用命令
Git基本常用命令 mkdir: XX (创建一个空目录 XX指目录名) pwd: 显示当前目录的路径. git init 把当前的目录变成可以管理 ...
- Git的常用命令记录
Git的常用命令记录 1.与远程仓库建立连接,即关联一个远程库 git remote add origin git@server-name:path/repo-name.git; 2.查看当前分支 ...
随机推荐
- Vulkan的VkImage和OpenGL的Texture2D互转的3种方法
Vulkan的纹理和OpenGL的纹理之间共享的解决方案, 因为项目的功能需要同时引入OpenGL和Vulkan,又因为效率的影响必须想办法优化,两者之间需要互相访问互相转换的高效方案. Vulkan ...
- C# yyyyMMddHHmmss 格式的日期转换
C# yyyyMMddHHmmss 格式的日期转换 DateTime dtTimeEnd = DateTime.Now; if (!string.IsNullOrWhiteSpace(rspA.fin ...
- Scrapy框架(二)--持久化存储
持久化存储 scrapy的高性能持久化存储操作,有两种方式:基于终端指令的持久化存储 和 基于管道的持久化存储操作. 基于终端指令的持久化存储 保证爬虫文件的parse方法中有可迭代类型对象(通常为列 ...
- freemarker模板替换生成word
工具类 public static void createWord(Map<String,Object> dataMap, String templateName, String file ...
- vue安装及升级
先装好note.js 安装过程很简单,一直点下一步就ok了.1.1我们通过打开命令行工具(win+R),输入node -v查看node的版本,若出现相应的版本号说明你安装成功了 1.2.npm包管理器 ...
- 什么Java注释
定义:用于解释说明程序的文字分类: 单行注释:格式: // 注释文字多行注释:格式: /* 注释文字 */ 文档注释:格式:/** 注释文字 */ 作用:在程序中,尤其是复杂的程序中,适当地加入注释可 ...
- Niagara 物联网技术基础应用(文章修复中,不定时更新)
新手指南 前言 鉴于市面上有关Niagara物联网技术资料较少,笔者结合自生参加竞赛的经历编写此指南,该指南旨在让新手快速上手Niagara workbench 主要分以下几个模块讲解: 物联网软件平 ...
- 在System身份运行的.NET程序中以指定的用户身份启动可交互式进程
今天在技术群里,石头哥向大家提了个问题:"如何在一个以System身份运行的.NET程序(Windows Services)中,以其它活动的用户身份启动可交互式进程(桌面应用程序.控制台程序 ...
- git连接到https服务器时出现“gnutls_handshake() failed”
git连接到https服务器时出现"错误: gnutls_handshake()失败" 问题描述 当我尝试使用git连接到任何HTTPS服务器时(例如git clone),它会出现 ...
- P7086 题解
考虑把每个字符串的前 \(k\) 位和后 \(k\) 位看成点,字符串看成边,那么一个字符串前缀后缀至少有一个是相似群体的前缀后缀,看成这条边的两个端点至少有一个被选中. 那么这就变成了一个最小点覆盖 ...