It is a good practice to never work directly on your production code, in order to avoid impacting your end users when updating your code. This is why we just introduced Bot Snapshots, which let you tag specific versions of your bot while in development, and deploy those snapshots on specific channels. You can think of snapshots as git tags or github releases.
You can create a new Snapshot by clicking on Take Snapshot at the bottom of your flow editor:
When using a snapshot in a channel, you can now continue making changes on your bot without impacting your users on that channel.
Also, you can revert your code to any snapshot. This makes it safe to try developing ambitious things as you can come back to an earlier version of your code at any time.
By default, all channels run on the
latest snapshot (which is your latest build). You can select a snapshot in the channel's configuration panel, and you can update a snapshot to a new version by simply tagging the new version with the same name as an existing snapshot, which it will replace (similarly to git tags).