iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 25
0
自我挑戰組

用 Android Studio / IntelliJ IDEA 完成 Git 操作系列 第 25

用SourceTree合併前預先解衝突

  • 分享至 

  • xImage
  •  

撿櫻桃後很理所當然是講變基rebase,但我想用案例介紹。

我們之前的合併,是先切換到develop分支,合併其他分支後再對develop分支操作提交推送,但是使用GitFlow後,有很大的機會master和develop分支是被鎖起來,只能合併無法提交推送。

所以我們在合併之前,就要在自己的feature分支解完衝突,這樣合併請求develop分支就不會發生衝突。


上圖是develop分支,下圖是feature/功能分支05分支,兩個分支修改的程式碼行數都是第15行,肯定會衝突

https://ithelp.ithome.com.tw/upload/images/20200925/20124384ucO5tBq3TJ.png

https://ithelp.ithome.com.tw/upload/images/20200925/20124384RhXIWgRb3l.png

  • 我們在feature/功能分支05,變基之前先獲取一下develop分支,看看這段期間有沒有變動,不然解完衝突後還要再重解一次
  1. 點擊develop分支
  2. 點擊Fetch
  3. 點擊OK
    https://ithelp.ithome.com.tw/upload/images/20200925/20124384u2ofcGN9RQ.png

  • 回到feature/功能分支05
  1. 點擊develop分支
  2. 點擊Rebase current changes onto develop
  3. 他說有衝突,點擊關閉
    https://ithelp.ithome.com.tw/upload/images/20200925/20124384yLUNHC9YEG.png

  • 回到Android Studio手動修改程式碼
    https://ithelp.ithome.com.tw/upload/images/20200925/20124384fJAW6fc8o6.png

  • 把衝突改成我們想要的樣子
    https://ithelp.ithome.com.tw/upload/images/20200925/20124384HkKER16qJi.png

  • 回到SourceTree
  1. 點擊File Status
  2. 對有打勾的檔案點擊右鍵
  3. 點擊Resolve Conflicts
  4. 點擊Make Resolved
  5. 點擊OK
    https://ithelp.ithome.com.tw/upload/images/20200925/20124384aen44cx3JA.png

  1. 點擊Pull
  2. 點擊Continue Rebase
    https://ithelp.ithome.com.tw/upload/images/20200925/20124384doVWkgrw8i.png

  • 在SourceTree就一直Pull→解決衝突,在這期間都不用commit,如果看到提交訊息SourceTree有寫提交資訊,那就是最後一次解衝突了,解完就按Commit,所以你的分支離develop分支很遠的話,就要做很多次解決衝突,這樣會很煩,所以GitFlow才會建議儘量把feature分支開細一點,盡快回到develop,不然就真的會解衝突解到懷疑人生
    https://ithelp.ithome.com.tw/upload/images/20200925/20124384VaQc1NRQNT.png

  • 提交完後就會發現Pull的數字消失,只剩下Push,接下來只要點擊Push把資料推送上去就完成
    https://ithelp.ithome.com.tw/upload/images/20200925/20124384Bc89btiAvA.png

上一篇
用Android Studio / IntelliJ IDEA合併前預先解衝突
下一篇
用Android Studio / IntelliJ IDEA終端機合併前預先解衝突
系列文
用 Android Studio / IntelliJ IDEA 完成 Git 操作30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言