Erro no Git Bash

Pessoal estou com um problema ao acessar a pasta desktop pelo Git Bash. Desculpem se for algo muito básico. Sempre que coloco “cd Desktop” surge a mensagem “bash: cd: Desktop/: Not a directory”, já tentei colocar em português e também usando letras minúsculas e etc, porém o erro continua. Alguém consegue me auxiliar?

5 Likes

Vai lá onde vc acessa as pastas no seu computador e entra no Desktop. Aí clica com o botão direito onde ta escrito Desktop, e seleciona ‘copiar endereço’. Depois vai no Git Bash e da um cd e cola esse endereço

image

3 Likes

Isso ocorre porque o diretório inicial do git bash não é o C:, ou seja, não é possivel mudar para a pasta Desktop de início, pra isso existem algumas alternativas. A que acho mais simples, é ir na pasta que deseja utilizar o git bash, botão direito, Git bash here

3 Likes

@lucasoliveira, talvez seja por causa de onde vc “está”. Ao abrir o Git Bash, no nome da janela vai estar escrito o diretório onde vc está (ao lado de minimizar). No meu, por exemplo, aparece c/Users/Usuario/, que é a “root” de onde abre o Git Bash. Se vc não está na sua pasta de usuário do Windows, ele não vai achar a pasta chamada desktop.

2 Likes

Obrigado, foi a única forma que eu consegui.

2 Likes

Cara, a maneira como você está usando o comando não é a correta. E também tem toda a questão de você precisar saber se localizar no terminal.

EDIT: Fiz considerando o Linux como base, mas os comandos devem funcionar da mesma maneira no Bash, ok? Só pode variar o jeito que o terminal te mostra as pastas.

Vou te explicar como se achar por lá:

terminalPWD

Quando eu abro o terminal, sou recebido por nomedousuario@nomedamaquina: ~$, no meu caso gus@Gus-VB:~$.

Veja o ~ em azul, ele significa que o terminal está me dizendo isso aqui:

Cara, você está no seu diretório principal (mais conhecido no Ubuntu como /home/nomedousuario).

Isso significa que, todo o comando que eu der para ele vai ser com relação a esse diretório.

Mas digamos que eu não saiba aonde eu estou, o que eu faço?

Existe um comando que serve exatamente para o terminal te dizer aonde você está, ele se chama pwd.

Escreva pwd e dê um enter. O terminal vai te retornar na próxima linha o caminho completo de onde você está, no meu caso:

/home/gus/

Ótimo, agora já sei aonde estou, então eu sei quais pastas estão neste diretório.

Vou lá e dou um comando cd (o comando de mudar de diretório) seguido de ./Downloads/ e sou levado para a minha pasta Downloads, que o terminal sinaliza como gus@Gus-VB:~/Downloads$.

Agora que você já deve tá manjando, você sabe que ~/Downloads em azul significa que o terminal está dizendo para você:

Mano, você está no seu diretório /Downloads/, e chegou aqui através do seu diretório principal (o /home/gus/ no meu caso).

Mas você também pode não saber nem mesmo aonde você está ao usar o comando pwd, porque você não lembra quais as pastas que estão no diretório atual, o que você faz?

Veja que eu usei o pwd na primeira linha e o terminal me devolveu a minha localização. Mas eu não lembro as pastas e arquivos que estão dentro deste diretório, então não tem como eu saber para onde eu vou com o comando cd.

É aí que entra o ls. Quando você usa este comando no terminal, você está dizendo para ele:

Mano, faz uma lista com todas as pastas e arquivos nesse diretório.

O terminal imediatamente vai lá e faz isso para você. No meu caso ele só mostrou pastas (dá para saber porque estão em azul), mas se tivesse arquivos, ele iria mostrar em cinza.

Ótimo, agora sim eu sei exatamente aonde eu estou e o que tem dentro deste diretório. Então eu vou em frente e uso cd e vou para onde eu quero.

Mas ainda tem um probleminha.

Beleza, tudo lindo, tudo bonito. Mas ai você me pergunta:

O que, em sã consciência, é aquele ./ que você usou em cd ./Downloads/, cara?

Calma, é tranquilo:

O terminal do linux entende o . como o seguinte comando:

Do lugar que a gente tá

Ein?

Calma, vamos usar a primeira imagem como exemplo:

Uso pwd para saber onde estou e por fim uso cd ./Downloads/ para ir aonde quero.

Basicamente, estou dizendo para o terminal:

Cara, quero mudar de diretório (cd), então do lugar que a gente tá (./) me manda para a pasta Downloads (Downloads/).

O terminal vai procurar se existe uma pasta chamada Downloads no diretório que você está e, se ela existir, vai te mandar para lá.

Cara, espero ter ajudado, tentei ser bem didático.

Lembre-se de que o jeito que você escreve para o terminal é muito importante. Use sempre o ./ para indicar que é dali que você quer sair para ir para uma pasta no mesmo diretório, existe também o ../ que basicamente diz para o terminal voltar para a pasta anterior.

Acho que isso cobre todas as suas dúvidas de maneira bem explicativa, qualquer coisa é só me falar.

Abraço.

5 Likes

resposta muito completa e boa, vale a pena ler com bastante atenção. Mas quanto a dúvida do dono do post, tem mais a ver com o terminal do git no WIndows, que é mil vezes superior ao powershell, mas que de fato quando você abre ele, ele abre num diretório do git, que não é o melhor caso.

3 Likes

Obrigado por notar, cara. Também fui perceber de última hora aqui :sweat_smile:

1 Like