Git 把码云上被fork项目源码merge到fork出来的分支项目

简介: Git 把码云上被fork项目源码merge到fork出来的分支项目

        Git 把码云上被fork项目源码merge到fork出来的分支项目

  

需求描述

被fork的项目有更新代码,希望把更新的代码merge到fork分支项目

 

解决方法

1、clone fork分支项目到本地,并入切换当前分支为目标分支。

 

2、增加被fork项目源码仓库地址到你项目远程分支列表中),并将该仓库地址命名为upstream(当然也可以是其它),如下:

git remote add upstream https://github.com/srcRepo.git

 

其中 srcReop为被fork项目

 

3、取回远程主机被fork项目的全部更新

git fetch upstream

 

当然,也可以指定只取回目标分支

git fetch upstream remoteTargeBranch

 

4、合并取回的目标分支(例中为master)代码到本地当前分支

git merge upstream/master

 

至此,完成了本地代码的合并,接下来只需要push到fork项目的目标分支即可。

 

步骤3,步骤4也可以直接使用pull命令替代,合并为一个步骤,如下

git pull upstream master

 

实例

(例中使用ssh访问仓库)

 

进入对应项目的 git bash后执行的以下命令

 

cassmall@DESKTOP-O45PJTA MINGW64 /e/PrivateReops/CassTestManage (V2.0)

$ git remote add upstream git@gitee.com:xxxx/CassTestManage.git

 

cassmall@DESKTOP-O45PJTA MINGW64 /e/PrivateReops/CassTestManage (V2.0)

$ git remote -v

origin  git@gitee.com:laiy/CassTestManage.git (fetch)

origin  git@gitee.com:laiy/CassTestManage.git (push)

upstream        git@gitee.com:xxxx/CassTestManage.git (fetch)

upstream        git@gitee.com:xxxx/CassTestManage.git (push)

 

cassmall@DESKTOP-O45PJTA MINGW64 /e/PrivateReops/CassTestManage (V2.0)

$ git pull upstream master

remote: Enumerating objects: 64, done.

remote: Counting objects: 100% (64/64), done.

remote: Compressing objects: 100% (63/63), done.

remote: Total 64 (delta 0), reused 58 (delta 0)

Unpacking objects: 100% (64/64), done.

From gitee.com3:xxxx/CassTestManage

* branch            master     -> FETCH_HEAD

* [new branch]      master     -> upstream/master

Merge made by the 'recursive' strategy.

mytest.txt | 1 +

1 file changed, 1 insertion(+)

create mode 100644 mytest.txt

 

cassmall@DESKTOP-O45PJTA MINGW64 /e/PrivateReops/CassTestManage (V2.0)

$

 

说明

第二次开始,可以通过git客户端界面进行代码的合并操作,非常简单,如下指定远程主机和要pull的分支即可。

 

 

目录
相关文章
|
2天前
|
开发工具 git 开发者
vscode+git解决远程分支合并冲突
通过这些详细步骤,您可以掌握如何使用VSCode和Git高效地解决远程分支合并冲突,提高开发效率和代码质量。希望这些内容对您的学习和工作有所帮助。
125 86
|
4天前
|
开发工具 git
git的rebase和merge的区别
通过这些内容和示例,您可以深入理解Git的 `rebase`和 `merge`操作及其区别,选择合适的方法进行分支管理,提高版本控制的效率和规范性。希望这些内容对您的学习和工作有所帮助。
31 5
|
8天前
|
安全 开发工具 git
git分布式版本控制系统及在码云上创建项目并pull和push
通过本文的介绍,我们详细讲解了Git的基本概念和工作流程,并展示了如何在码云上创建项目及进行pull和push操作。Git作为一种分布式版本控制系统,为开发者提供了强大的工具来管理代码变更和协作开发。希望本文能帮助您更好地理解和使用Git及码云,提高开发效率和代码质量。
29 16
|
9天前
|
安全 开发工具 git
git分布式版本控制系统及在码云上创建项目并pull和push
通过本文的介绍,我们详细讲解了Git的基本概念和工作流程,并展示了如何在码云上创建项目及进行pull和push操作。Git作为一种分布式版本控制系统,为开发者提供了强大的工具来管理代码变更和协作开发。希望本文能帮助您更好地理解和使用Git及码云,提高开发效率和代码质量。
37 18
|
28天前
|
存储 缓存 Java
图解Git——远程分支《Pro Git》
远程分支是 Git 中用于管理分布式协作的关键概念。远程引用指向远程仓库中的分支和标签,常用 `git ls-remote` 或 `git remote show` 查看。日常开发中,通常使用远程跟踪分支(如 `origin/main`)与远程分支交互,简化远程仓库状态的管理和使用。远程跟踪分支记录远程分支的状态,但本身只读。
27 6
|
28天前
|
存储 项目管理 开发工具
图解Git——分支开发工作流《Pro Git》
分支开发工作流利用Git的分支功能,支持灵活的项目管理。长期分支如`master`和`develop`分别保存稳定和开发中的代码;短期主题分支用于开发单一特性或修复问题,完成后合并到主分支。此模式确保代码稳定性,支持并行开发、便于审查和灵活调整。建议维护明确的长期分支,保持主题分支短小精悍,并定期清理无用分支。配置上可保护关键分支,遵循命名规范。
54 7
|
28天前
|
开发工具 git
图解Git——分支的新建与合并《Pro Git》
在Git开发中,新建与合并分支是常见的操作。以实际开发为例:为实现新需求创建分支`iss53`进行开发;遇紧急Bug时,切换至线上分支创建`hotfix`修复并合并回线上分支,再切换回`iss53`继续工作。完成`iss53`后,切换到`master`合并。若出现冲突,使用`git status`查看,手动编辑解决冲突后标记为已解决并提交。图形化工具如`git mergetool`也可辅助解决冲突。
44 9
|
28天前
|
开发工具 git 开发者
图解Git——分支简介《Pro Git》
Git 分支是其核心特性之一,允许开发者从主开发线分离工作,避免干扰主线。传统版本控制系统创建分支效率低,而Git的分支创建和切换非常轻量高效。
70 9
|
1月前
|
开发工具 git
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
186 69
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
|
4月前
|
开发工具 git
git学习四:常用命令总结,包括创建基本命令,分支操作,合并命令,压缩命令,回溯历史命令,拉取命令
这篇文章是关于Git常用命令的总结,包括初始化配置、基本提交、分支操作、合并、压缩历史、推送和拉取远程仓库等操作的详细说明。
173 1
git学习四:常用命令总结,包括创建基本命令,分支操作,合并命令,压缩命令,回溯历史命令,拉取命令