Ha perso il nostro server SVN … qual è il passo successivo?

Quindi … abbiamo perso il nostro repository SVN. Attraverso situazioni sfortunate, non abbiamo alcun sostegno efficace.

Cosa fare? Basta fare un "svn export" da qualcuno con l'aggiornamento più recente e ricominciare? C'è qualche modo per recuperare qualsiasi storia? Oppure connettere i nostri checkout locali a un nuovo server?

  • C'è un modo per aggiungere tutti i file e le directory che sono intriggersti ​​al repository SVN?
  • Software Versione Software
  • Impostazione del servizio SVN in Windows 2003
  • Subversion e Quickbooks Files
  • SVN Restituisce 403 Proibito
  • Impedire l'accesso dell'utente alla console, ma permettere comunque l'accesso svn + ssh: // al repos SVN
  • Gestire i file di configuration utilizzando i collegamenti e la sovversione?
  • Come sincronizzare il repository SVN con un file system remoto FTP
  • 4 Solutions collect form web for “Ha perso il nostro server SVN … qual è il passo successivo?”

    Se tutto quello che hai è una cassa, hai un'istantanea del codice, ma nessuna storia.

    Puoi creare un nuovo repo da quello. Per quanto riguarda l'associazione di casse attuali al nuovo repo dopo averla impostata, è probabilmente più difficoltà che vale la pena. Sarà più facile creare un nuovo repo dal checkout più vecchio e quindi commettere modifiche da nuovi versamenti come aggiornamenti.

    Quanto al recupero della storia, non vedo come è ansible senza un dump del repo (via svnadmin dump) ad un certo punto nel tempo. Anche una vecchia discarica gli darebbe la storia che avveniva dalla creazione del repo fino al luogo in cui è stato fatto il dump.

    Forse qualcuno ha usato git-svn sul tuo repo in un certo punto? Ciò avrebbe potuto preservare una certa storia, ma tornare indietro in un nuovo repo di Subversion potrebbe non essere facile.

    Il recupero dei dati è costoso, ma potrebbe anche essere un'opzione se il dispositivo di archiviazione del repo non fosse stato fisicamente distrutto o distrutto in modo distruttivo (e non era un SSD).

    Se hai veramente perso il tuo repo, senza backup, allora sì – è andato. Non esiste una magia in grado di ripristinare i dati veramente persi.

    Quindi, se hai una copia di lavoro da qualcuno, puoi creare un nuovo repo e aggiungere i file. Si perde tutta la storia (ovviamente) ma la storia è già stata persa.

    È ansible submit l'unità disco rigido a un'azienda di recupero per cercare di get i dati ripristinati. Una volta che avete repo (o alless le directory db / revs e db / revprops), puoi ricreare il repo da loro (copiandoli in una nuova directory del repo). Se si scopre che non si dispone dell'integer db, le cose saranno un po 'più complicate, ma è ancora ansible ripristinare il resto dei dati – potrebbe essere necessario spedire tutto per collaborare e get un supporto da parte loro ripristinare i file di dati bloccati in un nuovo repo di lavoro.

    Ora, dici "svn export" da qualcuno con l'aggiornamento più recente …. che suggerisce che la persona ha una copia di backup da cui è ansible esportre. È questo il caso, o lo confondi con una copia di lavoro?

    Come Mark dice sopra, se non si dispone di un dump del repo (dal server), non è ansible build la cronologia. Un checkout SVN contiene solo la punta del luogo where viene eseguito il check-out. Spiacenti, sei SOL. Immagino che questo è il motivo per cui la gente ama il controllo delle sorgenti distribuite. Nella nostra azienda ho impostato per submit svn diffs a amazon s3 due volte al giorno.

    Oltre alle informazioni utili nelle altre risposte, si potrebbe considerare questo come un'opportunità per esaminare il controllo delle sorgenti distribuite (DVCS, ad esempio git e mercurial, credo che ci siano anche altri). Con un DVCS each utente ha una copia del repository, fornendo ulteriori ridondanze, riducendo il rischio di perdere il repository completo.

    C'è un libro molto bello sul git qui: http://progit.org/

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.