That's the expected behavior. More at https://learn.microsoft.com/en-us/answers/questions/818136/does-publishing-one-function-app-wipe-out-the-func
You'd need to deploy all functions together.
For the recovery options, refer to https://github.com/MicrosoftDocs/azure-docs/issues/18258
Azure Functions creates an Azure File Share to store the functions. So, you can configure backups or create snapshots manually for this file share to keep track of changes being made but nothing is done by default. Without either of these enabled, I don't believe there is any way to recover the deleted files.
If the above response helps answer your question, remember to "Accept Answer" so that others in the community facing similar issues can easily find the solution. Your contribution is highly appreciated.
hth
Marcin