Git 分支管理、GitLab
一、切换分支
环境:
生产环境(用户使用)
测试环境(测试使用)
开发环境(开发使用)
版本分支管理:
master:主分支 (主分支的代码不能有任何的问题,因为它是往线上环境部署的代码)
test分支:测试环境的代码,也就是说开发在dev分支上开发新功能完成后,在test分支上 会把dev分支的代码合并到test分支
dev分支:开发自己调试的环境

主分支用于存放对外发布的版本,任何时候在这个分支拿到的,都是稳定的分布版;开发分支用于日常开发,存放最新的开发版。
(开发分支是预发分支(测试分支)的"上游",预发分支又是生产分支的"上游"。代码的变化,必须由"上游"向"下游"发展。正常的逻辑是开发在dev分支 把自己的代码部署到开发环境中,测试在test分支 中合并dev分支的内容 并且部署到测试环境进行测试,测试完成之后,开发把代码合并到主分支,测试对主分支的代码也需要进行测试,因为合并的过程可能文件缺失 文件被删、文件冲突)
查看当前分支:
git branch
(*星号在哪个分支的前面,就说明当前在哪个分支)

创建分支:
git branch 分支名称
切换分支:
git checkout 分支名称
合并分支:
git merge 分支名
(上面的操作:我们进入了dev分支后对文件进行了修改)
模拟场景A:
dev的代码合并到test分支:
1、先切换到test分支
2、在test分支上,合并(加上)dev分支的代码


模拟场景B:
合并到master分支,往线上环境部署:
1、先切换到master
2、test分支合并到master


总结:当前所在的分支不同,文件的内容也不同,我们通过命令进入了哪个分支,在本地修改的就是哪个分支的内容。如果哪个分支需要合并别的分支的内容,就要先进入哪个分支,再使用合并命令,添加别的分支的内容。
gitlab私有云
平台:http://47.95.142.233/dashboard/projects#login-pane
注册:rw222@qq.com jiarq 八位
在平台复制要克隆的仓库地址

在本地进行编辑:(每次本地编辑后都要add 和commit !! 这里我新建了一个txt文件)

把本地的代码提交到平台:
本地与GitLab平台之间缺少通信的信任,所以需要配置密钥:
1、进入仓库, 先生成密钥 ssh-keygen -t rsa -C "邮箱@qq.com"
2、在GitLab配置密钥 在本地找到生成的密钥 配置到GitLab的ssh-key

远程提交到平台
git push
当git push的时候出现 ! [remote rejected] master -> master (pre-receive hook declined) 那么说明没有权限提交,需要联系仓库的负责人
如果有权限还不能push,就需要先同步(把平台的内容同步到本地)再push(远程提交)
平台的内容同步到本地
git pull
git pull origin master --allow-unrelated-histories








浙公网安备 33010602011771号