【知識整理】Git 使用實踐問題整理

問題1、fatal: refusing to merge unrelated histories

一、Git 的報錯


fatal: refusing to merge unrelated histories
新建了一個倉庫之后,把本地倉庫進行關聯提交、拉取的時候,出現了如下錯誤:

fatal: 'master' does not appear to be a git repository
fatal: Could not read from remote repository.

二、解決方案


在你操作命令后面加 --allow-unrelated-histories
?

git merge master --allow-unrelated-histories
$ git pull --allow-unrelated-histories
CONFLICT (add/add): Merge conflict in .gitignore
Auto-merging .gitignore
Automatic merge failed; fix conflicts and then commit the result.

這里由于我中間更換了代碼倉庫,然后又換回到原來的代碼倉庫,需要手動合并之后再進行 add、commit 即可。

如果你是git pull或者git push報fatal: refusing to merge unrelated histories
同理:

git pull origin master --allow-unrelated-histories / git pull --allow-unrelated-histories

問題2、warning: in the working copy of '...', LF will be replaced by CRLF the next time Git touche

一、Git的報錯

執行git add .的時候出現的警告“warning: in the working copy of ‘...‘, LF will be replaced by CRLF the next time Git touche”

新項目很多文件都是新建的,CR/LF是不同操作系統上使用的換行符:

CR(CarriageReturn回車'\r'):回到一行的開頭,ASCII代碼是13

LF(LineFeed換行'\n'):另起一行,ASCII代碼是10

二、問題分析

Dos和Windows平臺:

使用回車(CR)和換行(LF)兩個字符來結束一行,回車+換行(CR+LF),即“\r\n”;所以平時編寫文件的回車符應該確切來說叫做回車換行符。Mac 和 Linux平臺:只使用換行(LF)一個字符來結束一行,即“\n”;許多 Windows 上的編輯器會悄悄把行尾的換行(LF)字符轉換成回車(CR)和換行(LF),或在用戶按下 Enter 鍵時,插入回車(CR)和換行(LF)兩個字符。

三、解決問題

情況一:windows用戶

Git 可以在你提交時自動地把回車(CR)和換行(LF)轉換成換行(LF),而在檢出代碼時把換行(LF)轉換成回車(CR)和換行(LF)。因為git 的 Windows 客戶端基本都會默認設置 core.autocrlf=true

#提交時轉換為LF,檢出時轉換為CRLF:
git config --global core.autocrlf true

情況二:MAC用戶

Git 在檢出文件時不需要進行自動的轉換。然而當一個以回車(CR)和換行(LF)作為行結束符的文件不小心被引入時,這是肯定想讓 Git 修正。

所以,可以把 core.autocrlf 設置成 input 來告訴 Git 在提交時把回車和換行轉換成換行,檢出時不轉換:(這樣在 Windows 上的檢出文件中會保留回車和換行,而在 Mac 和 Linux 上,以及版本庫中會保留換行。)Linux 最好不要設置 core.autocrlf,因為這個配置算是為 Windows 平臺定制;

#提交時轉換為LF,檢出時不轉換
$ git config --global core.autocrlf input

情況三:Windows 用戶其他情況

如果你正在開發僅運行在 Windows 上的項目,可以設置 false 取消此功能,把回車保留在版本庫中:

#提交檢出均不轉換,你也可以在文件提交時進行safecrlf檢查
git config --global core.autocrlf false#拒絕提交包含混合換行符的文件
git config --global core.safecrlf true   #允許提交包含混合換行符的文件
git config --global core.safecrlf false   #提交包含混合換行符的文件時給出警告
git config --global core.safecrlf warn

Windows 上設置 core.autocrlf=false,倉庫里也沒有配置 .gitattributes,很容易引入 CRLF 或者混合換行符(Mixed Line Endings,一個文件里既有 LF 又有CRLF)到版本庫,這樣就可能產生各種奇怪的問題。

問題三、git commit -m 編輯后發現需要更改

在Git的提交命令git commit -m "message"中,-m選項用于指定提交信息。如果想要修改已經輸入的提交信息并將其應用到最新的commit上

使用下面的操作流程:

1、首先,通過運行git log或者git reflog來查看當前分支的提交記錄,確認需要修改的commit所對應的SHA值(commit ID)。

2、然后,使用git rebase -i <commit-id>命令進行交互式rebase操作,將<commit-id>替換為目標commit的ID。這會打開一個文本編輯器,顯示了從該commit之后的所有commits列表。

