Changesets and updating work

I may be wrong here, but isn't it the case that if you have a component selected for upload in a change set and you alter that component, you would have to delete the component from the change set and re-add it to have the latest version?

For example, if you are using an Ember Data model in your route, saving the changeset will save the model.But a lot of developers like to use other Git tooling, such as Git Extensions, Source Tree or the command line.And then we have the teams that work on other platforms, perhaps developing i OS apps but store their source code in a Git repo in TFS.) I imagine the "upload" button to be a kind of zipping process that encapsulates the set of files at that moment in time. This is something that has been bothering me as I need to frequently push certain metadata into a staging org.If that is your case too I'd recommend Copado Deployer.