git安装与入门基本操作

一、安装
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
安装完成后:
这里写图片描述
二、基本配置
1.设置用户名和邮箱
安装成功之后,右键点击桌面空白位置===》Git Bash Here
或者双击Git Bash图标
这里写图片描述
这里写图片描述
**git config –global user.name 用户名
git config –global user.email 邮箱地址**
2.修改用户信息
vim ~/.gitconfig
再移动光标修改相应的用户名或密码,按Esc :wq 退出;
输入:git config –list 查看信息。
3.删除用户信息
如果有多个用户,想删除指定的用户可以使用
**git config –global –unset user.name 用户名
git config –global –unset user.email 邮箱**
这里写图片描述


三、常用的命令
$ pwd (查看命令行位于的工作目录)
1创建本地仓库
这里写图片描述
2查看新创建的文件
这里写图片描述
3使用git add让文件被仓库管理(进入暂存区)
这里写图片描述
4将文件提交到历史仓库
-m代表存在消息必填
这里写图片描述
5对文件进行修改
$ vim demo.txt
6对比文件差异
这里写图片描述

7.撤销修改
这里的撤销指的是,我们修改的文件还没有被提交到暂存区!
这里写图片描述

四、工作区,暂存区,历史仓库
1.基本描述
我们使用了git init初始化git仓库之后,在文件夹中会多出一个.git隐藏文件夹!
这个.git隐藏文件夹就是git的**版本库**repository。
我们创建的myRepertory文件夹就是工作区 working directory。
暂存区:暂存区可以理解为一个虚拟工作区,这个虚拟工作区会跟踪工作区的文件变化(增删改等操作)。这个工作区的位于.git文件夹下的index目录下。
这里写图片描述

1.当需要对工作区的修改提交到版本库前,暂存区会与工作区进行差异比较,如果工作区与暂存区的文件不一致,那么需要同步工作区的修改到暂存区,然后才可以提交到版本库;

2.暂存区可以说是工作区和版本库的桥梁,我们对文件的修改可以先放在暂存区中,如果后悔了不仅可以非常方便撤销,而且不会影响到现有的版本库;
这里写图片描述
3.只要我们使用过git add,那么文件就会被跟踪,暂存区跟踪记录了工作区的文件名和文件状态(在index文件中会记录修改时间,文件大小等信息);
这里写图片描述
4.下次我们对文件进行修改的时候,会比较时间戳来判断文件是否被修改,
在执行git status时,首先会到.git/index下查看被跟踪的工作区文件的时间戳,如果发现自上次执行git add(执行git add可以让工作区的文件被跟踪)以来,文件的时间戳发生了变化,那么判断文件发生了改动,于是会与暂存区的原始文件与工作区中的该文件进行差异比较,如果发现两个文件内容不一致,那么就给出差异信息。
这里写图片描述
五、查询历史提交记录
1.git log
这里写图片描述
2.git reflog
这里写图片描述
3.git log和git reflog的区别:

01.Git log查询的是commit id,作者以及提交时间和提交信息
但是不包括之前删除的历史记录
02.git reflog查询的是简洁的commit id和提交信息
也会包含之前删除的历史记录

4.回退历史版本
git reset 版本ID
这里写图片描述
5.撤销修改
git checkout demo.txt
这里写图片描述
6.误删除工作区的文件
这里写图片描述

7.真正删除文件
git rm -r 递归删除(通常在删除目录时使用)
git rm -f 删除
m:message.
这里写图片描述
查看删除的状态:
这里写图片描述

选项 说明
-p 按补丁格式显示每个更新之间的差异。
--stat 显示每次更新的文件修改统计信息。
--shortstat 只显示 --stat 中最后的行数修改添加移除统计。
--name-only 仅在提交信息后显示已修改的文件清单。
--name-status 显示新增、修改、删除的文件清单。
--abbrev-commit 仅显示 SHA-1 的前几个字符,而非所有的 40 个字符。
--relative-date 使用较短的相对时间显示(比如,“2 weeks ago”)。
--graph 显示 ASCII 图形表示的分支合并历史。
--pretty 使用其他格式显示历史提交信息。可用的选项包括 oneline,short,full,fuller 和 format(后跟指定格式)。

限制输出长度
默认不用任何参数的话,git log 会按提交时间列出所有的更新,最近的更新排在最上面。看到了吗,每次更新都有一个 SHA-1 校验和、作者的名字 和 电子邮件地址、提交时间,最后缩进一个段落显示提交说明。
git log 有许多选项可以帮助你搜寻感兴趣的提交,接下来我们介绍些最常用的。
我们常用 -p 选项展开显示每次提交的内容差异,用 -2 则仅显示最近的两次更新:

$ git log -p -2

除了定制输出格式的选项之外,git log 还有许多非常实用的限制输出长度的选项,也就是只输出部分提交信息。之前我们已经看到过 -2 了,它只显示最近的两条提交,实际上,这是 - 选项的写法,其中的 n 可以是任何自然数,表示仅显示最近的若干条提交。不过实践中我们是不太用这个选项的,Git 在输出所有提交时会自动调用分页程序(less),要看更早的更新只需翻到下页即可。

$ git log --since=2.weeks

另外还有按照时间作限制的选项,比如 –since 和 –until。下面的命令列出所有最近两周内的提交:

选项 说明
-(n)    仅显示最近的 n 条提交
--since, --after 仅显示指定时间之后的提交。
--until, --before 仅显示指定时间之前的提交。
--author 仅显示指定作者相关的提交。
--committer 仅显示指定提交者相关的提交。

猜你喜欢

转载自blog.csdn.net/pojpoj/article/details/82734668