Git Module Subtree Composer Best Pratice

If I want to create a module inside the vendor folder, what are the git commands to create a subtree (or somehting else)?

Scenario:

I update the module

Push it to github

My colleague wants the update too, should he pull from github, or just update composer?

Then he has to make his own changes and push them too github

I tried some solutions but I felt like they where not the best, how does everybody else do this?

Scenario:

I want to override some view files from an existing module and create my own module for this (yes it has to be a module), extending from the original module

Do I need extra steps for this? And a separate composer package?

How can my colleague install this module and make some changes?

You don’t really need subtree. Work with it as a with separate git repo i.e. git init etc.

Thanks, someone already told me on stack overflow, I was seeing things way too complicated