Domanda

Il mio capo mi ha chiesto di configurare un Subversion per usarlo in modo da poterlo utilizzare condividere tutti i suoi documenti su diverse macchine in sincronia ed essere ancora in grado di accedervi quando non c'è connessione a Internet.

Ho questo per lui, ma ora sta chiedendo che l'attributo del file 'data di creazione' sia preservato. Ho spiegato che, dal momento che ha scaricato tutti i file che rappresentano la loro data di creazione, ma insiste, trovo un modo per preservarlo in quanto influisce sull'agente di ricerca desktop che utilizza. C'è un modo per impostare questo attributo da conservare tramite Subversion o devo scrivere uno script per ottenere la data di ogni file e farlo eseguire 'touch' dopo ogni check iniziale?

Nota che l'insieme di documenti che sono stati aggiunti al repository SVN risale a diversi anni fa e vuole che queste date vengano conservate in tutti i checkout. Quindi la data dell'ultimo cambiamento che Subversion ha potenzialmente potrebbe essere fuori da anni da ciò che vuole.

È stato utile?

Soluzione

Siamo spiacenti: ho capito male la prima volta la domanda.

Un'opzione potrebbe essere quella di utilizzare i comandi svnadmin dump e load.

  • Scarica il repository usando svnadmin dump.
  • Scrivi uno script per scorrere l'output, aggiornando la data di creazione SVN nella data di creazione del file nella cartella di origine.
  • Carica nuovamente il file di dump aggiornato usando svnadmin load.
  • Utilizza l'impostazione Imposta le date dei file sull'impostazione " last commit time " che ho suggerito in precedenza.

Non sono sicuro che ciò sia possibile, ma penso che sarebbe così. Mi sembra di ricordare una sceneggiatura che ha fatto qualcosa del genere quando sono passato da SourceSafe a Subversion: vedrò se riesco a trovarla.

EDIT: Sì, potresti essere in grado di criptare un po 'di codice da qui ( http: // www. pumacode.org/projects/vss2svn )

Altri suggerimenti

Uso di TortoiseSVN

  • Fai clic con il pulsante destro del mouse e seleziona TortoiseSVN - > Impostazioni
  • Seleziona Imposta le date dei file sull'ora di "ultimo commit" "

Penso che funzionerà per te.

Dai un'occhiata alla proprietà " svn: date " ;:

svn propset svn:date --revprop -r HEAD "2007-04-22"

Che richiede un hook pre-revprop-change da impostare in anticipo.

È possibile utilizzare una proprietà del file Subversion per memorizzare la data di modifica, ma è necessario scrivere il proprio script per aggiornare la proprietà al momento del check-in e impostare la data di modifica al momento del check out.

L'ultima volta che ho controllato non c'era modo in Subversion di conservare il timestamp del file originale.

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