国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Git pull報 fatal: Not possible to fast-forward, aborting的解決辦法

這篇具有很好參考價值的文章主要介紹了Git pull報 fatal: Not possible to fast-forward, aborting的解決辦法。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

1. 問題場景

本人使用公司的開發(fā)機Mac, 發(fā)現(xiàn)在Mac 機上pull代碼時總會出現(xiàn)“fatal: Not possible to fast-forward, aborting”。

開發(fā)流程:基于release拉取一個feature分支,然后在feature分支上進行開發(fā),再把feature分支往master合并,如果有沖突先git pull 一下,然后解決沖突進行push。?

(release是master的子集)

上述流程在windows上運行很流暢但是到mac上就不行,在stackoverflow的大佬說是因為base不一致,需要使用rebase去解決,百度上也是這么描述的。雖然這種方式幫助很多人解決了問題,但絕不是我所想要的解決方式。因為我想使用git pull后即使有沖突而不是以這樣的方式顯示。

2.問題解決

合并代碼的方式有很多中:git merge,git rebase,git pull等

git 在處理文件merge時,會分成三種處理方式

  • –ff–only fast forward模式,快速合并 有沖突就會失敗
  • –no–ff 非快速合并 會生成一次commit
  • –squash 將合并后的不同分支所有的提交記錄作為一次提交

fase-forward只要存在沖突就會失敗, 我們得配置git pull

  • git config pull.rebase false —- 關閉 rebase

  • git config pull.rebase true —–開啟rebase

  • git config pull.ff only/false —–開啟/關閉 fast-forward

?上述命令是針對當前分支的,如果使用全局配置的請加上--global, 如下

  • git config --global pull.rebase false —– 全局關閉 rebase

  • git config --global pull.rebase true —– 全局開啟rebase

  • git config --global pull.ff only/false —– 全局開啟/關閉 fast-forward

其實我們要做的是關閉rebase和fast-forward在pull中的表現(xiàn),可運行如下代碼解決當前分支問題:

git config pull.rebase false

git config pull.ff false

可運行如下代碼解決全局問題:

git config --global pull.rebase false

git config --global --add pull.ff false

還有另外一種解決方式,感覺不是很科學,好像也能解決問題。如下:

git pull {branchName} –no-rebase?eg: git pull origin release –no-rebase

實際上不僅是pull可以配置,merge也是可以使用同樣的方式進行配置

最后提供一張圖,簡單易懂講述了git 的rebase操作(由于當時截圖,忘記拷貝鏈接了)

Git pull報 fatal: Not possible to fast-forward, aborting的解決辦法

這里糾正一下,rebase后X,Y,Z均會產生新的commit。

最后根據(jù)小編的經歷,建議大家不要使用rebase去合并代碼。使用git pull/git merge/git fetch即可。文章來源地址http://www.zghlxwxcb.cn/news/detail-403946.html