3、在編輯器中,將需要修改的commit所在行的pick關鍵字改成edit,保存并關閉編輯器。

4、Git會自動切換到被修改的commit,此時可以使用git commit --amend命令重新編輯提交信息。

5、完成編輯后,再次運行git rebase --continue命令,將更改應用到原始commit上。

6、若還有其他未處理的commit,則按照相同的步驟繼續進行rebase操作直到結束。

7、最后,使用git push origin <branch-name> --force命令將修改后的commit推送到遠程倉庫,注意加上--force參數以覆蓋原有的commit。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/719283.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/719283.shtml
英文地址,請注明出處:http://en.pswp.cn/news/719283.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

js原型原型鏈

js原型原型鏈 在 JavaScript 中&#xff0c;每個對象都有一個原型&#xff08;prototype&#xff09;。對象的原型是另一個對象的引用&#xff0c;它包含對象的共享屬性和方法。JavaScript 中的原型鏈則是對象之間通過原型鏈接起來的一種機制&#xff0c;用于實現繼承和屬性查找…

電腦無法開啟虛擬化

vm開啟虛擬化失敗 如果出現以下錯誤&#xff0c;需要進入bios界面&#xff0c;不同電腦進入界面的方式不一樣。這里以hp為例&#xff1a; 1、關機后&#xff0c;按住開機鍵和f10&#xff0c;進入如下界面&#xff08;語言在主菜單里面&#xff09; 2、選擇先進和下面的系統選…

c語言游戲實戰(10):坤坤的籃球回避秀

前言&#xff1a; 這款簡易版的球球大作戰是博主耗時兩天半完成的&#xff0c;玩家需要控制坤坤在游戲界面上移動&#xff0c;來躲避游戲界面上方不斷掉下來的籃球。本游戲使用C語言和easyx圖形庫編寫&#xff0c;旨在幫助初學者了解游戲開發的基本概念和技巧。 在開始編寫代…

Vue使用高德地圖定位到當前位置,并顯示天氣信息

首先得去高德控制臺申請兩個 key&#xff0c;一個天氣key和一個定位key 獲取天氣信息的函數&#xff1a; const getWeather function (city) {// 使用 fetch 發送請求獲取天氣信息fetch(https://restapi.amap.com/v3/weather/weatherInfo?city${city}&keyeefd36557b0250…

哪個有名的工具可以安全記事 私密記事本筆記推薦

在這個數字化的時代&#xff0c;我們的生活已經離不開各種記事工具。它們幫助我們記錄生活中的點點滴滴&#xff0c;無論是工作上的重要事項&#xff0c;還是個人的私密心情。然而&#xff0c;當我在尋找一個能夠安心記錄私密事情的工具時&#xff0c;安全性成為了我最關心的因…

C++從零開始的打怪升級之路(day42)

這是關于一個普通雙非本科大一學生的C的學習記錄貼 在此前&#xff0c;我學了一點點C語言還有簡單的數據結構&#xff0c;如果有小伙伴想和我一起學習的&#xff0c;可以私信我交流分享學習資料 那么開啟正題 今天分享的是關于繼承的知識點 1.菱形繼承 我們有許多關于繼承…

【軟件測試】Postman中變量的使用

Postman中可設置的變量類型有全局變量&#xff0c;環境變量&#xff0c;集合變量&#xff0c;數據變量及局部變量。區別則是各變量作用域不同&#xff0c;全局變量適用于所有集合&#xff0c;環境變量適用于當前所選環境&#xff08;所有集合中均可使用不同環境變量&#xff09…

【CSP試題回顧】202309-2-坐標變換(其二)

CSP-202309-2-坐標變換&#xff08;其二&#xff09; 關鍵點總結 1.輸入輸出的同步關閉&#xff0c;以加快I/O操作的速度 這一點還是很重要的&#xff0c;本題代碼如果不進行輸入輸出的同步關閉會時間超限。 ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0);2.…

職場中的祖傳代碼處理建議

程序員是如何看待“祖傳代碼”的&#xff1f; 祖傳代碼的由來 在實際的程序員工作中&#xff0c;祖傳代碼是常見的。因為真正的互聯網職場生活中&#xff0c;業務變動調整頻繁&#xff0c;每到一個新的業務線&#xff0c;第一件事就是熟悉現有工程代碼&#xff0c;看舊文檔等…

