svn / subversion

FIXME svn est mort, vive mercurial

Doc

http://svnbook.red-bean.com/ Version Control with Subversion, a free book about Subversion, a new version control system designed to supplant CVS

subversion sur wikipédia

http://artis.imag.fr/~Xavier.Decoret/resources/svn/index.html

Installation & Tips

svn help import

#créer le repository
svnadmin create ~/svn/newrepos

#importer un projet existant
svn import /home/radeff/akademia/websites/xxx file:///home/radeff/svn/newrepos/xxx -m "Initial import"

#tuer l'ancien projet
rm -fR 
/home/radeff/akademia/websites/xxx

#importer le repository
cd /home/radeff/akademia/websites

svn checkout file:///home/radeff/svn/newrepos/sem
#c'est fini
  svn info file:///home/radeff/svn/ergolang

utilisation

#editer les pages puis
svn status
svn update
svn commit -m "test svn"
svn log
svn log -r 1:3 -v
svn diff -r 1

un exemple d'utilisation pour un environnement de développement / production

source: http://svn.haxx.se/users/archive-2003-10/0040.shtml

At work, I use something different.

I use

/unstable
/stable
/unit
/system
/production
/tags/<date of release>

Where development takes place in /unstable. When things are ready to be released,
I do a:

svn rm /stable
svn commit
svn cp /unstable /stable
svn commit

When the stable is ready to be unit tested - it looks good.

I do the following

svn rm /unit
svn commit
svn cp /stable /unit
svn commit

When the next level is ready, I repeat it for system test.

svn rm /system
svn commit
svn cp /unit /system
svn commit

When the final level is ready, I repeat it one last time.

svn rm /production
svn commit
svn cp /system /production
svn commit

When the production release is made, I also do a
svn cp /productions /tags/<date of release>

In essence, I can go back to any step of any revision of the tree at any time.

And if I want to roll back the changes in /unstable, I can always grab a
copy of what's in /unit to do so.

And the beauty of all this is that, since the files past /stable do not
take up any real space, it is really nice to have the folders alone do
all the housekeeping of having to have 4 different environments.

At least for me at work.

Understand that this is a simplified version of what I really do.

As things progress from one level to the next, certain directories are removed
since they contain testing materials that do not belong in a production
environment.

In my system /stable and /unit are very similar and /system and /production
are very similar.

If you have to recover the last thing you did, you can always roll back to a
previous snapshot.

I hope this helps. I hope things are a little more clear.

If you have more specific questions or feel that I have not answered the correct
question, feel free to ask.

Thanks.

Shamim Islam
BA BS 

Serveurs pour héberger un repository svn

sf.net / sourceforge

prosvn.org

http://www.prosvn.org/

très bien mais limité en taille (5Mo), sinon payant

my prosvn.org (intranet)

Infomaniak

malheureusement pas possible de faire du CVS ou svn directement sur un serveur infomaniak selon mes infos — Fred Radeff 2008/10/06 12:11 svninfomaniak

Gna.org

https://gna.org/ propose un hébergement gratuit de projets opensource en svn - à tester

mon compte gna.org (protégé)

https://gna.org/cookbook/?func=detailitem&comingfrom=101&item_id=115

svn co svn+ssh:login@svn.gna.org/svn/project/trunk project ===== google ===== ergolang http://code.google.com/p/support/wiki/FAQ <code> svnsync init –username YOURUSERNAME https://YOURPROJECT.googlecode.com/svn file:/path/to/localrepos

svnsync sync –username YOURUSERNAME https://YOURPROJECT.googlecode.com/svn </code>

http://code.google.com/hosting/settings

http://code.google.com/p/support/wiki/ScriptedUploads

http://code.google.com/support/bin/answer.py?answer=56673&topic=10386

tuto1

tuto2

ça coince!

radeff@radeff-desktop:~/svn/ergolang$ svnsync init –username xxxxx https://ergolang.googlecode.com/svn file:/home/radeff/ergolang.dump svnsync: Impossible d'initialiser un dépôt non vide <code> ko svnadmin dump file:/home/radeff/svn/ergolang | svndumpfilter –drop-empty-revs –renumber-revs include /home/radeff/akademia/websites/ergolang/wiki/ergolang/ > ~/project-ergolang.dump

ok svnadmin dump /home/radeff/svn/ergolang | svndumpfilter –drop-empty-revs –renumber-revs include /home/radeff/akademia/websites/ergolang/wiki/ergolang/ > ~/project-ergolang.dump

</code>

Gestion de subversion dans nautilus

source: http://blog.glooze.org/index.php/2006/12/18/gestion-de-subversion-dans-nautilus/

sudo apt-get install nautilus-script-collection-svn

Ensuite, lancez un petit :

nautilus-script-manager enable Subversion

Et hop, relancez nautilus. Cliquez droit sur un dossier, Script, Subversion, bonheur :)

Ignore un répertoire de travail dans le repository

On a souvent besoin de ne pas inclure un répertoire (p. ex. sous cake le répertoire /tmp, qui contient le cache, les variables de sessions etc)

faut d'abord faire un backup du répertoire, et le supprimer du repository avec la commande

svn delete tmp/
svn commit -m "removed tmp/ directory from repository"

Go to main directory (that has .svn directory) and issue command :

svn propset svn:ignore "*" tmp/

faire un mv du backup sur ./tmp

enfin vérifier avec

svn status
 
info/svn.txt · Dernière modification: 2009/11/30 13:21 (modification externe)
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki