前言:
习惯了可视化操作git,就把git命令忘得差不多了,但是有些东西还必须命令解决。今天就是遇到了分支合并,代码回滚和代码强制提交。可视化操作不来,只能用git命令操作。
先一步步介绍:
一:代码的基本提交:
//添加到暂存区
git add .
git commit -m '提交的备注信息'
//提交到pa_zf分支上
git push -u origin pa_zf
二:代码分支合并(下面以master和pa_zf两个分支为例,将pa_zf合并到master上)
①:切换到你需要的分支(代码合并到哪就切换到哪个分支,切换好后,最好再拉取下代码)
git checkout master
git pull origin master//保险切换分支手再拉取下
②:将pz_zf合并到master
git merge pa_zf//整个分支合并
git cherry-pick 'commitId'//合并某个提交信息
git cherry-pick 'commitId'^..'commitId'//合并连续的commit到某一个分支
③:查看状态
git status
④:提交代码
git push origin master
三:代码回滚
$ git reset --hard HEAD^ 回退到上个版本
$ git reset --hard HEAD~3 回退到前3次提交之前,以此类推,回退到n次提交之前
$ git reset --hard commit_id 退到/进到 指定commit的id
四:代码强制提交(一般和回滚配合使用,因为代码回滚了之后,你提交的时候需要覆盖远程git代码,在提交之前git会提示你先拉取,这样又把代码从新拉下来了,你回滚的没用了)
//将pz_zf的分支回滚后再强制提交
git push -u origin pa_zf -f
五:代码暂存(切换分支的时候,需要保持当前的分支树工作区干净才能切换分支,为了当前的未完成的代码不提交,可使用暂存后切换)
//1.首先将代码提交到暂存区
git add .
git commit -m '描述'
//2、暂存,这时就会看到工作区修改文件已经暂存了
git stash
//当另一个分支的维护完毕,切回到开发分支时,将暂存文件取出
git stash apply