Purpose of deno.lock generated file

What is the purpose of deno.lock file, which gets generated locally? Should I push it to github repo or should it be ignored?

It’s a lockfile for Edge Functions. If you don’t use those, you can ignore it.