Synchronize function - How do I actually save my RAPID code?

Options
Hello,

I recently came across the synchronize function after being told the 'apply' button doesn't actually save your RAPID code. 

So I am wondering which one I use in my case as I don't want to lose my updated code. 

1. synchronize to file = export changes to a file for storage or sharing.
2. synchronize to RAPID = push changes to robot/controller.
3. synchronize to station = pull changes from robot/controller into your station layout.


As I stated, I have been using the 'apply' button for all my RAPID code changes... but correct me if I am wrong, the 'apply' button only saves the RAPID code changes to a TEMPORARY file and doesn't send them to the robot/controller? Is that correct? Is this used for just testing code?

To actually save my RAPID code changes, I must 'Sync to RAPID', is that correct?