-
1. Primeiros Passos
- 1.1 Sobre Controle de Versão
- 1.2 Uma Breve História do Git
- 1.3 O que é Git?
- 1.4 A Linha de Comando
- 1.5 Instalando o Git
- 1.6 Configuração inicial do Git
- 1.7 Obtendo Ajuda
- 1.8 Resumo
-
2. Fundamentos do Git
-
3. Ramificação (Branching) no Git
-
4. Git no Servidor
- 4.1 Os Protocolos
- 4.2 Colocando o Git em um Servidor
- 4.3 Gerando a sua Chave Pública SSH
- 4.4 Configurando o Servidor
- 4.5 Git Daemon
- 4.6 Smart HTTP
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 Opções de Hospedagem de Terceiros
- 4.10 Resumo
-
5. Git Distribuído
-
6. GitHub
-
7. Ferramentas do Git
- 7.1 Seleção de Revisão
- 7.2 Área de Stage Interativa
- 7.3 Fazendo Stash e Limpando
- 7.4 Assinando Seu Trabalho
- 7.5 Pesquisando (Searching)
- 7.6 Reescrevendo o Histórico
- 7.7 Reset Desmistificado
- 7.8 Merging Avançado
- 7.9 Rerere
- 7.10 Depurando com Git
- 7.11 Submódulos
- 7.12 Empacotando (Bundling)
- 7.13 Substituir (Replace)
- 7.14 Armazenamento de Credenciais
- 7.15 Resumo
-
8. Customizando o Git
- 8.1 Configuração do Git
- 8.2 Atributos do Git
- 8.3 Hooks do Git
- 8.4 Uma Política de Exemplo Imposta pelo Git
- 8.5 Resumo
-
9. Git e Outros Sistemas
- 9.1 Git como Cliente
- 9.2 Migrando para o Git
- 9.3 Resumo
-
10. Git Internals (Por Dentro do Git)
- 10.1 Encanamento e Porcelana (Plumbing and Porcelain)
- 10.2 Objetos do Git
- 10.3 Referências do Git
- 10.4 Arquivos de pacote (Packfiles)
- 10.5 Refspec
- 10.6 Protocolos de Transferência
- 10.7 Manutenção e Recuperação de Dados
- 10.8 Variáveis de Ambiente
- 10.9 Resumo
-
A1. Appendix A: O Git em Outros Ambientes
- A1.1 Interfaces Gráficas
- A1.2 Git no Visual Studio
- A1.3 Git no Visual Studio Code
- A1.4 Git no IntelliJ / PyCharm / WebStorm / PhpStorm / RubyMine
- A1.5 Git no Sublime Text
- A1.6 Git no Bash
- A1.7 Git no Zsh
- A1.8 Git no PowerShell
- A1.9 Resumo
-
A2. Appendix B: Incorporando o Git nos seus Aplicativos
- A2.1 Linha de Comando do Git
- A2.2 Libgit2
- A2.3 JGit
- A2.4 go-git
- A2.5 Dulwich
-
A3. Appendix C: Comandos do Git
- A3.1 Configuração e Ajustes
- A3.2 Obtendo e Criando Projetos
- A3.3 Snapshots Básicos
- A3.4 Branches e Merges
- A3.5 Compartilhando e Atualizando Projetos
- A3.6 Inspeção e Comparação
- A3.7 Depuração
- A3.8 Patches
- A3.9 E-mail
- A3.10 Sistemas Externos
- A3.11 Administração
- A3.12 Comandos de Encanamento
6.4 GitHub - Gerenciando uma Organização
Gerenciando uma Organização
Além das contas de usuário único, o GitHub tem o que são chamadas de Organizações (Organizations). Como as contas pessoais, as contas de Organizações têm um namespace onde todos os seus projetos existem, mas muitas outras coisas são diferentes. Essas contas representam um grupo de pessoas com propriedade compartilhada de projetos e existem muitas ferramentas para gerenciar subgrupos dessas pessoas. Normalmente, essas contas são usadas por grupos Open Source (como “perl” ou “rails”) ou empresas (como “google” ou “twitter”).
O Básico de uma Organização
Uma organização é muito fácil de criar; basta clicar no ícone “+” no canto superior direito de qualquer página do GitHub e selecionar “New organization” (Nova organização) no menu.
Primeiro você precisará nomear a sua organização e fornecer um endereço de e-mail para um ponto de contato principal para o grupo. Em seguida, você pode convidar outros usuários para serem coproprietários da conta, se desejar.
Siga essas etapas e você logo será o proprietário de uma organização novinha em folha. Como as contas pessoais, as organizações são gratuitas se tudo o que você planeja armazenar lá for de código aberto.
Como proprietário de uma organização, ao fazer fork de um repositório, você terá a opção de fazer o fork dele para o namespace da sua organização. Ao criar novos repositórios, você pode criá-los em sua conta pessoal ou em qualquer uma das organizações das quais é proprietário. Você também observa (“watch”) automaticamente qualquer novo repositório criado sob essas organizações.
Assim como em O Seu Avatar, você pode fazer o upload de um avatar para a sua organização para personalizá-la um pouco. Também como as contas pessoais, você tem uma página de destino (landing page) para a organização que lista todos os seus repositórios e pode ser visualizada por outras pessoas.
Agora vamos cobrir algumas das coisas que são um pouco diferentes com uma conta organizacional.
Equipes (Teams)
Organizações são associadas a pessoas individuais por meio de equipes, que são simplesmente um agrupamento de contas de usuários individuais e repositórios dentro da organização, e o tipo de acesso que essas pessoas têm nesses repositórios.
Por exemplo, digamos que a sua empresa tenha três repositórios: frontend, backend e deployscripts.
Você gostaria que os seus desenvolvedores de HTML/CSS/JavaScript tivessem acesso ao frontend e talvez ao backend, e que o seu pessoal de Operações tivesse acesso ao backend e deployscripts.
As equipes tornam isso fácil, sem ter que gerenciar os colaboradores de cada repositório individual.
A página da Organização mostra um painel simples de todos os repositórios, usuários e equipes que estão sob essa organização.
Para gerenciar as suas Equipes (Teams), você pode clicar na barra lateral Equipes (Teams) no lado direito da página em A página da Organização. Isso levará você a uma página que você pode usar para adicionar membros à equipe, adicionar repositórios à equipe ou gerenciar as configurações e níveis de controle de acesso para a equipe. Cada equipe pode ter acesso somente de leitura, leitura/gravação ou administrativo aos repositórios. Você pode alterar esse nível clicando no botão “Settings” (Configurações) em A página da Equipe.
Quando você convidar alguém para uma equipe, ele receberá um e-mail avisando que foi convidado.
Além disso, as menções à equipe, @mentions (como @acmecorp/frontend), funcionam da mesma forma que com usuários individuais, exceto que todos os membros da equipe são então inscritos na thread.
Isso é útil se você quiser a atenção de alguém de uma equipe, mas não sabe exatamente para quem perguntar.
Um usuário pode pertencer a qualquer número de equipes, então não se limite apenas a equipes de controle de acesso.
Equipes de interesse especial como ux, css ou refactoring (refatoração) são úteis para certos tipos de perguntas, e outras como legal (jurídico) e colorblind (daltônico) para um tipo totalmente diferente.
Log de Auditoria (Audit Log)
As organizações também dão aos proprietários acesso a todas as informações sobre o que aconteceu sob a organização. Você pode ir até a aba 'Audit Log' (Log de Auditoria) e ver quais eventos aconteceram em um nível de organização, quem os fez e em que lugar do mundo eles foram feitos.
Você também pode filtrar por tipos específicos de eventos, locais específicos ou pessoas específicas.