自己本地可以做网站服务器,展厅设计服务商,wordpress如何调用分类目录,网站开发运行环境Git项目合并实践
一、前言
环境
操作系统#xff1a;Windows 10 专业版
代码托管平台#xff1a;Gitee
场景 同一个项目#xff0c;在某一个时间点#xff0c;被另外一个团队拷贝和修改#xff0c;并且代码不在同一个仓库#xff0c;最后需要合并项目 不是同一个项…Git项目合并实践
一、前言
环境
操作系统Windows 10 专业版
代码托管平台Gitee
场景 同一个项目在某一个时间点被另外一个团队拷贝和修改并且代码不在同一个仓库最后需要合并项目 不是同一个项目理论上更好处理因为需要解决的文件冲突数会更少 gitee 官网https://gitee.com/explore ssh-keygenhttps://linux.die.net/man/1/ssh-keygen Git 入门和使用实践https://blog.csdn.net/u011424614/article/details/113607793 二、正文
1.生成ssh公私钥
ssh-keygen -t rsawindows 默认生成目录C:\Users\Administrator.ssh Linux 默认生成目录~/.ssh -t 密钥的类型分别是RSA 和 DSA -C 密钥的注释一般填写邮件或用户名等 -f 指定密钥生成路径 如ssh-keygen -t rsa -C “userz” -f D:\giteessh\id_rsa 2.创建gitee仓库
Gitee 新建两个项目的仓库得到两个仓库链接例如
gitgitee.com:abc/Test123.git
gitgitee.com:abc/Test456.git3.本地仓库
初始化本地仓库并将项目文件提交到本地仓库
# 进入项目根目录Test456 执行一样的操作
cd Test123
# 初始化 git 本地仓库
git init
# 将全部文件添加到暂存区
git add .
# 提交到本地仓库-m 填写备注
git commit -m first commit4.远程仓库
关联远程仓库并提交项目文件到远程仓库
# 进入项目根目录Test456 执行一样的操作
cd Test123
# 添加远程仓库注意修改远程仓库地址
git remote add gitgitee.com:abc/Test123.git
# 提交项目文件到远程仓库
git push -u origin master5.下载主项目
将 Test456 的代码合并到 Test123
git clone gitgitee.com:abc/Test123.git6.合并项目
主项目关联被合并项目的远程仓库
# 下载的主项目的根目录
cd Test123
# 添加被合并项目的远程仓库
git remote add merge_branch gitgitee.com:abc/Test456.git
# 查看当前项目的远程仓库这时可以看到两个远程仓库的 fetch 和 push 地址
git remote -v
# 拉取被合并项目的代码
git fetch merge_branch
# 创建并切换分支
git checkout -b dev merge_branch/master
# 切换回主分支
git checkout master
# 合并分支
git merge --no-ff --allow-unrelated-histories dev7.解决冲突
合并后通过 git status 指令查询需要处理冲突的文件Unmerged paths 的 both added 提示的文件处理方式使用 Notepad 或 IDEA 之类的编辑器删除冲突的代码
git status输出
On branch master
Your branch is up to date with origin/master.You have unmerged paths.(fix conflicts and run git commit)(use git merge --abort to abort the merge)Changes to be committed:modified: pom.xmlnew file: src/main/resources/application-prod.ymlUnmerged paths:(use git add file... to mark resolution)both added: src/main/java/com/test/abc/DataHandle.javaboth added: src/main/java/com/test/abc/DataType.java8.提交到本地仓库
冲突文件修改后提交到本地仓库
git add src/main/java/com/test/abc/DataHandle.java
git commit -m merge9.提交到远程仓库
冲突文件全部修改完后提交到远程仓库
git push -u origin master