Temos um repositório GIT interno (git.iongrade.com.br) que serve para abrigar customizações de clientes.
Esse repositório NÃO guarda o código-fonte do Accelero em si, apenas as customizações.
Trata-se de um GOGS (tipo um GitLab, mas bem mais simples) com controles básicos de acesso a dados.
PROCEDIMENTO
Suponhamos que tenhamos feito uma customização para o cliente BATATA.
Vamos entrar na interface web do git.iongrade.com.br e criar um usuário batata. O e-mail só precisa ser "válido o suficiente pra gente conseguir fazer login uma vez na vida".
Em seguida, vamos criar um repositório accelero-batata. Esse repositório deve ser configurado como privado, e na parte de Colaboração devemos adicionar o usuário batata com permissão de Leitura.
Em seguida, abrir uma aba anônima e logar como usuário batata. Ir nas configurações do usuário e adicionar a chave SSH do servidor aonde a customização será aplicada.
Finalmente, basta fazer clone desse repositório para o diretório client/client_specific através de algo parecido com:
git clone ssh://git@git.iongrade.com.br:7879/batata/batata.git ./client/client_specific
Lembrando que esse diretório client_specific talvez já exista, então talvez seja necessário "primeiro excluí-lo/renomeá-lo e depois fazer o clone".
DEV
Durante o processo de dev, o melhor é clonar o repositório do GOGS para o diretório local client e fazer todo o desenvolvimento ali dentro. Claro, sua chave SSH também deve ter permissão para fazer push de código nesse repositório.
A pasta client/client_specific especificada acima é montada pelo Docker como a pasta client dentro do container, então fazendo dessa forma você vai estar simulando localmente o que acontece naturalmente em ambiente de produção.
Feito isso, o procedimento é simples: git push pra enviar de dev para o GOGS... e pra instalar/atualizar uma customização no cliente basta fazer um git pull de dentro do client/client_specific.