Не можете да изтриете всички изтрити файлове в Git

Искам да изтрия всички изтрити файлове. Има ли лесен начин?

Искам да приложим това към шаблона на файла за всички изтривания.

7
22 нояб. настроен от Джако на 22 ноември. 2010-11-22 23:04 '10 в 23:04 2010-11-22 23:04
@ 4 отговора

Изходът на git status --porcelain е чудесен начин за създаване на еднолинейни скриптове и скриптове за такива задачи:

 git status --porcelain | awk '$1 == "D" {print $2}' | xargs git reset HEAD 
23
22 нояб. Отговорът е даден от Cascabel 22 ноември. 2010-11-22 23:15 '10 в 23:15 2010-11-22 23:15

Ако вашите пътеки / имена на файлове, върнати от git status съдържат space , awk повикването може да бъде променено, за да включва целия (цитиран) път / име на файл, включително интервали:

border=0
 git status --porcelain|awk '$1 == "D" {print substr($0, index($0,$2))}'|xargs git reset HEAD 
1
07 окт. отговорът е даден rc0r 07 oct. 2014-10-07 15:32 '14 в 15:32 2014-10-07 15:32

Само в случай, че някой използва git с PowerShell, тук е версията на командния ред на @jefromi с разрешения:

 git status --porcelain | where { $_.StartsWith(" D") } | foreach-object { git reset HEAD $_.replace(" D ", "") } 
0
06 мая '15 в 10:23 2015-05-06 10:23 Отговорът е даден от Ник Мелдрум на 06 май в 10:23 ч. 2015-05-06 10:23

Вижте раздела „Недестерирани сценични файлове“ в тази книга .

-1
22 нояб. отговорът се дава от rmk 22 nov. 2010-11-22 23:08 '10 в 23:08 2010-11-22 23:08

Други въпроси за тагове или Задай въпрос