git

git init

创建一个目录

鼠标右击Git Bash Here,出现黑窗口,通过命令 git init 把这个目录变成git可以管理的仓库,即版本库。

git add

在版本库下有个文件改动,git add 文件,将文件添加到暂缓区,没有任何提示,说明已经添加成功了。

git commit -m "提交的注释"

在git add之后,git commit -m "提交的注释" 将改动过的文件提交到版本库中去。

git status

查看当前的状态,查看是否还有没有提交的文件。如果已经commit,则显示没有文件没提交。

如果修改了文件,则显示文件已经被修改,但是没有提交修改。

接下来,想看看修改了什么内容。则用到了git diff。

git diff

git diff可以知道我们修改了什么文件。

知道了修改了什么文件,则提交修改git add 文件,提交文件git commit 文件。

版本回退

git reset  –hard HEAD^

git log命令显示从最近到最远的显示日志,我们可以看到最近三次提交,最近的一次是,增加内容为333333.上一次是添加内容222222,第一次默认是 111111.如果嫌上面显示的信息太多的话,我们可以使用命令 git log –pretty=oneline

现在我想使用版本回退,git reset  –hard HEAD^,回退到上上个版本,则git reset  –hard HEAD^^,回退多个版本则git reset  –hard HEAD~n,n则代表数字。

已经回退到上上个版本,但是现在又想回退到上个版本,则git reset  –hard 版本号,通过git log可以查看版本号。

但是现在的问题假如我已经关掉过一次命令行或者333内容的版本号我并不知道呢?要如何知道增加3333内容的版本号呢?

可以通过如下命令即可获取到版本号:git reflog  

git reflog  

通过commit的时候,添加的注释就可以知道,改动的版本所对应的版本号。

 

工作区与暂存区的区别

工作区:即git init的那个文件夹

暂存区:工作区有一个隐藏目录.git,这个不属于工作区,这是版本库。其中版本库里面存了很多东西,其中最重要的就是stage(暂存区)还有Git为我们自动创建了第一个分支master,以及指向master的一个指针HEAD。

我们前面说过使用Git提交文件到版本库有两步:

  第一步:是使用 git add 把文件添加进去,实际上就是把文件添加到暂存区。

  第二步:使用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支上。

 

撤销修改

在未commit之前的操作

在我未提交之前,我发现添加5555555555555内容有误,所以我得马上恢复以前的版本,现在我可以有如下几种方法可以做修改:

第一:如果我知道要删掉那些内容的话,直接手动更改去掉那些需要的文件,然后add添加到暂存区,最后commit掉。

第二:我可以按以前的方法直接恢复到上一个版本。使用 git reset  –hard HEAD^

但是现在我不想使用上面的2种方法,我想直接想使用撤销命令该如何操作呢?首先在做撤销之前,我们可以先用 git status 查看下当前的状态。如下所示:

可以发现,Git会告诉你,git checkout  — file 可以丢弃工作区的修改,如下命令:

git checkout  - -  readme.txt

用git checkout -- 文件,有两种情况。

  1. readme.txt自动修改后,还没有放到暂存区,使用 撤销修改就回到和版本库一模一样的状态。
  2. 另外一种是readme.txt已经放入暂存区了,接着又作了修改,撤销修改就回到添加暂存区后的状态。

对于第二种情况,我想我们继续做demo来看下,假如现在我对readme.txt添加一行 内容为6666666666666,我git add 增加到暂存区后,接着添加内容7777777,我想通过撤销命令让其回到暂存区后的状态。如下所示:

注意:命令git checkout — readme.txt 中的 — 很重要,如果没有 — 的话,那么命令变成创建分支了。

删除文件

在当前目录下,rm 文件一般情况下,可以直接在文件目录中把文件删了,或者使用如上rm命令:rm b.txt ,如果我想彻底从版本库中删掉了此文件的话,可以再执行commit命令 提交掉。

只要没有commit之前,如果我想在版本库中恢复此文件如何操作呢?

可以使用如下命令 git checkout  — b.txt,如下所示:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值