我有一个master
分支和一个develop
分支。 develop
分支比master
领先大约10次提交,但是客户批准的版本仅包括前8次提交。
如何仅将develop
中的前8个提交合并到master
中?
通常我会这样做:
git checkout master
git merge develop
但是显然,这将在所有develop
个提交中合并。
答案 0 :(得分:4)
您可以通过SHA-1提交哈希进行合并,例如
select * from sys.databases where state_desc='OFFLINE'
git checkout master
git merge 3JH9sdx8
是3JH9sdx8
在分支的HEAD之前两次提交中的提交哈希。要查找develop
哈希,可以使用3JH9sdx8
并进行检查。
答案 1 :(得分:1)
您可以创建一个分支2版本
SB-INT:SIMPLE-FILE-ERROR
然后您可以合并该分支
git checkout dev
git checkout -b devapproved @~2
答案 2 :(得分:0)
您可以使用cherry-pick
命令。
第一个git log
命令为您提供先前提交的哈希,然后您可以使用git cherry-pick [yourHashString]
命令将指定的提交合并到当前分支。
答案 3 :(得分:0)
您可以获取合并的版本并创建临时分支,例如:
# find the commit id
git log --oneline
# checkout new branch by commit id
git checkout commitID -b tmp
# Switched to branch 'master'
git checkout master
git merge tmp
# delete branch
git branch -d tmp