这可能是一个重复的问题,但我无法弄清楚该如何操作。我正在尝试合并一个名为remoteBranch
的远程分支(它不是主分支)到我的本地分支localBranch
。
我的其中一个开发人员在远程分支 remoteBranch
上添加了一个新的API端点分支。作为前端开发人员,我需要获取该分支,并将其与我的本地开发分支localBranch
合并,以利用该API端点。我应该怎么做?
这可能是一个重复的问题,但我无法弄清楚该如何操作。我正在尝试合并一个名为remoteBranch
的远程分支(它不是主分支)到我的本地分支localBranch
。
我的其中一个开发人员在远程分支 remoteBranch
上添加了一个新的API端点分支。作为前端开发人员,我需要获取该分支,并将其与我的本地开发分支localBranch
合并,以利用该API端点。我应该怎么做?
只需合并它。
git fetch
git checkout localBranch
git merge remoteBranch
error: pathspec 'remoteBranch' did not match any file(s) known to git.
- user1012181无法合并
。 - user1012181git merge remoteBranch
。 - hspandherremoteBranch
... - mkrieger1git fetch
git merge localBranch remoteName/remoteBranch
如果remoteName 可能是 "origin",你可以通过命令 git remote -v
找到它。
然而,有时你可能想要使用变基(重写历史以保持提交序列的“清洁”)而不是合并(也会添加合并提交)。
你可以使用以下命令将一个远程分支 (remoteBranch) 变基到本地分支 (localBranch):
git fetch
git checkout localBranch
git rebase remoteName/remoteBranch
参考资料:https://www.atlassian.com/git/tutorials/merging-vs-rebasing
合并和变基是 Git 中整合更改的两种不同方法。合并创建一个新的变更集,将指定分支上的更改合并到当前分支中。与之相反,变基将当前分支的基础更改为指定分支上的一个提交,以便在顶部应用当前分支上的提交。这两种方法都有他们自己的优缺点,具体使用哪种方法取决于你的工作流程、需求和个人偏好。git pull origin origin-branch-name:local-branch-name
以上命令将合并原始分支和本地分支,保持活动状态不变。
git pull another-local-branch:another2-local-branch
它应该(未经测试)在保持活动分支不变的同时合并两个不同的分支。
这些答案令人困惑,因为我在这里查看:https://www.atlassian.com/git/tutorials/syncing/git-fetch,而命令是
git fetch <remote> <branch>
从远程获取特定分支到本地
然后我猜,实际上我是git新手,我可以使用git checkout branchIwantToMergeInto
,然后执行git merge <branch>
,在原始命令之后现在有一个本地副本<branch>
。
所以说,假设我正在本地工作于分支hotfix
,并且我必须使用对远程staging
分支所做的更改来更新此分支。
我将执行以下命令序列。
git fetch <remote> staging
git checkout hotfix
git merge staging
但在执行 git checkout hotfix
命令之前,我会确保没有未跟踪的更改(因为我是 Git 新手,不熟悉像 rebase 等高级命令),方法是执行 git add .
和 git commit -m "我的提交信息"
命令,将任何可能引起冲突的相关分支提交。
在最新的git中:
git fetch origin remoteBranchName
git checkout localBranchName
git merge origin/remoteBranchName