Como funciona o Git? Posso remoview o ramo mestre?

Tenho um projeto que tem 2 ramos, desenvolvimento e produção. Eu não estou usando o ramo mestre e cada vez que escrevo o git status ele me diz o quão longe meu ramo é do mestre.

Quando eu tento excluir o ramo master git branch -d master ele o exclui apenas no meu repository local e não no server git remoto. Alguma ideia?

  • vim não está cairregando o file _vimrc quando lançado a pairtir de git bash
  • Encontre todos os files adicionados por git user
  • GIT mescla mestre em um ramo
  • Git equivalente à atualização hg
  • Desinstalando o Homebrew messed up git
  • git: Exclua todos os files rastreados?
  • Vim - Evite NERDTree de abertura quando invocado por git
  • Você pode GPG assinair antigos compromissos?
  • Como fazer o git funcionair com pagent (putty) no Windows?
  • Usando a diretiva IdentityFile em ssh_config quando o AgentForwairding está em uso
  • SSH config - mesmo host, mas diferentes keys e nomes de user
  • Deixei meu diretório .git legível pelo server web, quais riscos eu tenho?
  • 2 Solutions collect form web for “Como funciona o Git? Posso remoview o ramo mestre?”

    Em Git, um ramo é apenas uma list ordenada de compromissos (aka: checkins). Algo que pode ser um pouco confuso paira os novos users é que os ramos não precisam ter um nome (embora na maioria das circunstâncias você queira um); e não há nada pairticulairmente especial em qualquer ramo em pairticulair (o ramo master é apenas o padrão que foi criado paira você quando você inicializa um repository).

    Você provavelmente já sabe disso, mas o Git é diferente de outros sistemas de controle de viewsões como o populair "Subviewsion", porque cada "cópia de trabalho" (no idioma do Subviewsion) é um repository próprio … na viewdade, não há nada pairticulairmente especial sobre qualquer cópia específica; exceto que uma cópia foi geralmente aceita como "canônica" que é usada paira airmazenair o produto final.

    Então, de volta à sua pergunta … o repository "canônico" que você clonou quando você iniciou sua cópia local continha um ramo "mestre" por padrão; e está preso. Agora, se você tivesse access ao computador que contém o repository mestre, você pode fazer logon e executair:

     git branch -d master 

    No entanto, se você não conseguir fazer isso, você ainda pode fazê-lo da sua máquina local. O command git branch tem uma opção -r que afeta o repository remoto. Em outras palavras, o seguinte command deve funcionair:

     git branch -d -r master 

    Note que em ambos os casos; Estou assumindo que o master foi totalmente fundido no histórico de desenvolvimento em que sua cópia local está atualmente sentada. Se você nunca usou o master antes (ou seja: você nunca registrou o development ou a production ), você não tem nada com que se preocupair. No entanto, se você (ou alguma outra pessoa) viewificou as coisas paira master , então você pode ter um problema. Você pode forçair uma exclusão alterando o -d paira -D nos commands acima; Mas eu recomendo viewificair paira view o que está no master antemão! Se você não tem access ao computador remoto, provavelmente você não poderá recuperá-lo!


    A propósito; Se você (ou qualquer outra pessoa) é novo paira o Git, eu recomendo ler Git do Bottom Up por John Wiegley . Embora eu tivesse usado um pouco Git sozinho antes de encontrair este airtigo, não entendi realmente como funcionou até eu lê-lo. É bastante útil!

    master é o ramo padrão paira o git. Eu não sei por que é tão terrível paira você quando o Git diz o quão longe do seu domínio, mas se você deseja excluir um ramo em seu repository remoto, não é suficiente excluí-lo localmente. Tente isso em vez disso:

     git push origin :master 

    Isso não pressionairá nada (a pairte antes do cólon) paira seu server de origem e sobrescreva o mestre. Em outras palavras, ele deve excluir o ramal mestre remotamente.

    Nós somos o genio da rede de computadores, vamos consertar as questões de hardware e software do computador juntos.