git 常用指令
-
初始化git仓库
git init -
添加到暂存区
git add 文件名 (添加某个文件)
git add . (添加所有工作区的文件) -
将暂存区的所有内容提交到当前分支上
git commit -m “更新内容” -
查看仓库状态
git status -
查看文件修改了的地方
git diff 文件名 -
查看之前提交的记录
git log
git log –pretty=oneline (一行展示) -
版本回退
git reset --hard HEAD^ (上上个版本HEAD^^ 。。。)
git reset --hard HEAD~100 (退回前100个版本)
git reset --hard 版本号 (可用于发现回退错误后,恢复到回退前的版本,使用下一条查看版本号) -
查看所有的提交版本(被回退的仍然可以查看)
git reflog -
丢弃工作区的修改(未放入暂存区的内容)
git checkout -- file -
将本地仓库和远程仓库关联
git remote add origin 远程仓库地址
远程仓库地址,需要注册git账户,设置ssh公钥,创建远程仓库,复制地址 -
第一次将本地仓库推到远程仓库
git push -u origin master (第一次加上-u,会将本地master分支和远程master关联) -
非第一次推送到远程仓库,并且将所有tag一起推送
git push origin master --tags
git push origin 分支名称 (推送某条分支) -
从远程仓库克隆项目到本地
git clone 远程仓库地址 -
创建分支
git checkout –b 分支名称 (创建并切换分支,相当于下面两条指令)
git branch 分支名称 (创建分支)
git checkout 分支名称 (切换到该分支)
git checkout –b dev origin/dev (将远程的dev分支拉下来,并创建本地dev分支) -
查看分支
git branch -
合并指定分支到当前分支上
git merge 分支名称
git merge –no-ff -m “注释” 分支名称(通常合并分支时,git一般使用”Fast forward”模式,在这种模式下,删 除分支后,会丢掉分支信息,现在我们来使用带参数 –no-ff来禁用”Fast forward”模式) -
删除分支
git branch –d 分支名称 -
隐藏当前的工作区(用于当前工作未完成,不能提交,却需要创建新分支,完成新分支的工作)
git stash -
恢复当前工作区
git stash pop(恢复并删除stash,或者使用如下两条指令)
git stash apply (恢复工作区)
git stash drop (删除stash中保存的) -
查看保存的工作区现场的记录
git stash list -
查看远程库的信息
git remote
git remote –v (查看详细信息) -
指定本地分支与远程分支(拉取时需要指定)
git branch --set-upstream 分支名称 origin 分支名称 -
拉取远程代码
git pull