这里省略了git的教程,而是罗列出了一些常用命令解释,方便快速回忆和查找命令的用法(ctrl+F查找)。 包含本地仓库常用命令,衔接的常用参数,远程仓库,分支管理,bug分支等。
补充一些相关内容以及后文提到的名词方便理解:
1、git提交的是修改。
2、工作区:在电脑里能看到的目录,比如一个test文件夹就是一个工作区。
3、版本库:git init创建仓库后工作区有一个隐藏目录`.git`,这个不算工作区,而是Git的版本库。
4、暂存区、分支:我们把文件往Git版本库里添加的时候,是分两步执行的:
第一步是用`git add`把文件添加进去,实际上就是把文件修改添加到暂存区;
第二步是用`git commit`提交更改,实际上就是把暂存区的所有内容提交到当前分支。
————【本地仓库】————
-
git log命令查看:显示从最近到最远的提交日志--pretty=oneline参数:简化信息,如果嫌git log输出信息太多看得眼花缭乱可以在其后添加此参数。
-
git reset --hard HEAD^命令:回退到上一个版本^,上上版本为^^,多个为~ N(如回退5个版本用~5) -
git reset --hard <commitID>:回到某个commit ID对应的的提交版本,如:git reset --hard 1094a -
git reflog用来记录你的每一次命令:即使关闭当前命令窗口重新打开可以查看之前的 操作,找到commit ID -
git status查看一下状态:modified: 表示被修改了,而从来没有被添加过的状态是Untracked。 -
git diff HEAD --<file name>(管理修改)命令可以查看工作区和版本库里面最新版本的区别(提交修改和未提交修改的文件区别)如:查看 readme.txt 文件git diff HEAD -- readme.txt -
git checkout -- readme.txt(撤销工作区修改)意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:(1)提交到暂存区的情况即git add 后进行的修改;(2)提交到当前分支中的情况即 git commit 后进行的修改。总之,就是让这个文件状态回到最近一次提交前的 git commit 或 git add 时的状态。 -
git reset HEAD <file>【撤销修改】 (撤销缓存区修改)可以把暂存区的修改撤销掉(unstage),内容重新放回工作区
————【远程仓库】————
-
git remote -v查看远程库信息 -
git remote rm origin删除远程库 -
git clone <仓库地址>远程仓库克隆到本地,如git clone git@github.com:your_name/your_repository.git
————【分支管理】————
-
git branch命令会列出所有分支,当前分支前面会标一个*号。 -
git checkout -b dev/git switch -c dev git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:
git branch dev
git checkout dev
-
git merge命令用于合并指定分支到当前分支 -
git branch -d <branch-name>删除指定分支
————【bug分支】————
-
git stash把当前工作现场“储藏”起来,等以后恢复现场后继续工作 -
git stash list命令看保存的工作现场 -
Git把stash内容存在某个地方,需要恢复一下,有两个办法:
git stash apply恢复,但是恢复后,stash内容并不删除,你需要用git stash drop来删除;( git stash apply stash@{0} 恢复指定的stash )
git stash pop恢复的同时把stash内容也删了
-
git cherry-pick <commit>命令,让我们能复制一个特定的提交到当前分支