Estou trabalhando na máquina windows e uso o shell bash que vem com o Git. Mas existem muitos utilitários que estão faltando nesta versão do bash shell.
many utilities are missing in this version of bash shell. Por favor, adicione quais comandos estão faltando que você gostaria de usar.
030
3
Consulte serverfault.com/a/872557/212162 para obter uma maneira muito mais recente e fácil de usar utilitários que não estão incluídos por padrão.
nextgentech
Respostas:
16
É provável que você esteja usando duas versões do Git - a distribuição msysgit ou Cygwin .
Instalando utilitários adicionais para Cygwin
Embora você possa ter instalado o Git apenas como parte da instalação do Cygwin (se você usou o Cygwin), o Cygwin possui um programa chamado setup.exe, que pode ser usado para adicionar pacotes. Basicamente, tudo o que você precisa fazer é executar setup.exee escolher quais programas você deseja instalar quando chegar à janela Selecionar Pacotes . A introdução aqui fornece uma boa visão geral com imagens que detalham o processo.
O instalador do Cygwin é inteligente o suficiente para descobrir que você possui uma instalação preexistente e adicionará pacotes à sua instalação (em vez de desativá-la e começar de novo).
MSYS
A outra versão do Git que você provavelmente está usando (se não o Cygwin) é msysgit. Como o msysgit instala um ambiente Unix mínimo que não é realmente compatível com o MinGW, você precisará instalar o pacote MinGW ao lado do msysgit. A página Introdução ao MinGW fornece uma visão geral detalhada de como instalar o MinGW - como não tenho experiência com o MinGW pessoalmente, tudo o que posso fazer é encaminhá-lo às instruções.
Você precisará migrar sua instalação do msysgit para o MinGW. Isso pode ser feito fazendo o seguinte (extraído daqui ). Após a sequência a seguir, o MinGW deverá encontrar a instalação do Git.
cd GITDIR # Where GITDIR is wherever inside Program Files you put Git
cp bin/git* /MINGW/bin # Where MINGW is wherever you put MinGW
cp -r libexec/git* /MINGW/libexec
cp -r share/git* /MINGW/share
Para quem se perguntar, não tente usar o instalador do cygwin no pacote msysgit. Funciona parcialmente ... mas, ao resolver dependências, ele substituirá o sh.exe (que altera significativamente o seu ambiente).
Chris Betti
5
Como sei se meu git-bash usa cygwin ou msys?
Lmo
7
Eu instalei a partir de git-scm.com/download/win que é msysgit ou cygwin? EDIT Descobri. Em vez de excluir este comentário, direi que é msysgit.
Expiação limitada
3
@LimitedAtonement - Diga também como você descobriu isso, para outros leitores (como eu) que fizeram a mesma pergunta.
Ioanna 12/09
4
Você pode dizer o que instalou executando uname -ono terminal bash.
Cliff Armstrong
5
Com as instalações recentes do Git for Windows , a instalação de scripts e programas shell adicionais é bastante fácil.
Eu recomendo instalar o git usando o chocolateychoco install git , porque você pode atualizar o git (e todas as outras ferramentas instaladas com o chocolatey) executando choco upgrade all.
Simplesmente coloque os executáveis em C:\Program Files\Git\usr\bin( %ProgramFiles%\Git\usr\bin).
Se você estiver usando o msysgit, uma opção simples é instalar o MinGW e adicionar o caminho MINGW ao arquivo .bashrc que você está usando para a instalação do Git:
PATH=$PATH:/MINGW/msys/1.0/bin
... onde MINGW é onde você instalou o MinGW
Dessa forma, você pode usar as ferramentas MinGW diretamente da instalação do Git bash e, se precisar de outra ferramenta, basta instalá-lo no MinGW.
Faça o download do último binário wget para windows do eternallybored (eles estão disponíveis como um zip com documentação ou apenas um exe)
Se você fez o download do zip, extraia tudo (se o utilitário zip do Windows apresentar um erro, use o 7-zip ).
Renomeie o arquivo wget64.exepara, wget.exese necessário.
Vá wget.exepara o seu Git\mingw64\bin\.
Nota: notei alguns erros ao usar o Wget no Git Bash para criar arquivos WARC. Para um uso mais complexo do Wget, considere o Cygwin .
Hugo
O gerador de site estático Hugo pode ser baixado como um binário e não possui um instalador. Soltá-lo binfacilmente adiciona-o ao caminho do Git Bash. Pegue a versão do Windows de 64 bits na página de lançamentos . Descompacte o download e copie hugo.exepara o seu Git\mingw64\bindiretório.
Xpdf
Xpdf é um utilitário útil para manipular arquivos PDF.
Download make-4.1-2-without-guile-w32-bin.zip(obtenha a versão sem dolo).
Extrair zip.
Copie o conteúdo para Git\mingw64\mesclar as pastas, mas NÃO substitua / substitua os arquivos existentes.
Nano
A partir de 2018, as versões recentes do Git Bash incluem o Nano, então isso é desnecessário!
Baixe o binário do Nano na página de suporte do Nano win32 . Você só precisa do .exearquivo, que é nomeado nano-git-0d9a7347243.exe(até o momento em que este documento foi escrito).
Renomeie o arquivo para nano.exee copie para o mingw64\bindiretório
Esta versão do Nano não funcionará apenas com o Git Bash, mas pode ser chamada usando winpty, por exemplo winpty nano test.txt,.
@ Mike sua resposta é semelhante, exceto que eu não instalar cygwin64
geneorama
1
Tentei o seguinte e instalei o emacs no git-bash .. 1. Instale o msys2 em algum lugar (não precisa ser o mesmo computador). 2. Em msys2, execute o seguinte:
cd /tmp
mkdir -p var/lib
cp -R /var/lib/pacman var/lib/
pacman -Sr /tmp emacs
tar zcf emacs.tar.gz usr
Copie emacs.tar.gzpara onde você pode acessar a partir do git-bash e, em seguida, em git-bash:
tar zxf emacs.tar.gz -C / emacs
Isso é tudo, boa sorte.
Após o primeiro post, tentei outro computador, mas não estava funcionando. Acontece que algumas dlls estão ausentes no git-bash. Depois, testei em uma máquina virtual limpa com as seguintes etapas:
Tudo pronto, agora o emacs roda em git-bash. Algumas das 26 dlls podem não ser necessárias, mas eu prefiro economizar meu tempo em vez de espaço em disco.
Ao usar o Git bash para Windows (MinGW64), era muito difícil obter o rsync para ser adicionado a ele. continuou recebendo erro: dup () in / out / err falhou
Em vez disso, o uso do Cygwin funcionou eventualmente.
Etapas que tomei para usar o rysnc no Gitbash para Windows
Instale o gitbash para Windows
Instale o cygwin64
Adicione o caminho cygwin à variável de caminho do Windows
Você pode baixar o arquivo rsync diretamente do mysys . Basta pesquisar na página pelo rsync e escolher aquele com a data mais recente / número da versão mais recente.
Descompacte este arquivo ( rsync-3.1.3-1-x86_64.pkg.tar.xz) via
tar -xf rsync-3.1.3-1-x86_64.pkg.tar.xz
Em seguida, copie o rsync em ./usr/bin/rsync.exe
e cole-o na pasta / usr / bin da sua instalação do Git.
Na minha máquina, isso éC:/Program Files/Git/usr/bin/
Você pode ver o local da sua instalação do Git via
Nota: Não foi possível descompactar o rsync-3.1.3-1-x86_64.pkg.tar.xzarquivo diretamente na pasta Git, porque as permissões não o permitiam. E Git Bash não tem sudo.
Mas eu poderia descompactá-lo diretamente na minha pasta Downloads, sem problemas.
Tudo bem, porque você só precisa do rsync.exearquivo de qualquer maneira.
many utilities are missing in this version of bash shell
. Por favor, adicione quais comandos estão faltando que você gostaria de usar.Respostas:
É provável que você esteja usando duas versões do Git - a distribuição msysgit ou Cygwin .
Instalando utilitários adicionais para Cygwin
Embora você possa ter instalado o Git apenas como parte da instalação do Cygwin (se você usou o Cygwin), o Cygwin possui um programa chamado setup.exe, que pode ser usado para adicionar pacotes. Basicamente, tudo o que você precisa fazer é executar
setup.exe
e escolher quais programas você deseja instalar quando chegar à janela Selecionar Pacotes . A introdução aqui fornece uma boa visão geral com imagens que detalham o processo.O instalador do Cygwin é inteligente o suficiente para descobrir que você possui uma instalação preexistente e adicionará pacotes à sua instalação (em vez de desativá-la e começar de novo).
MSYS
A outra versão do Git que você provavelmente está usando (se não o Cygwin) é msysgit. Como o msysgit instala um ambiente Unix mínimo que não é realmente compatível com o MinGW, você precisará instalar o pacote MinGW ao lado do msysgit. A página Introdução ao MinGW fornece uma visão geral detalhada de como instalar o MinGW - como não tenho experiência com o MinGW pessoalmente, tudo o que posso fazer é encaminhá-lo às instruções.
Você precisará migrar sua instalação do msysgit para o MinGW. Isso pode ser feito fazendo o seguinte (extraído daqui ). Após a sequência a seguir, o MinGW deverá encontrar a instalação do Git.
fonte
uname -o
no terminal bash.Com as instalações recentes do Git for Windows , a instalação de scripts e programas shell adicionais é bastante fácil.
Eu recomendo instalar o git usando o chocolatey
choco install git
, porque você pode atualizar o git (e todas as outras ferramentas instaladas com o chocolatey) executandochoco upgrade all
.Simplesmente coloque os executáveis em
C:\Program Files\Git\usr\bin
(%ProgramFiles%\Git\usr\bin
).Exemplo para git-fresh
Copie o arquivo git-fresh para
C:\Program Files\Git\usr\bin
.Exemplo para adr-tools
src/
paraC:\Program Files\Git\usr\bin
fonte
Se você estiver usando o msysgit, uma opção simples é instalar o MinGW e adicionar o caminho MINGW ao arquivo .bashrc que você está usando para a instalação do Git:
... onde MINGW é onde você instalou o MinGW
Dessa forma, você pode usar as ferramentas MinGW diretamente da instalação do Git bash e, se precisar de outra ferramenta, basta instalá-lo no MinGW.
fonte
Você pode fazer download de unidades adicionais do Unix
Wget, Hugo, Xpdf, make, Nano
aqui: https://gist.github.com/evanwill/0207876c3243bbb6863e65ec5dc3f058Wget
wget64.exe
para,wget.exe
se necessário.wget.exe
para o seuGit\mingw64\bin\
.Nota: notei alguns erros ao usar o Wget no Git Bash para criar arquivos WARC. Para um uso mais complexo do Wget, considere o Cygwin .
Hugo
O gerador de site estático Hugo pode ser baixado como um binário e não possui um instalador. Soltá-lo
bin
facilmente adiciona-o ao caminho do Git Bash. Pegue a versão do Windows de 64 bits na página de lançamentos . Descompacte o download e copiehugo.exe
para o seuGit\mingw64\bin
diretório.Xpdf
Xpdf é um utilitário útil para manipular arquivos PDF.
xpdf-tools-win-4.00\bin64\
para o seuGit\mingw64\bin\
.pdftotext
epdftopng
.faço
make-4.1-2-without-guile-w32-bin.zip
(obtenha a versão sem dolo).Git\mingw64\
mesclar as pastas, mas NÃO substitua / substitua os arquivos existentes.Nano
.exe
arquivo, que é nomeadonano-git-0d9a7347243.exe
(até o momento em que este documento foi escrito).nano.exe
e copie para omingw64\bin
diretóriowinpty
, por exemplowinpty nano test.txt
,.fonte
Encontrei hoje uma resposta bastante simples que funcionou
rsync
.rsync
partir de futureware.at *C:\rsync-3.1.2-2-x86_64.pkg
* Não sei quem está por trás do futureware.at, eu preferiria vincular a uma fonte mais primária.
fonte
Após o primeiro post, tentei outro computador, mas não estava funcionando. Acontece que algumas dlls estão ausentes no git-bash. Depois, testei em uma máquina virtual limpa com as seguintes etapas:
Instale o msys2-x86_64-20180531 e o Git-2.19.1-64-bit .
Atualize o msys2, abra o console do msys64 e execute:
Feche o console do msys64 quando solicitado e execute o comando acima novamente.
Obtenha os arquivos emacs como as etapas anteriores (execute o seguinte no msys64):
ps: Uma vez tentei as etapas acima em / d / tmp em vez de / tmp e não consegui instalar o emacs nele.
Abra o git-bash e extraia os arquivos emacs:
Ele reclamará da falta da biblioteca compartilhada "?" em tentar executar o emacs agora. O "?" não será revelado a nenhum legível
Volte para msys64 e obtenha as dlls msys2:
No git-bash, compare dlls com msys:
No meu caso, existem 26 dlls em diff_dlls.txt.
Copie as DLLs do msys64 para o git-bash:
No msys64:
No git-bash:
Tudo pronto, agora o emacs roda em git-bash. Algumas das 26 dlls podem não ser necessárias, mas eu prefiro economizar meu tempo em vez de espaço em disco.
fonte
Ao usar o Git bash para Windows (MinGW64), era muito difícil obter o rsync para ser adicionado a ele. continuou recebendo erro: dup () in / out / err falhou
Em vez disso, o uso do Cygwin funcionou eventualmente.
Etapas que tomei para usar o rysnc no Gitbash para Windows
fonte
Pode-se estender o número de recursos no git-bash criando scripts e chamá-los definindo-os no
~/.bash_profile
arquivo.Exemplo
Se alguém quiser usar o
watch
comando, esse script poderá ser adicionado ao~/.bash_profile
:https://gist.github.com/espaciomore/28e24ce4f91177c0964f4f67bb5c5fda
e envolva-o dentro de uma função:
Assim que alguém salva o arquivo e executa
source ~/.bash_profile
, deve poder assistir à saída dos comandos.fonte
https://stackoverflow.com/questions/32712133/package-management-in-git-for-windows/52105321#52105321
fonte
adicionar
rsync
Você pode baixar o arquivo rsync diretamente do mysys . Basta pesquisar na página pelo rsync e escolher aquele com a data mais recente / número da versão mais recente.
Descompacte este arquivo (
rsync-3.1.3-1-x86_64.pkg.tar.xz
) viaEm seguida, copie o rsync em
./usr/bin/rsync.exe
e cole-o na pasta / usr / bin da sua instalação do Git.Na minha máquina, isso é
C:/Program Files/Git/usr/bin/
Você pode ver o local da sua instalação do Git via
Aqui está um repositório essencial da hisplan que possui instruções junto com um link para a versão 3.1.3-1 no rsync https://gist.github.com/hisplan/ee54e48f17b92c6609ac16f83073dde6 .
Nota: Não foi possível descompactar o
rsync-3.1.3-1-x86_64.pkg.tar.xz
arquivo diretamente na pasta Git, porque as permissões não o permitiam. E Git Bash não tem sudo.Mas eu poderia descompactá-lo diretamente na minha pasta Downloads, sem problemas.
Tudo bem, porque você só precisa do
rsync.exe
arquivo de qualquer maneira.fonte