Git仓库的创建和回退

版权声明:本文为博主原创文章,转载请声明出处并添加原文链接。 https://blog.csdn.net/azsx02/article/details/78519822

仓库创建

  • git init 初始化一个仓库
  • git add
  • git commit -m

查看仓库状态

  • git status 查看仓库当前状态
  • git diff 查看修改内容

版本回退

  • git log 显示提交日志, git log –pretty=oneline 简洁的显示日志
$ git log --pretty=oneline
edfef899c3365a26d13681e03af6005a3153f163 (HEAD -> master) append GPL
10497110346c712cc452cd296cfdecd10fbd76d1 wrote a readme file

在Git中,用HEAD表示当前版本,上一个版本就是HEAD^,上上一个版本就是HEAD^^,
当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100
  • git reset 回退版本,HEAD^ 回退到上个版本,HEAD^^ 回到上上个版本。
$ git reset --hard HEAD^
HEAD is now at 1049711 wrote a readme file
回到指定commit id版本
$ git reset --hard edfef8
HEAD is now at edfef89 append GPL
  • git reflog 记录每一次的命令
$ git reflog
edfef89 (HEAD -> master) HEAD@{0}: reset: moving to edfef8
1049711 HEAD@{1}: reset: moving to HEAD^
edfef89 (HEAD -> master) HEAD@{2}: commit: append GPL
1049711 HEAD@{3}: commit (initial): wrote a readme file

回退原理

Git的版本回退速度非常快,因为Git在内部有个指向当前版本的HEAD指针,当你回退版本的时候,Git仅仅是把HEAD从指向append GPL:

HEAD指针

小结

  • HEAD指向的版本就是当前版本,因此,Git允许我们在版本的历史之间穿梭,使用命令git reset –hard commit_id。

  • 穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。

  • 要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。

猜你喜欢

转载自blog.csdn.net/azsx02/article/details/78519822