到了這里,關于Git pull報 fatal: Not possible to fast-forward, aborting的解決辦法的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • git push報錯:![rejected] master -> master(non-fast-forward) error:failed to push some refs to XXX

    背景 本地git庫,要push到gitlab上,執(zhí)行完如下命令后報錯: 報錯信息為: 原因 從本地代碼創(chuàng)建遠程倉庫的時候,添加了README.md,但本地倉庫中并沒有該文件。 解決方案 添加忽略不相干的歷史選項,將遠程倉庫中的文件重新拉取到本地,這樣本地文件會出現(xiàn)README.md: 之后再

    2024年02月04日
    瀏覽(34)
  • git pull 提示錯誤 fatal: refusing to merge unrelated histories

    git pull 提示錯誤 fatal: refusing to merge unrelated histories

    從遠程拉項目到本地的時候提示錯誤 造成 fatal: refusing to merge unrelated histories錯誤的原因有以下幾點: 有一個包含一些提交的新 Git 存儲庫。然后,您嘗試從現(xiàn)有的遠程倉庫中提取。合并變得不兼容,因為分支和遠程拉取的歷史不同。當你試圖合并兩個完全不相關的分支時,

    2024年02月11日
    瀏覽(21)
  • 【Git】pull 分支報錯 fatal: Need to specify how to reconcile divergent branches...

    示例代碼: 翻譯: 分析:這是由于你拉取pull分支前,進行過merge合并更新分支操作,而其他人在你之前已經push過一個版本,導致版本不一致 第一種解決方法:比較簡單 執(zhí)行 git config pull.rebase false 默認將pull下來的代碼與現(xiàn)有改動的代碼進行合并 但是可能會造成代碼沖突,需

    2024年02月03日
    瀏覽(25)
  • git push 到gitlib提示! [rejected] master -> master (non-fast-forward) error: failed to push some refs t

    git push 到gitlib提示! [rejected] master -> master (non-fast-forward) error: failed to push some refs t

    一、git push到gitlab提示,大概意思是本地庫和遠程庫沒有同步導致無法提交合并,沖突導致無法push。 二、解決方案 三、操作界面,可以push到gitlab了。 三、參考文章 https://www.cnblogs.com/wml-it/p/15585052.html

    2024年02月06日
    瀏覽(24)
  • 【Git】git pull 報錯 fatal: not a git repository (or any of the parent directories): .git

    【Git】git pull 報錯 fatal: not a git repository (or any of the parent directories): .git

    在使用 git pull 拉取倉庫時報錯,錯誤信息如下圖所示: 這個錯誤表明當前目錄不是一個 Git 倉庫,因此無法執(zhí)行 git pull 命令。 錯誤提示中指出當前目錄不是一個 Git 倉庫,因此無法執(zhí)行 git pull 命令。這可能是因為在一個不是 Git 倉庫的目錄中使用了 Git 命令。 使用 git init 命

    2024年02月04日
    瀏覽(28)
  • git pull出現(xiàn)fatal: unable to access ‘https://github.com/xxx.git‘: Failed to connect to github.com port

    git pull出現(xiàn)fatal: unable to access ‘https://github.com/xxx.git‘: Failed to connect to github.com port

    問題 執(zhí)行git命令:git pull origin main; 出現(xiàn):fatal: unable to access ‘https://github.com/xxx.git’: Failed to connect to github.com port 443 after xxx ms: Timed out。 解決方法 手動配置Git代理: 1.打開ShadowsocksR軟件; 2.右鍵ShadowsocksR圖標,點擊《選項設置》,查看本地端口,我的是1080; 2.執(zhí)行 git c

    2024年02月13日
    瀏覽(102)
  • Git錯誤non-fast-forward的解決方法

    1、問題描述 當要push代碼到git時,出現(xiàn)提示: $ git push origin master To ../remote/ ?! [rejected] ???????master - master (non-fast-forward) error: failed to push some refs to \\\'../remote/\\\' 2、分析問題 Dealing with “non-fast-forward” errors:(From time to time you may encounter this error while pushing) ????To prevent you

    2024年02月04日
    瀏覽(23)
  • git 報錯:! [rejected] master -> master (non-fast-forward)

    git 報錯:! [rejected] master -> master (non-fast-forward)

    當提交代碼時出現(xiàn)如下錯誤: ?non-fast-forward:譯為‘不能快速前進’,遠程倉庫更新了,你沒有及時同步到本地,提交的時候添加了新的內容,提交的時候,然后檢測到遠程和本地不一樣。為了安全起見,報了這個錯誤。 可以先合并之前的歷史,在進行提交 1. 先把git的東西

    2024年02月08日
    瀏覽(90)
  • git報錯:[rejected]master->master(non-fast-forward)

    今天新建了一個倉庫,并未push代碼,然后按提交代碼的流程提交項目時,報錯 經過百度后發(fā)現(xiàn)原因是倉庫中有readme文件,而項目中沒有,內容不同步造成的,但是我明明執(zhí)行過下面命令拉取過代碼。 后來查百度又執(zhí)行下面語句后成功在本地同步了readme文件 之后再次提交,還

    2024年02月12日
    瀏覽(90)
  • ! [rejected] master -> master (non-fast-forward)error: failed to push some refs to

    產生場景 創(chuàng)建倉庫上傳代碼時,發(fā)現(xiàn)git的一個報錯,意思是本地和遠程不太一樣(第一次提交)。 原因是我們在創(chuàng)建倉庫是創(chuàng)建了模板和.git忽略文件,這樣使得遠程和本地內容不太一樣。 我們只要在正常上傳倉庫流程push之前把遠程倉庫內容拉取到本地來。 解決方案 總結:

    2024年02月16日
    瀏覽(62)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包