操作系统:Windows 10 专业版
代码托管平台:Gitee
同一个项目,在某一个时间点,被另外一个团队拷贝和修改,并且代码不在同一个仓库,最后需要合并项目
不是同一个项目,理论上更好处理,因为需要解决的文件冲突数会更少
gitee 官网:https://gitee.com/explore
ssh-keygen:https://linux.die.net/man/1/ssh-keygen
Git 入门和使用实践:https://blog.csdn.net/u011424614/article/details/113607793
ssh-keygen -t rsa
windows 默认生成目录:C:\Users\Administrator.ssh
Linux 默认生成目录:~/.ssh
-t 密钥的类型,分别是:RSA 和 DSA
-C 密钥的注释,一般填写邮件或用户名等
-f 指定密钥生成路径
如:ssh-keygen -t rsa -C “userz” -f D:\giteessh\id_rsa
git@gitee.com:abc/Test123.git
git@gitee.com:abc/Test456.git
# 进入项目根目录,Test456 执行一样的操作
cd Test123
# 初始化 git 本地仓库
git init
# 将全部文件添加到暂存区
git add .
# 提交到本地仓库,-m 填写备注
git commit -m "first commit"
# 进入项目根目录,Test456 执行一样的操作
cd Test123
# 添加远程仓库,注意:修改远程仓库地址
git remote add git@gitee.com:abc/Test123.git
# 提交项目文件到远程仓库
git push -u origin "master"
git clone git@gitee.com:abc/Test123.git
# 下载的主项目的根目录
cd Test123
# 添加被合并项目的远程仓库
git remote add merge_branch git@gitee.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 dev
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 ..." to mark resolution)both added: src/main/java/com/test/abc/DataHandle.javaboth added: src/main/java/com/test/abc/DataType.java
git add src/main/java/com/test/abc/DataHandle.java
git commit -m "merge"
git push -u origin "master"
上一篇:C++之智能指针