项目开发git使用流程总结

1.开发代码前怎么拉取分支:

git init 本地仓库初始化
git clone 仓库地址
git remote add "仓库地址" 添加远程版本库
git branch -a查看本地和远程分支,-r查看所有远程分支
git checkout -b dev-lmf 创建本地分支
git add . 暂存分支到本地:
git commit -m "ss" 提交分支到本地
git push origin -u dev-lmf


2.怎么合并分支并提交到远程

步骤:提交到远程:先将本地分支内容同步到远程分支,再切换到master分支,将新创建分支合并到master后,在
先切换分支
git push origin -u dev-lmf 本地分支同步到远程
git checkout master 切换到要合并到的分支
git pull 拉取最新代码
git merge dev-lmf --no-commit --no-ff 合并分支,注意尽量不要直接使用git merge
git add .
git commit -m ''提交
git push 提交到远程


git merge和git rebase区别:
git merge 本地分支,例如a和b分支内容合并到master上,直接把a和b的节点添加到master中,要减少冲突时用
git rebase 本地分支,例如a和b分支内容合并到master上,会将ab整合在一起并创建新的节点,要整洁美观用
一般使用merge比较多


3.怎么解决合并和的冲突


冲突的产生,相同分支不同人提交不同的代码

解决冲突:
提交远程都没有git pull拉取最新代码时:
和另一位开发的同事沟通,需要留下哪段代码?然后重新更改代码后,重新提交本地并推送远程,一般git merge时会提示有冲突需要解决
一般开始开发或者提交前都要先拉取最新代码


4.线上问题解决流程

要基于生产分支创建本地分支,解决bug后再提交:
基于远程某个分支创建新的分支 git checkout -b hotfix-lmf-1219 origin/master
然后解决bug后,再同步到远程(保证解决的问题代码在远程可查): git push origin -u hotfix-lmf-1219
再切换到master(要解决冲突的分支)进行合并 git checkout master
合并: git merge hotfix-lmf-1219 --no-commit --no-ff

5.线上出现大的事故,整个系统崩了,需要进行回滚

先回退到上一个版本
git log 查看当前分支的提交记录
git reset --hard 上一个版本的hash值 ;然后回退到之前提交的版本。即可回退到上一个版本
git push -f origin master 强制提交到远程。因为远程还有回退之前的代码随意需要进行强制提交-f : git push -f origin master
注意这种方式风险很大,会将之前的所以代码全部强制删除

猜你喜欢

转载自blog.csdn.net/qq_34569497/article/details/135081280