概念:1.工作区 --- 目录
2.暂存区 -- 在.git文件中
3.版本库 -- 在.git文件中
git config --global 修改配置文件
git init 初始化版本库
git add 添加修改文件到暂存区中
git commit 将暂存区中的文件提交到版本库中
git status 查看工作区与暂存区中的文件修改状态
git log 查看历史提交记录(就是 git commit 记录,但不包含回退了(git reset)的版本) --graph 视图化 --abbrev--commit 信息略缩
git diff 查看工作目录中的文件与暂存区或版本库中的不同(修改地方)
git reflog 查看对版本库的操作(记住是版本库),reflog应该是来源于ref关键字--其效果是,当控制权传递回调用方法时,在方法中 对参数所做的任何更改都将反映在ref变量中
git reset 版本回退,会删除log中的记录,但不会删除reflog(可以说是参考日记)中的记录
git checkout -- 撤销修改内容,还原为缓存区或版本库中的存在的文件,首先判断缓存区中是否有对应的文件,再判断版本库中 是否有对应的文件
git remote add 增加一个远程版本库的信息
git push <远端库> <本地分支> 推送本地版本库代码到远端中
git clone 从远端中克隆版本库到本地
git checkout -b 创建分支并切换分支,不要-b就是切换分支
git branch 查看版本库中的分支,加上分支名就是创建分支,-d参数是删除分支,-D参数是强行删除分支
git merge 合并指定分支到到当前分支
git stash 把当前工作现场“储藏”起来,等以后恢复现场后继续工作(切换分支时需要保持工作区域干净,所以有这个功能)
git pull 拉取远端分支代码
git tag <name> 某次提交的快照
git show <tagname> 标签信息
git push origin <tagname>可以推送一个本地标签
git push origin --tags可以推送全部未推送过的本地标签
git tag -d <tagname>可以删除一个本地标签
git push origin :refs/tags/<tagname>可以删除一个远程标签
git 版本库中只记录不同的部分,Fork类似于复制