Come configurare e accedere il mio repository subversion dopo l'installazione di Subversion sul mio GoDaddy CentOS server dedicato

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

Domanda

I installato con successo la sovversione sul mio server. Quando faccio funzionare il comando:

which svn

ottengo la risposta:

/usr/bin/svn

I creare un repository all'interno del mio directory principale che è il mio httpdocs cartella con il seguente comando:

svnadmin create ~/svn

ho creato con successo i seguenti file e cartelle e configurato e vedo i seguenti file e directory all'interno della directory svn:

conf  db  format  hooks  locks  README.txt

Ma non riesco a creare tronco, ramo, e le directory di tag. In realtà non riesco a creare periodo di directory. Ecco il comando che ho usato:

svn mkdir file:///httpdocs/svn/site

Quando faccio questo comando il messaggio che ottengo è il seguente:

svn: Could not use external editor to fetch log message; consider setting the
$SVN_EDITOR environment variable or using the --message (-m) or --file (-F) options
svn: None of the environment variables SVN_EDITOR, VISUAL or EDITOR are set, and no
'editor-cmd' run-time configuration option was found

Anche Quando digito in url:

http://mydomain.com/svn

ottengo il messaggio follwoing:

404 - Not Found 

Che cosa devo fare per configurare il mio repository, controllare per vedere se il mio repository è in realtà di lavoro. Oh, e ho fatto eseguire il seguente comando:

svnserve -d
È stato utile?

Soluzione

I creare un repository all'interno del mio directory principale che è il mio httpdocs cartella con il seguente comando ...

Non è così che si arriva al lavoro Subversion con Apache httpd se è questo che stai cercando di fare. È necessario il mod_dav e moduli mod_dav_svn per Apache. Potrebbe essere necessario ricompilare Apache per ottenere questi.

Una volta che si ottiene mod_dav e mod_dav_svn installato, è necessario configurare il file httpd.conf (o mettere un file di configurazione sotto la vostra di httpd conf.d a seconda di come è configurato il vostro sistema) per farlo funzionare.

Alla fine, non è poi così difficile. installazioni più Apache hanno mod_dav e mod_dav_svn aggiunti, e si può vedere se il file http.conf sia configurato correttamente. Il manuale Subversion on line avrà è necessario per farlo funzionare.

svn: Impossibile utilizzare un editor esterno per recuperare messaggio di log; prendere in considerazione l'impostazione della $ Variabile d'ambiente SVN_EDITOR o utilizzando il --message (-m) o --file (-F) opzioni svn: Nessuna delle variabili d'ambiente SVN_EDITOR, VISUAL o EDITOR sono impostati, e non 'Redattore cmd' in fase di esecuzione è stato trovato opzione di configurazione

Leggere il messaggio. Si dice non poteva usare un editor esterno perché non ha specificato uno. Ancora una volta il Subversion sul manuale di linea spiega in dettaglio .

In sostanza, quando si commit di una modifica in Subversion, è necessario creare un messaggio di commit. Questo può essere fatto in due modi:

  • È possibile utilizzare l'opzione -m come svn commit -m "This is my commit message".
  • impostare le variabili SVN_EDITOR, VISUAL o EDITOR al nome del programma che si desidera utilizzare. Ad esempio, in Windows, si direbbe C:> set EDITOR=notepad.exe. Su Unix, che avresti detto qualcosa di simile $ export EDITOR=vi. Subversion prima controlla il valore della variabile SVN_EDITOR, quindi VISUAL, poi EDITOR. Se nessuno di loro sono impostati, ti dà l'errore che avete visto.

Perché l'hai presa sul comando svn mkdir?

Perché si utilizza il modulo URL del comando, farà la directory, quindi il commit della modifica, così la necessità di un messaggio di commit. Questo dovrebbe funzionare:

svn mkdir -m"Adding the site directory to my repository" file:///httpdocs/svn/site

Ora, è necessario spostare il repository dalla vostra directory httpdocs. Questa è una cosa molto male avere perché fa male il vostro server web.

Se non si desidera utilizzare il protocollo file://, è possibile utilizzare svnserve. Questo è un server repository integrato Subversion e utilizza il protocollo svn://. Osservare:

$ svnadmin create my_repos   #Creates the repository
$ vi my_repos/conf/svnserve.conf  #See footnote 1 below
$ vi my_repos/conf/passwd         #See footnote 1 below
$ svnserve -r my_repos -d
$ svn mkdir -m "Making basic directory layout svn://localhost/trunk \
> svn://localhost/tags svn://localhost/branches
$ export SVN_EDITOR="vi"

Il repository diventa anche accessibile a tutte le macchine della rete troppo. Utilizzando svnserve è molto più semplice di Apache httpd, ma ci sono alcuni problemi:

  • Non è possibile eseguire più istanze di svnserve dal momento che vuole utilizzare la porta 3690 e non fa piace condividere. Con Apache httpd, è possibile avere più repository.
  • configurazione di sicurezza con svnserve è limitata. Con Apache, posso utilizzare Windows Active Directory o LDAP o posso configurarlo manualmente.
  • Alcuni browser repository web-based sovversione non piace svnserve.

A proposito, se non avete, passare attraverso il Subversion sul manuale pubblicitario . E 'uno dei migliori manuali che ho visto per qualsiasi progetto open source.


1 Quando si imposta il repository utilizzando svnserve, è necessario modificare il file svnserve.conf attivando l'password-db = passed linea che è circa la linea # 20 nel file. Poi è necessario modificare il file passed (che si trova nella stessa directory) per configurare gli utenti e le loro password. Entrambi sono molto semplice, ma facile da forgiat, e se non lo fai, non si può commettere qualsiasi cosa nella vostra repository.

Altri suggerimenti

quando è necessario rami tronco e tag di quello che hai bisogno del import_dirs.copy scaricare

che dopo oltre cd /location/import_dirs.copy che correre di comando

cd /data/svn/import_dirs.copy/ 
svn import  file:///location of repos/reposname/  -m "inital message"

questo è l'esempio di esso .....

cd /home/raj/import_dirs.copy/
svn import  file:///srv/svn/nmg/  -m "inital message"

di rami tronco e tag sono stati fatti

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