Pergunta

Eu quero se soltar todas as deletas de arquivo. Existe uma maneira fácil?

Quero aplicar isso ao padrão de arquivo de todas as exclusão.

Foi útil?

Solução

A saída de git status --porcelain é uma ótima maneira de construir liners e scripts para tarefas como esta:

git status --porcelain | awk '$1 == "D" {print $2}' | xargs git reset HEAD

Outras dicas

Caso seus nomes de caminho/arquivo devolvidos de git status conterspace Personagens, a chamada para awk pode ser modificado para incluir todo o caminho/nome do arquivo (citado), incluindo espaços:

git status --porcelain|awk '$1 == "D" {print substr($0, index($0,$2))}'|xargs git reset HEAD

No caso de qualquer outra pessoa usar o Git com o PowerShell, aqui está uma versão do PowerShell da excelente resposta de @jefromi:

git status --porcelain | where { $_.StartsWith(" D") } | foreach-object { git reset HEAD $_.replace(" D ", "") }

Veja a seção 'Desembando um arquivo encenado' neste livro.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top