Transform .gitignore to .dockerignore.
.gitignore
和 .dockerignore
在路徑上其實是有一些差異的,如下列表:
.gitignore | .dockerignore |
---|---|
!/foo | !foo |
!foo | !**/foo |
/foo | foo |
foo | **/foo |
因此我基本上不會直接把 .gitignore
當作 .dockerignore
來使用,雖然好像還有 其他差異 ,但至少路徑是相對容易解決而且明顯的。在這之前其實就有人寫了一個 gitignore-to-dockerignore
,但由於判斷換行的方式導致它無法保留 CR
(Carriage Return aka \r
),這在 macOS.gitignore
裡有使用到:
.gitignore
# Icon must end with two \r
Icon^M
這會導致一般的 Icon
路徑也被 ignored,因此無論是 .gitignore
或 .dockerignore
都應將其保留。
大概在 2021 年 9 月的時候寫了一個 deno 版本的 g2d 並提供 binaries 和 container image ,現在則將它移植到 node 並額外提供 online 版,可以直接透過線上編輯或上傳 .gitignore
並預覽、複製、下載 .dockerignore
。