Aggiornamento CVS Ignora le directory dal repository, vale a dire nomi illegali in Windows come AUX

StackOverflow https://stackoverflow.com//questions/21046089

Domanda

Ho difficoltà a controllare una directory chiamata aux, perché quel nome è un nome di directory non valido in Windows (remnant da Dos I credo). Non ho modo di manipolare il repository stesso.

Io uso TortoiseCVS, ma non ha la possibilità di ignorare le directory disponibili sul repository. L'utilizzo di .cvsignore non funziona neanche, perché questo ignora solo commit.

È possibile affatto? Tortoisecvs dice semplicemente quanto segue, che è piuttosto scoraggiante:

.

Suggerimento di tartaruga: questo errore può essere causato avendo una cartella e un file con lo stesso nome (a parte la capitalizzazione) nel repository. Tale repository non può essere controllato su un file system di Windows.

L'errore effettivo da CVS è questo:

.

CVS [Aggiornamento abortito]: Impossibile Chdir su AUX: indirizzo sbagliato

Nota: posso vivere con una soluzione in cui posso effettuare il checkout tutte le cartelle, tranne questo. Dato che ci sono più di 1000 cartelle, non è banale solo a checkout manualmente tutte le altre cartelle.

È stato utile?

Soluzione

Ecco cosa farei:

    .
  • Accendi una macchina Linux (installazione fisica o virtuale, reale del DVD dal vivo, non importa).
  • Controlla il progetto utilizzando cvs.
  • Rimuovi il contenuto della directory utilizzando cvs rm e commettere le modifiche.
      .
    • Nota che CVS non consente di rimuovere le directory purtroppo.
  • Torna alla macchina Windows e richiamo di nuovo il progetto o fare un cvs update.

Una cosa dovrai farlo aggiungere l'opzione -P che prune le directory vuote.Se non si aggiunge questo, quindi tenterà comunque di scaricare la directory aux vuota.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top