[請益] git rebase的問題
各位好
本人在近來在公司需要將專案中某個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://www.ptt.cc/bbs/Soft_Job/M.1647318677.A.7C0.html
推
03/15 12:38,
4年前
, 1F
03/15 12:38, 1F
我有加-f,忘了寫了
推
03/15 12:55,
4年前
, 2F
03/15 12:55, 2F
→
03/15 12:57,
4年前
, 3F
03/15 12:57, 3F
記得本地端沒有看到錯誤,remote端才有出現decline
推
03/15 13:03,
4年前
, 4F
03/15 13:03, 4F
推
03/15 13:09,
4年前
, 5F
03/15 13:09, 5F
不懂,我在git rebase的裡用的是squash啊(第二張圖)
→
03/15 13:26,
4年前
, 6F
03/15 13:26, 6F
→
03/15 13:26,
4年前
, 7F
03/15 13:26, 7F
→
03/15 13:26,
4年前
, 8F
03/15 13:26, 8F
→
03/15 13:28,
4年前
, 9F
03/15 13:28, 9F
→
03/15 13:28,
4年前
, 10F
03/15 13:28, 10F
加上 -f 後能push,不過會容易被decline
我大致上follow這個影片的做法
https://www.youtube.com/watch?v=8j0H6urZ-bU&t=64s
啊,我內文沒寫到,如果用rebase "只"合併兩個local的commit的話再push的話,有時卻
會成功,怪哉!
→
03/15 13:31,
4年前
, 11F
03/15 13:31, 11F
→
03/15 13:31,
4年前
, 12F
03/15 13:31, 12F
→
03/15 13:31,
4年前
, 13F
03/15 13:31, 13F
→
03/15 13:31,
4年前
, 14F
03/15 13:31, 14F
→
03/15 13:32,
4年前
, 15F
03/15 13:32, 15F
我是git pull <remote name> <remote branch>,和你說的一樣
推
03/15 13:42,
4年前
, 16F
03/15 13:42, 16F
→
03/15 13:43,
4年前
, 17F
03/15 13:43, 17F
我是用vs code的在做,有看到conflict的話用滑鼠選一選就可以解
我目前還在用簡單的testcase在試.....
※ 編輯: VivianAnn (108.254.89.199 美國), 03/15/2022 14:00:25
→
03/15 14:20,
4年前
, 18F
03/15 14:20, 18F
→
03/15 14:20,
4年前
, 19F
03/15 14:20, 19F
→
03/15 14:20,
4年前
, 20F
03/15 14:20, 20F
→
03/15 14:20,
4年前
, 21F
03/15 14:20, 21F
→
03/15 14:20,
4年前
, 22F
03/15 14:20, 22F
→
03/15 14:20,
4年前
, 23F
03/15 14:20, 23F
→
03/15 14:20,
4年前
, 24F
03/15 14:20, 24F
這不行,我們公司的人都在PR中討論,相當於一個討論串,不能一直開新的
→
03/15 14:27,
4年前
, 25F
03/15 14:27, 25F
推
03/15 15:06,
4年前
, 26F
03/15 15:06, 26F
→
03/15 15:44,
4年前
, 27F
03/15 15:44, 27F
mentor要我自己先研究
→
03/15 15:45,
4年前
, 28F
03/15 15:45, 28F
有啊
→
03/15 16:23,
4年前
, 29F
03/15 16:23, 29F
→
03/15 16:28,
4年前
, 30F
03/15 16:28, 30F
→
03/15 16:28,
4年前
, 31F
03/15 16:28, 31F
→
03/15 16:30,
4年前
, 32F
03/15 16:30, 32F
→
03/15 16:30,
4年前
, 33F
03/15 16:30, 33F
→
03/15 17:12,
4年前
, 34F
03/15 17:12, 34F
→
03/15 17:14,
4年前
, 35F
03/15 17:14, 35F
→
03/15 17:16,
4年前
, 36F
03/15 17:16, 36F
mentor跟我說PR取消是因為有drastic change,re-open方面是要原本branch的內容再
push一次才能點,這真的不知道為啥
推
03/15 17:28,
4年前
, 37F
03/15 17:28, 37F
→
03/15 21:00,
4年前
, 38F
03/15 21:00, 38F
推
03/15 22:06,
4年前
, 39F
03/15 22:06, 39F
→
03/15 22:06,
4年前
, 40F
03/15 22:06, 40F
→
03/15 22:06,
4年前
, 41F
03/15 22:06, 41F
→
03/15 22:06,
4年前
, 42F
03/15 22:06, 42F
→
03/15 22:20,
4年前
, 43F
03/15 22:20, 43F
→
03/15 22:20,
4年前
, 44F
03/15 22:20, 44F
我問過同事,會這樣可能是因為要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
→
03/17 10:18,
4年前
, 45F
03/17 10:18, 45F
→
03/17 10:18,
4年前
, 46F
03/17 10:18, 46F
→
03/17 10:21,
4年前
, 47F
03/17 10:21, 47F
→
03/17 10:21,
4年前
, 48F
03/17 10:21, 48F
推
03/26 23:44, , 49F
03/26 23:44, 49F
Soft_Job 近期熱門文章
PTT職涯區 即時熱門文章
114
209
62
119