Esse erro que aconteceu contigo: fatal: refusing to merge unrelated histories é porque você está com um repositório local que é diferente do repositório no GitHub, ou seja, devem ser de projetos distintos e com isso o Git se perdeu com os commits, pois eles são distintos.
Recomendo então você criar um novo repositório no GitHub e atualizar o seu repositório local com esse novo repositório remoto:
git remote remove origin
git remote add origin URL_DO_NOVO_REPOSITORIO_NO_GITHUB
git push -u origin main
Quanto a sua outra pergunta, o fluxo de trabalho após isso será o seguinte:
- Realizar alterações no projeto (novas funcionalidades, ajustes, melhorias, etc)
- Registrar as alterações com um commit (git add, git commit)
- Enviar seu novo commit para o repositório remoto no GitHub (git push)
Caso existam outras pessoas trabalhando no mesmo projeto, será necessário pegar os commits que elas enviaram para o GitHub antes de você enviar os seus commits. O fluxo então seria:
- Realizar alterações no projeto (novas funcionalidades, ajustes, melhorias, etc)
- Registrar as alterações com um commit (git add, git commit)
- Trazer os novos commits do repositório remoto no GitHub para o seu repositório local (git pull)
- Enviar seu novo commit para o repositório remoto no GitHub (git push)