各位大佬,请教一个 git 合并问题?
现有分支两个,dev 对应开发测试环境、master 对应线上环境。
4 人的 java 小组,如果我在 dev 上完成了一个模块的开发,测试验证没问题后,怎么省事一点合并到 master 上?
我用了两种合并方式,感觉都不是很方便:
1.手动复制这次改动的代码到 master 上对应的 java 类,然后 commit (合并到 master 会复制很多)
2.用 git cherry-pick 把涉及到的 commit 挪过来(我想怎么把 dev 上多次的 commit 压缩成一个)
2.1 本地建个临时分支,在临时分支上将多个模块 A 的 commit 压缩成 1 个
git checkout -b <new_branch_name> <commid_id>
git checkout -b testdev 107b726 (模块 A 的最后一次的 commit )
git rebase -i HEAD~一个数
然后得到一个压缩后的 commit_id
2.2 在 master 上执行
git cherry-pick 03ef1d5 临时分支上的 commit_id
第 2 种方式用了之后,如果前一个 commit 和之后的 commit 有重叠修改的文件,经常会发生冲突。
大家又什么合并方法推荐吗?
现有分支两个,dev 对应开发测试环境、master 对应线上环境。
4 人的 java 小组,如果我在 dev 上完成了一个模块的开发,测试验证没问题后,怎么省事一点合并到 master 上?
我用了两种合并方式,感觉都不是很方便:
1.手动复制这次改动的代码到 master 上对应的 java 类,然后 commit (合并到 master 会复制很多)
2.用 git cherry-pick 把涉及到的 commit 挪过来(我想怎么把 dev 上多次的 commit 压缩成一个)
2.1 本地建个临时分支,在临时分支上将多个模块 A 的 commit 压缩成 1 个
git checkout -b <new_branch_name> <commid_id>
git checkout -b testdev 107b726 (模块 A 的最后一次的 commit )
git rebase -i HEAD~一个数
然后得到一个压缩后的 commit_id
2.2 在 master 上执行
git cherry-pick 03ef1d5 临时分支上的 commit_id
第 2 种方式用了之后,如果前一个 commit 和之后的 commit 有重叠修改的文件,经常会发生冲突。
大家又什么合并方法推荐吗?


