選單
GSS 技術部落格
在這個園地裡我們將從技術、專案管理、客戶對談面和大家分享我們多年的經驗,希望大家不管是喜歡或是有意見,都可以回饋給我們,讓我們有機會和大家對話並一起成長!
若有任何問題請來信:gss_crm@gss.com.tw
1 分鐘閱讀時間 (145 個字)

Git Commit大小寫問題

Git Commit大小寫問題
在工作上可能會遇到檔案名稱大寫小編輯錯誤就先Commit 並且Push,又或者未依照Code Style規範,導致後續要進行修改。

在修改會遇到找不到差異的問題。(以下是步驟)
  • 新增test資料夾或檔案
  • Commit>Push test
  • 修改名稱大小換小寫、小寫換大寫
  • Commit>Push Test



  • Commit>Push Test 並沒有差異檔案

這邊提供兩個解法

  • 暴力法
  • 修改Config(不建議)

暴力法





  • 修改檔名(任意)
  • Commit
  • 修改檔名(目標名稱)
  • Commit
  • Push
結果如同預期的順利改

 修改Config

將原本修改成功大寫的TEST改為小寫test,設定ignorecase = false。



Path:/.git/config
ignorecase = false
執行Commit比對異動檔案。



執行Push,雖然 Push成功但是目錄變成兩個(TEST、test),這是因為Git本身對於大小寫的支持並不靈敏。



拉一版新的下來檢查結果,可以看只有大寫的TEST並不是我們最後Push的小寫test。


做一個小測試在原本的Git目錄(test)新增檔案,然後到新的Git目錄(TEST)做Pull會看到那些檔案。

回到原本的Git 目錄(test)新增檔案 (Test - 複製.cs)Commit>Push



再到新的Git目錄(TEST)Pull


會發現在原本的Git 所Push一起被跟新下來並且這個檔案在這邊是沒有加入版控。
到目前為止已經有點混亂,建議如果要修改檔案名稱大小寫在Windows、Mac上都是建議直接使用暴法,若是在Linux可區分大小寫的OS在考慮調整Git Config並且要與團隊成員取得共識。

 
 
 
 
 
 
 
 
 
 
 
 
 
 
SQL Server Not In子查詢所返回的錯誤結果
Linux 檔案系統的資料結構
 

評論

尚無評論
已經注冊了? 這裡登入
Guest
2024/05/04, 週六

Captcha 圖像