Soft_Job 板


LINE

各位好 本人在近来在公司需要将专案中某个pull request的commit统合成一个 下图为pull request,本公司用的是bitbucket https://ibb.co/6gWQPnf 我看了一些网路教学和youtube,仍然想不出解法。我的做法如下: 先在local的branch中执行git rebase -i HEAD~5 在interactive mode中将之前5个commits压成一个 https://ibb.co/VDqvhxv 有时会执行完後会出现conflict。将conflict resolve後使用以下指令push到remote git push <local_branch>:<remote_name> -f 然而,push 之後,不仅失败,我看到的还是pull request被decline: 如果我要re-open这pull request,则会出现以下error: https://ibb.co/sV8P4dW 我的mentor是和我说,如果bitbucket的pull request出现大变动时,会自动decline 必须要重新push最新的commit才能解开 请问版上有没有大神能指点我如何合并bitbucket中远端pull request的commit? 问题描述不清楚的地方我会再补充,谢谢! --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 108.254.89.199 (美国)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1647318677.A.7C0.html
1F:推 xxi511: Push -f ? 03/15 12:38
我有加-f,忘了写了
2F:推 godddddd: 整合一个commit squash 我都用这个 03/15 12:55
3F:→ ChiuTW: push 後的错误讯息是什麽? 03/15 12:57
记得本地端没有看到错误,remote端才有出现decline
4F:推 wulouise: 一个一个应该用squash吧?不太建议rebase public 03/15 13:03
5F:推 acgotaku: 用squash 他就会帮你自动内部rebase了 03/15 13:09
不懂,我在git rebase的里用的是squash啊(第二张图)
6F:→ ChiuTW: 所以 push 没错误,只有 or 被拒绝,而且是说 merge 的 ta 03/15 13:26
7F:→ ChiuTW: rget branch 跟 source 一样新?要不要检查一下是不是 reb 03/15 13:26
8F:→ ChiuTW: ase 的时候出问题了? 03/15 13:26
9F:→ ChiuTW: 但是为什麽 rebase 过的 branch 可以推上去?应该要被 dec 03/15 13:28
10F:→ ChiuTW: line 才对 03/15 13:28
加上 -f 後能push,不过会容易被decline 我大致上follow这个影片的做法 https://www.youtube.com/watch?v=8j0H6urZ-bU&t=64s
啊,我内文没写到,如果用rebase "只"合并两个local的commit的话再push的话,有时却 会成功,怪哉!
11F:→ ChiuTW: 另外 squash 出现 conflict 是不是有调整 commit 顺序?还 03/15 13:31
12F:→ ChiuTW: 是 rebase 的头跟 PR 里的不一样?如果直接 pull PR 里的 03/15 13:31
13F:→ ChiuTW: branch,直接 rebase,应该不会有冲突,这部分是怎麽做的 03/15 13:31
14F:→ ChiuTW: ? 03/15 13:31
15F:→ ChiuTW: 换句话说是怎麽把 PR 里的 commit 捞下来的 03/15 13:32
我是git pull <remote name> <remote branch>,和你说的一样
16F:推 acgotaku: 你要不要先开个branch把会冲突的先merge 03/15 13:42
17F:→ acgotaku: 不然squash 後产生conflict 不是好事 03/15 13:43
我是用vs code的在做,有看到conflict的话用滑鼠选一选就可以解 我目前还在用简单的testcase在试..... ※ 编辑: VivianAnn (108.254.89.199 美国), 03/15/2022 14:00:25
18F:→ ChiuTW: 先都用 cli 不要用 vs code,才可以确定打的指令 03/15 14:20
19F:→ ChiuTW: git pull 03/15 14:20
20F:→ ChiuTW: git rebase -i (不应该有冲突,有冲突的话可能是解冲突解 03/15 14:20
21F:→ ChiuTW: 错) 03/15 14:20
22F:→ ChiuTW: git push origin new_branch (推到新的 branch 不要推到 03/15 14:20
23F:→ ChiuTW: 原本的、不要用 -f) 03/15 14:20
24F:→ ChiuTW: 开新的 PR 03/15 14:20
这不行,我们公司的人都在PR中讨论,相当於一个讨论串,不能一直开新的
25F:→ ChiuTW: 有冲突的话不是冲突解错,是步骤有错 XDDD 刚刚在讲三小 03/15 14:27
26F:推 honochung: 你的pull request怪怪的 03/15 15:06
27F:→ MoonCode: 你为何不叫你mentor帮你... 03/15 15:44
mentor要我自己先研究
28F:→ MoonCode: 自己开一个repo在bitbucket练一下不就好了 03/15 15:45
有啊
29F:→ alan5: bitbucket有设定branch能不能被force update 03/15 16:23
30F:→ alan5: 五楼的意思是 bitbucket可以直接帮你做这件事 03/15 16:28
31F:→ alan5: pr过了merge以後就会只有一个commit 03/15 16:28
32F:→ alan5: 你不需要先在local squash, merge之後只有一个commit 03/15 16:30
33F:→ alan5: 会出现在你的目标branch 03/15 16:30
34F:→ alan5: 1. 检查你的bitbucket remote branch是不是protected 03/15 17:12
35F:→ alan5: 2. pr取消正常 因为commit不同了 03/15 17:14
36F:→ alan5: 3. 你reopen失败的原因应该是你推错branch 03/15 17:16
mentor跟我说PR取消是因为有drastic change,re-open方面是要原本branch的内容再 push一次才能点,这真的不知道为啥
37F:推 TheWhack: branch不给force update的话,那就不能rebase+squash了? 03/15 17:28
38F:→ ChiuTW: 都忘记 merge 可以 merge squash 了 03/15 21:00
39F:推 mike8469: local rebase 完以後推新的 remote branch, 不要用-f 03/15 22:06
40F:→ mike8469: 覆写掉原本那条, 除非确定那条只有你在用, 推上去後在 03/15 22:06
41F:→ mike8469: 用新建的 remote branch 发PR 到 master branch 并设定 03/15 22:06
42F:→ mike8469: squash merge 应该可以解掉你提到的问题~ 03/15 22:06
43F:→ mike8469: 重看一次发现我理解错你的问题, -f 被拒感觉跟bitbucke 03/15 22:20
44F:→ mike8469: t branch permission 设定比较有关 03/15 22:20
我问过同事,会这样可能是因为要rebash的commit有冲突到 同事的做法是用git reset --soft来分解之前有冲突的commit,在local重新commit一次 再git rebase,再git push -f 到PR的branch ※ 编辑: VivianAnn (108.254.89.199 美国), 03/16/2022 11:56:58
45F:→ ChiuTW: 再说一次,rebase squash 只要没有动 commit 的顺序就不应 03/17 10:18
46F:→ ChiuTW: 该冲突 03/17 10:18
47F:→ ChiuTW: 不过都 force push 了除非会 reflog 不然应该没救了,找 m 03/17 10:21
48F:→ ChiuTW: entor 救你吧 03/17 10:21
49F:推 xluds24805: 不应该 conflict,应该是哪里有操作错误 03/26 23:44







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Boy-Girl站内搜寻

TOP