代码管理 ,git 命令整理

//先要理解这四个概念,这是提交代码的流动轨迹:
1.工作区(编辑器)-经过add到2-  
2.暂存区 (缓存)- 经过commit3-
3.本地仓库 (本地项目)-经过 push4-
4.远程仓库 (线上项目 )


//拉取远程(这里默认拥有项目权限)
$ git clone  <项目地址>                                    //拉取远程分支,这里默认是master分支
$ git checkout -b <分支名称> /origin/<分支名称>                //拉取远程分支(非master)到本地,比如要拉取dev_1.0.0的分支到本地 : git checkout -b dev_1.0.0  /origin/dev_1.0.0


//分支之间:切换,添加,删除
$ git branch -a                                        //查看所有分支
$ git checkout <需要切换到的分支名称>                        //切换到某个分支 比如master(master也是分支,只是一般作为项目的线上发布版本,以它为主干)

$ git branch <新建本地的分支名称>                        //新建本地的分支
$ git branch -D <删除本地分支的名称>                        //删除本地的分支

$ git push --set-upstream origin <需要提交到远程的分支名称>    //将新建的本地分支提交到远程
$ git push - - delete origin <需要删除的远程分支名称>            //删除远程的分支


//合并分支
$ git merge <分支名称A>                                //把分支A合到当前目录,注意是往当前目录合


//当前分支:提交
$ git add .                                            //把编辑器里修改的内容提交到缓存
$ git status                                            //查看缓存里 将要提交到本地仓库的内容  , 检验编辑器的内容是否都进入了缓存
$ git commit -m ‘提交日志’                                //把缓存里的内容提交到本地仓库
$ git push                                            //把本地仓库的内容 提交到远程仓库
$ git log - -stat -3                                        //查看远程最新提交的日志 的前三条 , 检验本地提交的内容是否提交到了远程


//当前分支:查看
$ git diff                                                //查看 编辑器和缓存 的差异
$ git diff - -cached                                        //查看 缓存和本地仓库 的差异
$ git diff <分支名称> origin/<远程分支名称>                    //查看 本地仓库和远程仓库 的差异


//当前分支:撤销
$ git checkout . 或者 git reset --hard  或者 git reset            //撤销 git add . 的操作
$ git reset --hard origin/master                            //撤销 git commit -m ‘xxx’的操作
$ git reset --hard HEAD^  或者 git push -f                    //撤销 git push的操作

备注:注意里面的‘--’编辑器里出来的 可能有差异,贴到命令行里的话,请自行手输下。

原文地址:https://www.cnblogs.com/cynthia-wuqian/p/8036560.html