Do changesets employ merge techniques for files in salesforce, or do they overwrite files? We are doing a weird development so our 2 Development Sandbox and test sandbox are working on different things, however some files are overlapping that is each sandbox is adding there own changes to it.
It depends. Profiles are mostly immune to overwriting changes (because each field/object is specified separately), but code units in particular will result in overwritten code. For this reason, it's recommended that you use SVN or GIT in order to prevent accidental overwrites.