You can use force:source:push for scratch orgs only. If you’re synchronizing source to another org, use the Metadata API. During development, you change files locally in your file system and change the scratch org directly using the builders and editors that Salesforce supplies.