[ ] 表示可写可不写
配置:
git config [--global] user.name '[name]'
git config [--global] user.email '[email address]'
启动:
git init [project-name] :创建或在当前目录初始化一个git仓库
git clone url:下载一个项目和他的整个代码历史
日常基本操作:
git init:初始化仓库,默认为master分支
git status:查看当前分支状态
git add.:提交全部发生修改的文件到暂存区
git add <具体某个文件路径+全名>:提交具体文件到暂存区
git reset HEAD:撤销add,撤销全部add的文件
git reset HEAD <文件名>:撤销某个add的文件
git commit -m '注释':提交代码到本地仓库中,并提交注释
git reset --soft HEAD^:仅撤回上次commit,回到add状态
git reset --hard HEAD^:撤回上次commit,并且撤回add状态(实际就是回退到上个版本)
git log:查看提交记录
git log [option]:所有参数都可以加上
[option]:
--all:显示所有分支
--pretty=oneline:将提交信息显示为一行
--abbrev-commit:使得输出的commit更简短
--graph:以图的形式输出
--git pull <远程仓库名称> <远程分支名称>:拉取远程仓库的分支与本地当前分支进行合并
--git pull <远程仓库名称> <远程分支名>:<本地分支名>:拉取远程仓库分支与本地某分支合并
--git reset --hard commitID:版本切换
--git reflog:查看已删除的记录
分支操作:
git branch:查看本地所有分支
git branch <新分支名>:基于当前分支,创建一个新的分支
git checkout <分支名>:切换分支
git checkout -b <新分支名>:基于当前分支,创建并且切换到新分支
git merge <目标分支名>:将目标分支合并到当前本地分支
git branch -d <分支名>:删除分支
远程仓库操作:
git remote add <远端名称> <仓库路径>:本地仓库与已创建的远程仓库对接
<远端名称>:默认是origin,取决于远端服务器设置
<仓库路径>:从远端服务器获取的url
git remote:查看远程仓库
git push <远端名称> <远端分支名>:把当前本地分支代码推送到远程仓库分支
git fetch [remote name] [branch name]:从远程仓库抓取代码到本地,不会进行合并
git pull [remote name] [barnch name]:从远程仓库拉取代码到本地,并合并代码
存储操作:
例如你正在修改bug01,突然来了一个更紧急的bug02,需要先修改bug02,但是bug01已经改了一半了,这时你就可以存储bug01修改的内容,等bug02修改完之后再释放保存的bug01修改,继续修改bug01.
增:
git stash -m '存储的注释':存储当前分支下的所有改动
git stash push [fiel1] [file2] -m '存储的注释':指定文件进行存储
查:
git stash list:查看所有的存储列表
git stash show <存储记录id>:查看指定存储记录下所有修改的文件
git stash show -p <存储记录id>:查看指定存储记录下所有修改的文件及其具体内容
删:
git stash clear:删除所有的存储
git stash drop <存储记录id>:删除指定存储记录
取:
git stash pop:释放最近一次的存储,并且删除该存储记录
git stash apply <存储记录id>:取出指定存储记录,不会删除该存储记录