From 6dd16f52e97d6ad5aa1846d4e1fa13b7a8f1cc2a Mon Sep 17 00:00:00 2001 From: Marco Walz Date: Mon, 16 Mar 2026 11:21:18 +0100 Subject: [PATCH 1/2] chore: track .icp/data/mappings via .gitkeep and clarify .gitignore Add .icp/data/mappings/.gitkeep to all templates so the directory structure is visible from the start, signaling that .icp/data/ is meant to be committed. Update .gitignore in all templates with clarifying comments that only .icp/cache/ should be ignored, not .icp/data/ which stores mainnet canister ID mappings. Closes #19 --- bitcoin-starter/.gitignore | 4 +++- bitcoin-starter/.icp/data/mappings/.gitkeep | 0 hello-world/.gitignore | 4 +++- hello-world/.icp/data/mappings/.gitkeep | 0 motoko/.gitignore | 4 +++- motoko/.icp/data/mappings/.gitkeep | 0 proxy/.gitignore | 4 ++++ proxy/.icp/data/mappings/.gitkeep | 0 rust/.gitignore | 4 +++- rust/.icp/data/mappings/.gitkeep | 0 static-website/.gitignore | 5 +++++ static-website/.icp/data/mappings/.gitkeep | 0 12 files changed, 21 insertions(+), 4 deletions(-) create mode 100644 bitcoin-starter/.icp/data/mappings/.gitkeep create mode 100644 hello-world/.icp/data/mappings/.gitkeep create mode 100644 motoko/.icp/data/mappings/.gitkeep create mode 100644 proxy/.gitignore create mode 100644 proxy/.icp/data/mappings/.gitkeep create mode 100644 rust/.icp/data/mappings/.gitkeep create mode 100644 static-website/.icp/data/mappings/.gitkeep diff --git a/bitcoin-starter/.gitignore b/bitcoin-starter/.gitignore index ede6f2b..02bf150 100644 --- a/bitcoin-starter/.gitignore +++ b/bitcoin-starter/.gitignore @@ -13,5 +13,7 @@ # rust target/ -# icp-cli +# icp-cli local cache (safe to delete, rebuilt on next build/deploy) .icp/cache/ +# Do NOT ignore .icp/data/ — it stores mainnet canister ID mappings. +# See: https://github.com/dfinity/icp-cli/blob/main/docs/concepts/project-model.md#whats-safe-to-delete diff --git a/bitcoin-starter/.icp/data/mappings/.gitkeep b/bitcoin-starter/.icp/data/mappings/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/hello-world/.gitignore b/hello-world/.gitignore index a048b70..f8d9d7a 100644 --- a/hello-world/.gitignore +++ b/hello-world/.gitignore @@ -10,5 +10,7 @@ # environment variables .env -# icp-cli +# icp-cli local cache (safe to delete, rebuilt on next build/deploy) .icp/cache/ +# Do NOT ignore .icp/data/ — it stores mainnet canister ID mappings. +# See: https://github.com/dfinity/icp-cli/blob/main/docs/concepts/project-model.md#whats-safe-to-delete diff --git a/hello-world/.icp/data/mappings/.gitkeep b/hello-world/.icp/data/mappings/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/motoko/.gitignore b/motoko/.gitignore index a3057d9..611b208 100644 --- a/motoko/.gitignore +++ b/motoko/.gitignore @@ -14,5 +14,7 @@ .mops *.wasm -# icp-cli +# icp-cli local cache (safe to delete, rebuilt on next build/deploy) .icp/cache/ +# Do NOT ignore .icp/data/ — it stores mainnet canister ID mappings. +# See: https://github.com/dfinity/icp-cli/blob/main/docs/concepts/project-model.md#whats-safe-to-delete diff --git a/motoko/.icp/data/mappings/.gitkeep b/motoko/.icp/data/mappings/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/proxy/.gitignore b/proxy/.gitignore new file mode 100644 index 0000000..ab65e15 --- /dev/null +++ b/proxy/.gitignore @@ -0,0 +1,4 @@ +# icp-cli local cache (safe to delete, rebuilt on next build/deploy) +.icp/cache/ +# Do NOT ignore .icp/data/ — it stores mainnet canister ID mappings. +# See: https://github.com/dfinity/icp-cli/blob/main/docs/concepts/project-model.md#whats-safe-to-delete diff --git a/proxy/.icp/data/mappings/.gitkeep b/proxy/.icp/data/mappings/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/rust/.gitignore b/rust/.gitignore index e47f6fa..02bf150 100644 --- a/rust/.gitignore +++ b/rust/.gitignore @@ -13,5 +13,7 @@ # rust target/ -# ingore the icp-cli cache +# icp-cli local cache (safe to delete, rebuilt on next build/deploy) .icp/cache/ +# Do NOT ignore .icp/data/ — it stores mainnet canister ID mappings. +# See: https://github.com/dfinity/icp-cli/blob/main/docs/concepts/project-model.md#whats-safe-to-delete diff --git a/rust/.icp/data/mappings/.gitkeep b/rust/.icp/data/mappings/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/static-website/.gitignore b/static-website/.gitignore index a547bf3..1d639f0 100644 --- a/static-website/.gitignore +++ b/static-website/.gitignore @@ -22,3 +22,8 @@ dist-ssr *.njsproj *.sln *.sw? + +# icp-cli local cache (safe to delete, rebuilt on next build/deploy) +.icp/cache/ +# Do NOT ignore .icp/data/ — it stores mainnet canister ID mappings. +# See: https://github.com/dfinity/icp-cli/blob/main/docs/concepts/project-model.md#whats-safe-to-delete diff --git a/static-website/.icp/data/mappings/.gitkeep b/static-website/.icp/data/mappings/.gitkeep new file mode 100644 index 0000000..e69de29 From af3a8e65ce5dddc19ddd43d9bf49627ad7d35770 Mon Sep 17 00:00:00 2001 From: Marco Walz Date: Mon, 16 Mar 2026 14:26:09 +0100 Subject: [PATCH 2/2] chore: move .gitkeep from .icp/data/mappings/ to .icp/data/ The mappings subdirectory is created automatically by icp-cli. Tracking .icp/data/ is sufficient to signal the directory should be committed. --- bitcoin-starter/.icp/data/{mappings => }/.gitkeep | 0 hello-world/.icp/data/{mappings => }/.gitkeep | 0 motoko/.icp/data/{mappings => }/.gitkeep | 0 proxy/.icp/data/{mappings => }/.gitkeep | 0 rust/.icp/data/{mappings => }/.gitkeep | 0 static-website/.icp/data/{mappings => }/.gitkeep | 0 6 files changed, 0 insertions(+), 0 deletions(-) rename bitcoin-starter/.icp/data/{mappings => }/.gitkeep (100%) rename hello-world/.icp/data/{mappings => }/.gitkeep (100%) rename motoko/.icp/data/{mappings => }/.gitkeep (100%) rename proxy/.icp/data/{mappings => }/.gitkeep (100%) rename rust/.icp/data/{mappings => }/.gitkeep (100%) rename static-website/.icp/data/{mappings => }/.gitkeep (100%) diff --git a/bitcoin-starter/.icp/data/mappings/.gitkeep b/bitcoin-starter/.icp/data/.gitkeep similarity index 100% rename from bitcoin-starter/.icp/data/mappings/.gitkeep rename to bitcoin-starter/.icp/data/.gitkeep diff --git a/hello-world/.icp/data/mappings/.gitkeep b/hello-world/.icp/data/.gitkeep similarity index 100% rename from hello-world/.icp/data/mappings/.gitkeep rename to hello-world/.icp/data/.gitkeep diff --git a/motoko/.icp/data/mappings/.gitkeep b/motoko/.icp/data/.gitkeep similarity index 100% rename from motoko/.icp/data/mappings/.gitkeep rename to motoko/.icp/data/.gitkeep diff --git a/proxy/.icp/data/mappings/.gitkeep b/proxy/.icp/data/.gitkeep similarity index 100% rename from proxy/.icp/data/mappings/.gitkeep rename to proxy/.icp/data/.gitkeep diff --git a/rust/.icp/data/mappings/.gitkeep b/rust/.icp/data/.gitkeep similarity index 100% rename from rust/.icp/data/mappings/.gitkeep rename to rust/.icp/data/.gitkeep diff --git a/static-website/.icp/data/mappings/.gitkeep b/static-website/.icp/data/.gitkeep similarity index 100% rename from static-website/.icp/data/mappings/.gitkeep rename to static-website/.icp/data/.gitkeep