10.07.2015 Views

Apache Subversion (SVN) - Datamining and Sequence Analysis

Apache Subversion (SVN) - Datamining and Sequence Analysis

Apache Subversion (SVN) - Datamining and Sequence Analysis

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Motivation Versioning Models <strong>SVN</strong> Example Source Repository RulesThe Copy-Modify-Merge Solutionhttp://svnbook.red-bean.com/<strong>Apache</strong> <strong>Subversion</strong> (<strong>SVN</strong>)


Motivation Versioning Models <strong>SVN</strong> Example Source Repository RulesBasic Work Cycle1 Checkout/Update your working copysvn checkout/update2 Make changessvn add | delete | copy | move3 Examine your changessvn status | diff4 Possibly undo some changessvn revert5 Merge others’ changes (<strong>and</strong> resolve conflicts)svn update | resolve6 Commit your changessvn commit<strong>Apache</strong> <strong>Subversion</strong> (<strong>SVN</strong>)


Motivation Versioning Models <strong>SVN</strong> Example Source Repository Rules<strong>Subversion</strong> Repositoriesextern machine: login2.minet.uni-jena.derepositories: /data/bipr/biodmXXaccess by svn+ssh<strong>Apache</strong> <strong>Subversion</strong> (<strong>SVN</strong>)


Motivation Versioning Models <strong>SVN</strong> Example Source Repository RulesAdd Files/Directorieskerstin:biodm11$ mkdir project1kerstin:biodm11$ svn add project1A project1kerstin:biodm11$ svn ci -m project1 dir angelegt“”kerstin@login2.minet.uni-jena.de’s password:Adding project1Committed revision 4.<strong>Apache</strong> <strong>Subversion</strong> (<strong>SVN</strong>)


Motivation Versioning Models <strong>SVN</strong> Example Source Repository RulesRemove Files/Directorieskerstin:biodm11$ lspatternMatchingproject1test.txttest2.txtkerstin:biodm11$ svn del test2.txtD test2.txtkerstin:biodm11$ svn ci -m removed test2“”kerstin@login2.minet.uni-jena.de’s password:Deleting test2.txtCommitted revision 5.kerstin:biodm11$ lspatternMatchingproject1test.txt<strong>Apache</strong> <strong>Subversion</strong> (<strong>SVN</strong>)


Motivation Versioning Models <strong>SVN</strong> Example Source Repository RulesUpdatekerstin:biodm11$ svn updatekerstin@login2.minet.uni-jena.de’s password:U test.txtUpdated to revision 6.<strong>Apache</strong> <strong>Subversion</strong> (<strong>SVN</strong>)


Motivation Versioning Models <strong>SVN</strong> Example Source Repository RulesCommitkerstin:biodm11$ vim test.txtkerstin:biodm11$ svn ci -m noch ein update“”kerstin@login2.minet.uni-jena.de’s password:Sending test.txtTransmitting file data.Committed revision 7.<strong>Apache</strong> <strong>Subversion</strong> (<strong>SVN</strong>)


Motivation Versioning Models <strong>SVN</strong> Example Source Repository RulesConflictkerstin:biodm11$ svn updatekerstin@login2.minet.uni-jena.de’s password:C test.txtUpdated to revision 8.kerstin:biodm11$ lspatternMatchingtest.txttest.txt.r7project1test.txt.minetest.txt.r8kerstin:biodm11$ cat test.txt> .r8Noch ein update !<strong>Apache</strong> <strong>Subversion</strong> (<strong>SVN</strong>)


Motivation Versioning Models <strong>SVN</strong> Example Source Repository RulesResolve Conflictskerstin:biodm11$ vim test.txtkerstin:biodm11$ cat test.txtkonflikt !Noch ein update !kerstin:biodm11$ svn resolved test.txtResolved conflicted state of ’test.txt’kerstin:biodm11$ svn ci -m kein konflikt“”kerstin:biodm11$ lspatternMatchingproject1test.txt<strong>Apache</strong> <strong>Subversion</strong> (<strong>SVN</strong>)


Motivation Versioning Models <strong>SVN</strong> Example Source Repository RulesSource Repository Rules1 There shalt not be binary files in the repositoryBinary files (executables, native libraries, zip files, far files,etc.) are NOT sourceYou might want to have a central repository for librariesKeep your repository at least compilable2 Keep thy path names simpleNo special characters in path names (blanks, non-printingcharacters, special character like ”$“or ”%“)3 Generated source files shall not be added as managed filesFiles generated during the build are not part of the managedrepository4 All output from the build shall be kept separated from thesourceUse a well defined output directory (build/ or dist/ or target/)Never write to your src/ directory during the build processThe output directory is NOT part of the managed repositoryKelly O’Hair: http://blogs.sun.com/kto/entry/source repository rules<strong>Apache</strong> <strong>Subversion</strong> (<strong>SVN</strong>)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!