Jeżeli w naszej kopii roboczej usuniemy parę plików ręcznie (np. poprzez manager plików lub innym programem) a nie przez svn komendą:
1 |
svn rm [PLIK-LUB-FOLDER] |
to svn nie wie dlaczego nie ma pliku. Jeżeli użyjemy komendy pokazujący zmiany w naszej kopii roboczej:
1 |
svn st |
Obok tych plików będą wykrzykniki.
Możemy automatycznie oznaczyć wszystkie te pliki do usunięcia przy najbliższym commicie. Wtedy najlepiej użyć do tego konsoli 🙂
Ta komenda wyłapuje takich pretendentów i oznacza ich do usunięcia:
1 |
svn status | grep "^\!" | awk '{ printf("\""); for (f=2; f <= NF; f++) { printf("%s", $f); if (f<NF) printf(" "); } printf("\"\n");}' | xargs svn rm |