Ferramenta de gerenciamento de desenvolvimento

Galera, preciso de uma ajuda.

Estou desenvolvendo um site em conjunto com alguns amigos e queria saber se existe alguma ferramenta que possamos compartilhar entre si o codigo que estamos escrevendo, que quando um atualizar o codigo, apareça para o outro no projeto.

Alem disso, queria saber se tem como fazer essa mesma coisa com o banco de dados mysql, uma forma de que se eu atualizar informações do banco ou criar um nova tabela, automaticamente atualize o projeto para os outros.

Quem conseguir me ajudar, ficaria grato.

Cara, use o Github para versionar o código do projeto, e para versionar o banco de dados, tu pode usar o Flyway.

O flyway funciona com migrações. Cara migração é um arquivo com alterações a serem feitas no banco. Quando vc cria uma migração e sobe a aplicação, o flyway roda o script fazendo a alteração no banco.

Muito bom cara, muito obrigado!