Git学习笔记02_仓库操作

来源:互联网 发布:人工智能语音聊天软件 编辑:程序博客网 时间:2024/06/06 03:11

版本回退

  • git status,查看仓库工作区当前状态。
  • git diff,查看修改的内容。
  • HEAD指向的版本是当前版本,上一个版本是HEAD^,上100个版本是HEAD~100,Git的版本历史穿梭命令git reset --hard commit_id
  • 穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本。简化版git log --pretty=oneline
  • 要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。

工作区和暂存区

  • 工作区,即当前工作目录,工作区有一个隐藏目录.git,这个是Git的版本库。
  • Git的版本库,有stage(index)的暂存区,还有Git自动创建的第一个分支master,以及指向master的一个指针HEAD
  • 把文件添加到版本库,第一步用git add把文件添加进去,实际上是把文件修改添加到暂存区;第二步用git commit提交更改,实际是把暂存区的所有内容提交到当前分支。

管理修改

  • Git跟踪并管理的是修改,而非文件。git diff HEAD -- readme.txt查看工作区和版本库里面最新版本的区别。
  • Git跟踪修改,每次修改,如果不add到暂存区,那就不会加入到commit中。

撤销修改

  • git checkout -- readme.txt,把readme.txt文件在工作区的修改全部撤销,存在两种情况:一种是’readme.txt自修改后还没有被放到暂存区,如果撤销修改就回到和版本库一模一样的状态;一种是readme.txt已经添加到暂存区,又作了修改,如果撤销修改就回到添加到暂存区后的状态。
  • git reset HEAD file可以把暂存区的修改撤销掉(unstage),重新放回工作区。

删除文件

  • 在Git中,删除也是一个修改操作。
  • rm test.txt,删除工作区的文件。
  • git rm test.txt,从版本库中删除文件。
  • git checkout -- test.txt,用版本库的版本替换工作区的版本,无论工作区的版本是修改还是删除,恢复文件到最新版本后,会丢失最后一次修改后你修改的内容。
0 0