git分支开发
线上有三个分支:master、java、php分支。如下图

其中master分支:空白

php分支:空白

Java分支:

1 需求一:
拉取php分支代码到本地,创建a.txt文件,b.txt文件并提交到远端;





修改配置文件:
回车进行编辑:

按Esc退出编辑,按:wq! 退出。
然后进行查看状态,并提交:


假设a.txt 是一个项目,b.txt 是另外一个项目。现在你在做第一个项目a.txt,做了一半了,忽然,另外一个项目b.txt的bug需要你修改,任务比较紧急,此时你需要先暂停a.txt 的开发,去开发b项目,处理这个bug需要修改a.txt文件,编辑b.txt以及添加b1.txt文件。
思路:在本地php的分支上面在创建两个分支,一个开发a项目,一个开发b项目,最后在合并merge到php这个分支上,进行提交推送。



查看:

此时需要及时处理b项目的bug,编辑b.txt,修改a.txt文件以及添加b1.txt文件


查看a.txt是内容,看看能不能看到a分支上提交刚刚提交的代码?

答案是:并看不到刚刚在a分支上面对a.txt文件的编辑的内容。




注意这里merge前需要先pull

Merge合并操作:其实都是先合并到本地分支,再推送到远端相应的分支。

此时,bug修改完了,可以先提交代码到远端了:

查看远端分支情况:





假设你之前没有解决过冲突;
思路:根据提示,走着看看着走:

根据给出的提示:
执行 git merge –abort :回到合并前的状态;
既然说a.txt 文件冲突,那就查看a.txt文件,进行手动解决冲突:


查看远端代码:






发现a分支,与b分支还是之前的代码,并没有更新;
要想实现分支与php代码一直,需要merge:
同步php本地仓库到本地a分支代码仓库:


还是空空如也。



查看远端分支:

终端查看:已经合并上去了。

git clone [–b 远端分支名] https://github.com/vhviqd/java26.git
其中[]表示可选,如果不写,默认是master分支。
git push origin 本地分支名

若想创建一个远端分支名与本地分支名不一样的。
git push origin 本地分支名:远端分支名

git push origin :远端分支名

git reflog

git reset --hard 版本号


利用版本切换可以使代码回退到之前的版本。只是本地分支对应的仓库的版本回退,并不涉及远端,只有push推送了,才会更新也断代码。
git pull :更新本地代码,使得与远端代码保持一致
git push :把本地代码推送到远端分支。
原文:https://www.cnblogs.com/vhviqd/p/11488691.html