I've just started using git submodules for my Android application by following this guide
I've successfully cloned the repo and changed a few things to suit the needs of my application, but I can't push those changes back to my repo.
From your question it seems that your submodule (say
proj-dep) is technically an external library.
Let us say that the code of
proj-dep is hosted at https://github.com/vendor/proj-dep and you have mapped this path to your submodule.
However, you are not simply using
proj-dep as is, you are using a modified version of the same.
You will be able to push your own changes to this fork. Also, you can pull changes from vendor's
proj-dep as and when needed and merge/rebase your fork (eventually pulling them down to your submodule path).