03_Git添加、删除、修改与日志

对于git commit操作,如果需要描述的内容比较短,那么我们可以在命令后面加-m"描述内容"语句来进行描述,就会直接对这次提交进行描述,而不会进入vim编辑。

03_Git添加、删除、修改与日志_第1张图片
我们再次修改文件,然后操作

Git的添加

在基本命令实操中我们已经有一个添加的完整流程,这里直接截图给看一下,我们添加的新的test2.txt文件。

03_Git添加、删除、修改与日志_第2张图片
这里新添加了一个test2文件到版本库

Git的删除

在上面我们已经添加了新的文件到Git的版本库中,我们可以git log查看操作日志,那么我们这个需要删除这一次添加,应该如何做?(假设我们是误提交)

  • git rm:Git提供给我们一个类似Linux命令的指令,用来删除文件。
    03_Git添加、删除、修改与日志_第3张图片
    我们仔细分析一下操作
  • 首先我们使用了git rm test2.txt来删除这个文件,然后我们使用git status发现,Git的删除文件,依然走的是先操作(删除)再提交(描述这次操作)。文件已经被成功删除,但是如果还未提交到版本库,我们依然可以用git reset HEAD test2.txt来取消这次操作,然后再使用git checkout -- test2.txt来恢复这次删除的操作。
  • 我们现在再来成功的删除一次,然提交到版本库


    03_Git添加、删除、修改与日志_第4张图片
    成功删除并提交到版本库

    03_Git添加、删除、修改与日志_第5张图片
    可以看到日志文件也记录了这次删除
  • 当我们使用操作系统提供的命令去删除文件后


    03_Git添加、删除、修改与日志_第6张图片
    我们依然可以使用checkout来取消
  • git rm:1.删除了一个文件。2.将被删除的文件纳入到暂存区(stage),也就是说这个命令同时完成了两件事。如果恢复被删除的文件,需要执行两个操作:git reset HEAD -- 文件名(将删除的文件从暂存区恢复到工作区),git checkout -- 文件名(将工作区中的修改丢弃掉,也就是取消这次操作)
  • rm:只删除了文件,这个时候我们执行git commit提交是提交不了的,因此我们还需要再使用命令把它纳入到暂存区才能进一步操作。如果要取消这次删除,只需要git checkout -- 文件名(把工作区的删除操作取消掉)
  • git reset HEAD -- 文件名:将删除(不一定是删除,这里的例子是一次删除操作)的文件从暂存区恢复到工作区
  • git checkout -- 文件名:将工作区中的修改丢弃掉,也就是取消这次操作

Git的重命名

如果在我们的工程文件中,觉得一个文件的名字不是很到位,我们需要修改它

  • git mv:将一个文件移动到另一个地方,在当前的目录下移动,就相当于重命名。
    03_Git添加、删除、修改与日志_第7张图片
    我们依然来逐步分析
  • 我们成功的用git mv命令把文件重命名了,然后我们使用git status查看状态,发现暂存区里面已经有了这一次操作,然后我们依然尝试把文件从暂存区拿回来(取消这次操作)git reset HEAD text.txt,然后再查看状态发现,出现了两个文件,一个是新文件,一个是有删除操作的工作区旧文件,那么我们可以明白,Git中的重命名操作就是删除旧文件然后创建新文件(改过名字的),那么我们就可以这样取消这次改动:
    03_Git添加、删除、修改与日志_第8张图片
    取消改动,就是把所有文件拉到工作区,再把新文件删除
  • 那么正常的改名流程应该是如下的:


    03_Git添加、删除、修改与日志_第9张图片
    commit提交后,提示0行增加,0行删除,名字修改
  • 那么我们采用Linux自带的重命名命令mv,会发现,同样的是删除旧的文件,增加新的改过名的文件,但是增加的文件是不在暂存区的(未追踪)。
    03_Git添加、删除、修改与日志_第10张图片
    我们能注意到新增的是未追踪的文件

Git commit的修改

在一次提交中,我不小心把git commit -m"写错了"的描述信息写错了,我们该如何修改?

  • git commit --amend -m"正确的描述":把上次提交时的描述再次修改一次。(同一次提交只是描述被重写了)
    03_Git添加、删除、修改与日志_第11张图片
    日志里上一次描述信息是rename ...

    现在我们修改它

    03_Git添加、删除、修改与日志_第12张图片
    修改成功

Git的日志说明

查看日志的方式是git log,按q是退出日志

  • 进入log后,按空格是到末尾
  • ctrl+f是往下走,ctrl+b是往上走
  • git log -n:n是数字,代表查看最近n条的日志
  • git log --pretty=oneline:以一行的形式查看日志(简略版)

你可能感兴趣的:(03_Git添加、删除、修改与日志)