Thanks for your post.
I'm afraid I'm not quite sure I follow the problem here 100%, but the short answer is that a drop is normally done by a user deleting the object in their database, and then committing that change.
As you're aware, our GIT support only makes changes to / from the local working folder on your machine, we don't push or pull changes to a central repository.
If you later link up a database that doesn't have a certain object in it to a repository that does, then we'll usually show this as an object that needs to be added to the DB rather than the other way around, because there won't be any difference between the database and the "working base" temporary folder that tells us the object was actually delete on the DB side of things.
Depending on what needs to happen, you then either need to manually remove the object from the repository or another user could drop it from their own DB (assuming you're sandboxed/dedicated mode) and commit the drop correctly.