美文网首页
git其他命令行的区别和使用

git其他命令行的区别和使用

作者: 橙子晓 | 来源:发表于2018-06-04 21:44 被阅读22次

git维护的代码分为三个部分:当前工作区,index,git仓库

git3.png
工作区:git的工作目录是保存当前正在工作的文件所在的目录;
Index:git 索引是工作目录和git库目录之间的暂存区,staging area;
git仓库,就是commit之后的文件,所有的提交都保存这个地方。

1. git reset --hard xxx

彻底回退到某个版本,本地的源码也会变为上一个版本的内容,撤销的commit中所包含的内容更改被抹除掉。

  • 使用 git log命令查看提交的版本号,如果需要撤销最后一次提交,回退到某个版本,需要执行命令 git reset --hard 需要回退的版本号
    QQ图片20180604205329.png
  • 注意
    上述命令执行成功之后,会彻底返回到回退前的版本状态,新的变更会丢失。对于部分发生了变化,但是变化部分的文件夹存在未提交的文件可能导致目录非空而删除失败,此时需要自行处理。

2. git reset --soft xxx

回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可

  • 使用 git log命令查看提交的版本号,如果需要撤销最后一次提交,回退到某个版本,需要执行命令 git reset --soft 需要回退的版本号
    QQ图片20180604211913.png

3. git revert xxx

撤销某次操作,此次操作之前和之后的commit和history都会保留,并且把这次撤销

  • git revert HEAD 撤销前一次 commit
  • git revert HEAD^ 撤销前前一次 commit
  • git revert commit 撤销指定的版本

相关文章

网友评论

      本文标题:git其他命令行的区别和使用

      本文链接:https://www.haomeiwen.com/subject/hvwesftx.html