Gerenciando multiplas contas do git [pt-BR]

Em algum momento você já deve ter se deparado com a necessidade de utilizar mais de um email na configuração do git. Seja por estar fazendo commit em projetos que utilizam um emails diferentes ou por que na mesma máquina você tem projetos feitos para empresas diferentes.

A troca do email normalmente pode ser feita pelo comando

git config user.email [email protected]


Mas, ficar alterando essa configuração manualmente toda vez que precisar fazer um commit em um projeto diferente não é muito produtivo, não é mesmo?

E se eu te disser que é possível realizar uma configuração específica do git para cada diretório?

해결책



Vamos supor que você Organize seus projetos em uma estrutura de diretórios dessa 형식:

Development/
├── CompanyA
│   ├── project-a-1
│   └── project-a-2
├── CompanyB
│   ├── project-b-1
│   └── project-b-2
├── my-project-1
└── my-project-n

CompanyA e projetos sob o diretório CompanyB 5066791410 , podemos fazer uso da Inclusão condicional 설정

A forma de como vamos trabalhar é deixando no arquivo .gitconfig todas as configurações compartilhadas e criar arquivos com configurações específicas para cada diretório.

.gitconfig

Seu arquivo .gitconfig se parecerá com assim:

[user]
    name = Mesaque Francisco
    email = [email protected]
    signinKey = ......

...

[includeIf "gitdir:~/Development/CompanyA/"]
    path = .gitconfig-company-a

[includeIf "gitdir:~/Development/CompanyB/"]
    path = .gitconfig-company-b


.gitconfig-회사-a

Seu arquivo .gitconfig se parecerá com assim:

[user]
    email = [email protected]
    signinKey = <diffrent key>


.gitconfig-회사-b

Seu arquivo .gitconfig-company-a se parecerá com assim:

[user]
    email = [email protected]
    signinKey = <diffrent key>


Note que aqui eu 활용 매개변수 .gitconfig-company-b como exemplo de mais coisas que podem ser alteradas nesses ser, por exemplo, aliases exclusivos para projetos da ferramenta de diffuma .

Estrutura final de arquivos



Imaginando que você esteja em um sistema unix-like, e esteja na sua home, ao listar seus arquivos teríamos essa visão:

.
├── Development
│   ├── CompanyA
│   │   ├── project-a
│   │   └── project-b
│   ├── CompanyB
│   │   ├── project-a
│   │   └── project-b
│   ├── my-project-1
│   └── my-project-n
├── .gitconfig
├── .gitconfig-company-a
└── .gitconfig-company-b


Para verificar se tudo funcionou corretamente, basta rodar dentro dos diretórios dos projetos o comando

git config user.email


Ese comando retornará o email atual utilizado para os commits.

좋은 웹페이지 즐겨찾기