Domanda

Sono appena iniziato con svn quindi per favore, mi aiuti se ho visto nulla di stupido.

sto sviluppando su un computer portatile Windows utilizzando TortoiseSVN. Sto distribuzione su un server Linux.

Ho il mio pronti contro termine istituito e controllato sul mio portatile. Non riesco a controllarlo fuori in una directory sul server. Ho creato una directory per esso, ma non riesco a ottenere svn checkout file:///... al lavoro! Sulla base di questo tutorial il comando checkout assume la seguente forma: svn checkout file:///repository_name/project/trunk project ma quello che è il repository_name il mio repo è a /home/username/svn, non ricordo nominare il pronti contro termine diverso da dire che cosa directory è nella.

Una volta che io in realtà ho risolto che mi piacerebbe avere automaticamente il repo esportare in che directory quando commetto dal mio computer portatile. È possibile?

Scusate se questo è terribilmente chiaro, ma ho voluto essere dettagliati.

Fondamentalmente voglio commettere dal mio computer portatile e avere che attivano un esportazione dei file appena commessi in una directory sul server.

È stato utile?

Soluzione

Ci sono due modi diversi è possibile esportare automaticamente nella cartella public_html, entrambi i quali prevedere la costruzione di un gancio post-commit. Si potrebbe:

  1. Imposta un post-commit hook che verrà eseguito sul vostro computer portatile Windows e copiare i file necessari al server, magari attraverso scp (disponibile nella Putty Suite ), rsync, o anche un samba condivisione di file .
  2. Imposta il tuo Linux-server per ospitare il repository in modo che abbia pieno accesso al file system su cui esiste la cartella public_html, e quindi impostare un post-commit gancio che copia i file necessari per la cartella public_html. Naturalmente, si avrebbe bisogno di checkout dal repository di Linux al posto di quello su un computer portatile, ma potrebbe valerne la pena.

Ora, un paio di cose che hai detto sopra sono un po '... di confusione. Ho fatto alcune ipotesi in grado di conciliare l'alto, così si prega di commentare se ho mis-assunto.

In questo momento, avete sia il repository e un checkout sul vostro computer portatile. E, suona come è stato utilizzato il protocollo file:// per la vostra cassa. Se è così, non sarà in grado di accedere al tuo repository dal server Linux (sì, è possibile se si sta anche servendo il repository su SSH o HTTP). Questo spiegherebbe il motivo per cui non è possibile ottenere un checkout utilizzando lo stesso protocollo di file all'interno di Linux -. non ha accesso al file system di Windows

Ciò premesso, vorrei provare sopra approccio numero uno. Scrivere uno script (o programma) che copia i file sul server Linux.

Altri suggerimenti

questa discussione sul UbuntuForums aiuta (purché l'repo e web server sono in esecuzione su Linux). Spiega il concetto di Post Commit Ganci, e mostra gli script esempio reale.

Se si sta cercando di ottenere una copia del tuo commento svn in una directory in cui è possibile vederlo (al contrario di realtà lavorare su di esso ), è necessario utilizzare il comando svn export.

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