If you have made changes to the Code Step of your bot, then it will not reflect on the Preview and Publish button, and you won't be able to publish those changes to the Production Environment.
In such cases, after making any changes to the Code Step, you should make sure you are doing some minor change to the User Message or Bot Response of any Step, and then train the bot. This way the Publish button will be active, and by pressing it, the bot will get published to Production, along with all the changes made to it.