The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

如何在 Monorepo 透過 Git 的 Sparse Checkout 取得部分 Repo 內容

我們現在有越來越多的專案都是前後端分離的架構,所以在一個 Git Repo 裡面同時放前後端程式碼是很常見的狀況。不過,問題來了,如果前後端分離的很乾淨,若是前端人員不想要看到「後端」的原始碼,那 Git 有辦法做到「部分取出」的功能嗎?是的,還真的有!這篇文章我就來說說這個好用的功能。

... 繼續閱讀 ...

如何在 Windows 使用 Git 版控時可以區分檔案名稱大小寫

今天被問到一個關於 Git 版控的問題,同事提到我們有個網站專案的 Repo 裡面有個 *.svg 檔案,之前 git commit 的時候使用 helloWorld.svg 這樣的檔名,但是部署的時候發生錯誤,客戶告知必須用英文小寫的檔名才能正常運作,所以他就來修改一下檔案名稱,結果卻發現 Git 怎樣都無法修改檔名大小寫部分,問我該怎麼辦。這篇文章我就來跟各位說明這個問題的來龍去脈與解決方法。

... 繼續閱讀 ...

如何讓 Git 可以用一個 git push 同時推送到多個遠端儲存庫

Git 的工作目錄其實可以一次處理多個遠端儲存庫,這篇文章我打算分享幾個 Git Remote 設定技巧,讓你更輕鬆的面對多個遠端儲存庫。

... 繼續閱讀 ...

如何設定 git ignore 命令並自動下載所需的 .gitignore 範本

每次開發一個新專案,多多少少都會需要手動加入 .gitignore 檔案。如果用 Visual Studio 2019 建立專案時加入 Git 版控,工具會自動幫你新增 .gitignore 檔案。但若用 dotnet new 建立專案時就不會自動建立 .gitignore 檔案了。本篇文章我將介紹一個好用工具,可以讓你很便利的快速產生專案所需的 .gitignore 檔案。

... 繼續閱讀 ...

如何透過 Git Credential 管理透過 HTTP 通訊協定存取儲存庫的帳號密碼

一般在使用 Git 存取遠端儲存庫時,大部分的人都使用 SSH 或 HTTP(S) 通訊協定。如果使用 SSH 協定,你可以設定金鑰認證,如此一來不但不用每次都輸入密碼,連線過程還可以全程加密。但是若用 HTTP(S) 的話,就沒那麼方便了,預設每次都需要輸入帳號密碼進行驗證。更有甚者,如果 Git 平台設定了多因素驗證/兩階段驗證,那就更難記憶密碼。還好 Git 內建提供了認證儲存機制 (Credential Storage),可以幫你暫存常用的帳號密碼,輕鬆幫你做到自動帳號密碼輸入。本篇文章教你認識有哪些認證管理工具,還有如何管理這些帳號密碼。

... 繼續閱讀 ...

如何設定 TortoiseGit 改用 WinMerge 當作 Diff 與 Merge 的主要工具

最近幾個月由於電腦升級到了 Windows 10 (1709) 最新版本,卻發現 TortoiseGit 在執行 diff 差異比較的時候,預設的 TortoiseGitMerge.exe 程式,開啟的速度超級超級慢。我用工作管理員去查看,也發現 TortoiseGitMerge 的 CPU 使用率,會在剛開啟的時候突然飆高很長一段時間。最後,我也因此被迫換成速度較快的 WinMerge 工具,功能也不差,比內建的好用許多,建議各位也可以換過去用。

... 繼續閱讀 ...

如何解決在命令提示字元下使用 Git for Windows 顯示中文亂碼的問題

最近我的筆電重灌了 Windows 10 作業系統,卻在命令提示字元下執行 Git for Windows 時,發生無法顯示中文的情況,尤其是在執行 git log 的時候,當訊息中有中文字時,就無法正確顯示。本篇文章將說明如何解決這個問題。

... 繼續閱讀 ...

介紹好用工具:Git Credential Manager for Windows (記憶 Git 常用密碼)

我在兩年前曾經分享過【透過 HTTP 與 HTTPS 連接 Git 儲存庫時如何記憶常用密碼】文章,當時該篇文章所提到的 Windows Credential Store for Git 專案已經不再維護了,取而代之的則是由微軟官方支援Git Credential Manager for Windows 版本。本篇文章主要用來介紹這個工具的使用方式與注意事項。

... 繼續閱讀 ...

如何在強制使用代理伺服器的環境下設定 git, npm, bower, gem, ionic 工具

有些公司會要求員工上網時必須設定代理伺服器 (Proxy Server) ,在這樣的環境下使用這些前端工具經常會遇到許多網路連線的問題,本篇文章將說明如何針對 git, npm, bower, gem, ionic 等工具進行完整的代理伺服器設定,設定好之後就可以大幅漸少這些奇奇怪怪的問題。

... 繼續閱讀 ...