Pass is a great command line tool to handle your password, as well in a team.
Add the key into your local GPG base:
$ gpg --keyserver <a specific key server if needed> --search-keys <email address>
Now you have to sign your teammate keys:
$ gpg --edit-key <email address>
gpg> lsign
gpg> y
gpg> save
You can add a new member in the repository by adding it's email address to the .gpg-id
file:
$ echo <email address> >> .gpg-id
To let the new member, or when a member is leaving, you should re-encode all the passwords from the store:
# Give the correct path/alias if you're not using the default location
$ pass init $(cat ~/.password-store/.gpg-id)
$ pass git push
If you want to have multiple repositories to host different sets of passwords, you can clone another repository and add an alias in your shell. See the documentation in the source code of the password store, see https://git.zx2c4.com/password-store/tree/src/completion
Based on https://medium.com/@davidpiegza/using-pass-in-a-team-1aa7adf36592