Eu estive pesquisando, mas não consigo encontrar uma descrição completa do que está acontecendo com essas três versões do MSYS. (É perfeitamente possível que eu simplesmente não saiba o que procurar.) Entendo que o MSYS é uma porta mínima de ferramentas Linux para dar suporte ao desenvolvimento usando o MinGW, mas não estou claro sobre o relacionamento entre os três ou o equipes que os desenvolveram / mantêm.
Questões específicas a serem abordadas:
- Quais estão em desenvolvimento ativo? (Em particular, o MSYS está morto e o MSYS2 está ativo?)
- Qual é a relação entre os grupos que os mantêm? (Em particular, a equipe do MSYS criou o MSYS2?)
- O msysgit usa apenas um dos outros ou eles têm sua própria ramificação do MSYS?
- Algum destes é compatível?
- Existem problemas de compatibilidade com versões específicas do Windows para qualquer um desses?
- Um fornece os principais recursos sobre o outro?
Respostas:
Isenção de responsabilidade: sou desenvolvedor MSYS2
Embora o MSYS não esteja morto, eu diria que ele também não parece muito saudável. É um projeto iniciado pela equipe do MinGW há muitos anos como um fork do Cygwin que nunca o acompanhou.
O msysgit é uma bifurcação de uma versão um pouco mais antiga do MSYS com alguns patches personalizados, versões antigas do Bash e Perl e uma porta nativa do Git.
O MSYS2 é um projeto iniciado por Alexey Pavlov, da equipe mingw-builds (que são os empacotadores oficiais das cadeias de ferramentas MinGW-w64) como um garfo recente do Cygwin que rastreia de perto o último Cygwin para que ele não fique desatualizado. Alexey enviou os antigos patches do MSYS e adicionou alguns dos seus.
Além de fornecer as ferramentas Unix necessárias para compilar software nativo - o objetivo declarado do MSYS -, transportamos o gerenciador de pacotes Pacman do Arch Linux . Pacman é mais do que apenas gerenciar pacotes binários (embora faça isso muito bem). Possui uma infraestrutura de criação de software chamada makepkg que permite a criação de receitas (PKGBUILD e arquivos de correção) para a criação de software.
IMHO, a adoção do Pacman muda significativamente as coisas para o desenvolvimento de código aberto no Windows. Em vez de todos invadirem seus próprios scripts de shell sob medida para criar software de uma maneira incompatível e hodge-podge, os pacotes agora podem depender de outros pacotes e os arquivos PKGBUILD e os patches associados podem ser usados como referência para a construção de novos PKGBUILDs. É o mais próximo de um sistema Linux que um Windows (nativo) pode obter (Arch Linux em particular) e permite a atualização simples de todos os pacotes instalados.
Nosso objetivo é o Windows XP SP3, no mínimo, e suportamos Windows de 32 e 64 bits. Pedimos que você nunca misture o MSYS2 com o msys ou o msysgit. O Pacman é usado para gerenciar todo o sistema e, como tal, arquivos de outros sistemas causarão conflitos.
Também tentamos atualizar nossos patches para os projetos que construímos e solicitamos ativamente contribuições de outros projetos de código aberto. Esperamos que outras pessoas achem fácil trabalhar conosco.
Nosso site principal está no SourceForge e contém links para nossos repositórios PKGBUILD. Também temos um site de instalação mais amigável no GitHub .
Sinta-se à vontade para se juntar a nós no IRC (oftc # msys2) se desejar obter mais informações.
fonte
O Git 2.8 (março de 2016) inclui uma confirmação muito detalhada que explica a importância do msys2 para o novo git-for-windows que substituiu o msysgit no início de 2015 .
Veja commit df5218b (13 de janeiro de 2016) por Johannes Schindelin (
dscho
) .(Mesclado por Junio C Hamano -
gitster
- na confirmação 116a866 , 29 de janeiro de 2016)Nos comentários , a pergunta foi feita em janeiro de 2016:
Ray Donnelly respondeu na época:
Mas ... madz ressalta que, no início de 2017, esse esforço não deu certo.
Vejo:
Alexpux/MSYS2-packages
PR 786git-for-windows/git
edição 284Portanto, o wiki menciona agora (2018):
Observe que, desde o commit aeb582a9 (Git 2.22, Q2 2019), o projeto Git for Windows iniciou o processo de atualização para uma versão de tempo de execução do MSYS2 baseada no Cygwin v3.x.
O Git 2.22 (Q2 2019) fará um teste à prova do futuro contra uma atualização da série MSYS2 runtime v3.x.
Veja commit c871fbe (07 de maio de 2019) de Johannes Schindelin (
dscho
) .(Incorporado por Junio C Hamano -
gitster
- in commit b20b8fe , 19 de maio de 2019)fonte
Meu entendimento sobre as conexões entre eles é
Brinque com a definição completa do gráfico na sereia .
fonte