我做了一个新的分支为我的代码就像一个月前,我创建特征1,从分支开发分支。
⇒ git branch
develop
* feature1
我已经使用Feature1了一个月,并且许多更改都被推送到了开发分支上,如何使用开发一个的最新提交来更新当前的分支Feature1?
我不想签出master并合并我的feature1分支。我也不想使用git cherry-pick手动将提交从开发移动到feature1。
有什么帮助吗?
我做了一个新的分支为我的代码就像一个月前,我创建特征1,从分支开发分支。
⇒ git branch
develop
* feature1
我已经使用Feature1了一个月,并且许多更改都被推送到了开发分支上,如何使用开发一个的最新提交来更新当前的分支Feature1?
我不想签出master并合并我的feature1分支。我也不想使用git cherry-pick手动将提交从开发移动到feature1。
有什么帮助吗?
Answers:
您只需将开发合并到feature1:
git checkout feature1
git merge develop
不需要涉及另一个分支,例如master。
git merge develop
,feature1的技巧将进行更新,包括来自development的新代码。这使开发人员可以使用最新代码。合并不会以任何方式影响dev分支。也许在将来的某个时候,该开发人员将希望将feature1合并到开发中(即以其他方式)以更新开发技巧,这需要进行审查。届时,将在审阅中指定产生的任何临时合并提交,以便审阅者可以看到开发将如何变化的差异。
首先,您需要更新您的开发分支,然后签出功能并对其进行合并/重新设置基础。
git checkout develop
git pull
git checkout feature/myfeature
现在,您可以在运行之间做出决定:
git merge develop
git rebase develop
merge
和之间的区别rebase
是merge
保留分支中所有提交的历史记录,如果您的部分提交有很多值得保留的内容,则这很重要。
rebase
在某些团队中,该选项是必需的。
准备就绪后,您可以推送到自己的分支(例如,对于拉取请求)
git push origin feature/myfeature
该用例对保持PR分支的更新非常有帮助。首先,我建议您首先获取您的远程更改,即git fetch
,然后从进行合并或重新设置develop
,但要从远程的进行重新组合,例如
git rebase -i origin/develop
要么
git merge origin/develop
这样,您将更新PR分支,而无需在分支之间来回移动。
分行:
开发====>开发
feature1 ====>工作
步骤1 从站点进行GIT发送
检查您正在同步的分支
git status
添加提交文件
git add .
提交描述
git commit -m "COMMENT"
发送到您已同步的分支
git push
步骤2 与DEV同步更新的工作分支(开发)-将工作分支与开发分支同步(更新开发分支)
与远程同步并切换到DEV分支
git checkout DEV
请求合并要与feature1分支同步的分支
git merge feature1
将当前分支与feature1分支合并
git push
步骤3 GIT查找远程-从更新的开发分支更新工作分支
连接到参考分支
git checkout DEV
搜索更改
git pull
与您的工作分支同步
git checkout feature1
请求合并与DEV分支同步的分支
git merge DEV
将当前分支与DEV分支合并
git push
使用没有合并的检出来获取特定文件或从特定提交中获取内容,我尝试过这种方式,它可以正常工作!
git checkout develop <commit hash>_or_<specific-files-path>
该源。
$ git checkout <another-branch> <path-to-file> [<one-more-file> ...]
$ git status
$ git commit -m "Merged file from another branch"