K8S中POD的控制器

一、Pod控制器及其功用 Pod控制器&#xff0c;又稱之為工作負載&#xff08;workload&#xff09;&#xff0c;是用于實現管理pod的中間層&#xff0c;確保pod資源符合預期的狀態&#xff0c;pod的資源出現故障時&#xff0c;會嘗試進行重啟&#xff0c;當根據重啟策略無效&am…

Linux基礎命令[9]-wc

文章目錄 1. wc 命令說明2. wc 命令語法3. wc 命令示例3.1 不加參數3.2 -c&#xff08;統計字節數&#xff09;3.3 -m&#xff08;統計字符數&#xff09;3.4 -l&#xff08;統計行數&#xff09;3.5 -L&#xff08;最長一行的長度&#xff09;3.6 -w&#xff08;統計單詞數&am…

Arcgis實現點位空間位置從上到下從左到右排序

效果 背景 工作項目中經常會遇到需要對網格進行編號&#xff0c;而編號是有一定原則的&#xff0c;比如空間位置從上到下從左到右&#xff0c;或者其它原則&#xff0c;那么都可以通過下面的方式來實現 1、準備數據 點shp文件&#xff0c;查看初始FID字段標注&#xff0c;目…

transformer--transformer模型構建和測試

前面幾節進行了各種組件的學習和編碼&#xff0c;本節將組件組成transformer&#xff0c;并對其進行測試 EncoderDecoder 編碼器解碼器構建 使用EnconderDecoder實現編碼器-解碼器結構 # 使用EncoderDeconder類實現編碼器和解碼器class EncoderDecoder(nn.Module):def __ini…

飛書文檔批量導出

背景需求 最近所參與的項目即將結項&#xff0c;需要將飛書中的產品需求文檔&#xff08;PRD&#xff09;交付給甲方&#xff0c;由于文檔較多&#xff0c;大概有兩百多個&#xff0c;一個一個的下載導出&#xff0c;太麻煩了&#xff08;PS&#xff1a;本人比較懶&#xff09;…

ROS create_wall_timer/create_timer函數區別

在ROS&#xff08;Robot Operating System&#xff09;中&#xff0c;create_wall_timer 和 create_timer 是用于創建定時器的兩個不同的函數&#xff0c;它們在使用上有一些區別&#xff1a; Clock Type: create_wall_timer: 創建的定時器是基于Wall clock的&#xff0c;這意…

軟考筆記--結構化分析方法

結構化分析&#xff08;SA&#xff09;方法的基本思想是自定向下&#xff0c;逐層分解&#xff0c;把一個大問題分解成若干個小問題&#xff0c;每一個小問題再分解成若干個更小的問題。經過逐層分解&#xff0c;每個最低層的問題都是足夠簡單、容易解決的。 SA方法分析模型的…

78. 子集(力扣LeetCode)

文章目錄 78. 子集題目描述回溯算法 78. 子集 題目描述 給你一個整數數組 nums &#xff0c;數組中的元素 互不相同 。返回該數組所有可能的子集&#xff08;冪集&#xff09;。 解集 不能 包含重復的子集。你可以按 任意順序 返回解集。 示例 1&#xff1a; 輸入&#xff…

selenium高亮元素

def set_high_light_elment(self, element): """高亮web元素。 Args: element: WebElement:web元素 """ element_styleelement.get_attribute(style) self.mark_dom_text(element_s…

【MySQL】表的約束——空屬性、默認值、列描述、zerofill、主鍵、自增長、唯一鍵、外鍵

文章目錄 MySQL表的約束1. 空屬性2. 默認值3. 列描述4. zerofill5. 主鍵6. 自增長7. 唯一鍵8. 外鍵 MySQL 表的約束 MySQL中的表的約束是一種規則&#xff0c;用于限制或保護表中數據的完整性和合法性。約束可以確保數據在插入、更新或刪除時滿足特定的條件&#xff0c;從而維護…

MySQL相關問題

MySQL相關問題 一、MySQL支持哪些存儲引擎&#xff1f;二、MySQL是如何執行一條SQL的&#xff1f;三、MySQL數據庫InnoDB存儲引擎是如何工作的&#xff1f;四、如果要對數據庫進行優化&#xff0c;該怎么優化&#xff1f;五、MySQL如何定位慢查詢&#xff1f;六、如何分析MySQL…