建立 .gitignore 的幾個好用工具和姿勢

Dino Wang
4 min readDec 16, 2018

--

運用 gitignore.io 生成團隊適用的 .gitignore 檔案

有使用 Git 的朋友們大概對 .gitignore 不太陌生吧?.gitignore 是用來設定不要進入 Git repo 的檔案或目錄,以開發 ASP.NET Core 舉例,專案目錄下的 bin 或 obj 目錄,是編譯時期生成的檔案一般是不進到 repo 的,此時就可以運用 .gitignore 的機制將其設定為排除。

之前也曾經分享過使用一個集中的 GitHub 專案 gitignore ,該專案提供了非常多預先設計適用於各個環境的 .gitignore 檔,例如剛剛舉例的 ASP.NET Core 專案,如果您是在 Visual Studio 中進行開發,就可以取得該專案下的 VisualStudio.gitignore 儲存成您專案目錄下的 .gitignore 即可。

前陣子經過同事 YC 的推薦知道了 gitignore.io 這個服務,這個服務的優點在於它可以協助自動合成多個 .gitignore 檔案設定,例如:您的 ASP.NET Core 專案有多人開發,開發環境同時有 Visual Studio、Visual Studio Code,同時有多個作業系統包含了 Windows 與 macOS (這些作業系統都有機會在目錄下生成),另外 ASP.NET Core 需要考慮排除的檔案或目錄的設定,這麼一來需要組合五個 gitignore 檔案,您可以透過 gitignore.io 網站介面一口氣完成並下載。

使用 gitignore.io 網站產生 .gitignore 檔

gitignore.io 提供 API 讓你可以不需要瀏覽器就可以取得組合的 gitignore 檔案相同一個例子來說,透過一個 URL GET 你就可以得到同樣的設定檔

https://www.gitignore.io/api/macos,windows,aspnetcore,visualstudio,visualstudiocode

相信部分開發團隊已經有一點感覺了,但只是這樣還不足以說嘴啊,還有更好的武器在後面呢。

Yeoman

若未曾安裝過 yeoman,那就這裡請 https://yeoman.io/

接下來安裝 generator-gitignore-io

npm install --global yo generator-gitignore-io

身為 scaffolding 工具的強者,加裝 generator-gitignore-io 套件後便可以從命令列中做到跟網站一樣的事情。

運用 yeoman 的 generator-gitignore-io 套件產生 .gitignore 檔案

generator-gitignore-io 會在同一目錄下產生設定檔 .yo-rc.json,此舉為了讓您再次執行時叫出前次設定結果,僅針對新增與刪除部分處理,不用每次重來。

Visual Studio Code

是的,跨界開發工具之王 Visual Studio Code 當然也不落人後的擁有類似的套件方便開發者生成 .gitignore 檔案,首先安裝 VSCode 插件 .gitignore Generator

https://marketplace.visualstudio.com/items?itemName=piotrpalarz.vscode-gitignore-generator

以熱鍵 F1 喚醒 command palette,找到 gitignore generator (我習慣輸入 giti),接下來就是搜尋以及勾選所需要設定組的親切介面。完成後按下 ok 就會在專案下生成 .gitignore 檔。

運用 VSCode 的 gitignore generator 套件產生 .gitignore 檔案

VSCode 的 gitignore generator 一樣支援第二次叫用時將前次值帶出的功能,但更聰明的是不需要額外的設定檔,推估應該是直接解析了檔頭中註解行的 URL。

版本控制是個良好的習慣,但是將無關的檔案也簽入 repo 可能帶來不便的結果,妥善的設定 .gitignore 是個重要的關鍵,運用適當的工具來協助你事半功倍。

--

--