I nostri sviluppatori utilizzano un mix di sistemi operativi basati su Windows e Unix. Pertanto, i collegamenti simbolici creati su macchine Unix diventano un problema per gli sviluppatori Windows. In Windows (msysgit), il collegamento simbolico viene convertito in un file di testo con un percorso al file a cui punta. Invece, vorrei convertire il collegamento simbolico in un vero collegamento simbolico di Windows.
La soluzione ( aggiornata ) che devo fare è:
- Scrivi uno script post-checkout che ricercherà ricorsivamente i file di testo "symlink".
- Sostituiscili con symlink di Windows (usando mklink) con lo stesso nome ed estensione del "symlink" fittizio
- Ignora questi collegamenti simbolici di Windows aggiungendo la voce in .git / info / exclude
Non l'ho implementato, ma credo che questo sia un approccio solido a questo problema.
Domande:
- Che aspetti negativi vedi di questo approccio?
- Questo script post-checkout è persino implementabile? cioè posso scoprire ricorsivamente i file fittizi "symlink" che git crea?
- Qualcuno ha già lavorato su tale sceneggiatura?