svn.rst
author Oleksandr Gavenko <gavenkoa@gmail.com>
Fri, 13 Jul 2012 22:32:19 +0300
changeset 1334 9bf0d5a1f0cf
parent 899 7b4265c8d324
permissions -rw-r--r--
Include common header with quick links.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
899
7b4265c8d324 Set fill-column as directory local var.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 779
diff changeset
     1
-*- mode: outline; coding: utf-8; -*-
98
fc020f519c58 Copy repo from SourceForge to GoogleCode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     2
281
86fb7c1159d6 Where palced config files?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 98
diff changeset
     3
* Where palced config files?
86fb7c1159d6 Where palced config files?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 98
diff changeset
     4
778
67a292e6d70b Remove illegal char.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 735
diff changeset
     5
The per-user configuration area currently contains three files two
282
8914938042d4 Disable interactive conflict resolution.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 281
diff changeset
     6
configuration files ('config' and 'servers').
281
86fb7c1159d6 Where palced config files?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 98
diff changeset
     7
86fb7c1159d6 Where palced config files?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 98
diff changeset
     8
  /etc/subversion
86fb7c1159d6 Where palced config files?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 98
diff changeset
     9
                Unix system wide configurations.
86fb7c1159d6 Where palced config files?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 98
diff changeset
    10
  $HOME/.subversion
86fb7c1159d6 Where palced config files?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 98
diff changeset
    11
                Unix per-user configuration area.
86fb7c1159d6 Where palced config files?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 98
diff changeset
    12
  %APPDATA%\Subversion
86fb7c1159d6 Where palced config files?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 98
diff changeset
    13
                Windows per-user configuration area.
86fb7c1159d6 Where palced config files?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 98
diff changeset
    14
86fb7c1159d6 Where palced config files?
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 98
diff changeset
    15
98
fc020f519c58 Copy repo from SourceForge to GoogleCode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    16
* Copy repo from SourceForge to GoogleCode.
fc020f519c58 Copy repo from SourceForge to GoogleCode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    17
fc020f519c58 Copy repo from SourceForge to GoogleCode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    18
  $ svnsync init https://PROJ.googlecode.com/svn https://PROJ.svn.sourceforge.net/svnroot/PROJ
fc020f519c58 Copy repo from SourceForge to GoogleCode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    19
  $ svnsync --username NAME --password PASSWORD \
fc020f519c58 Copy repo from SourceForge to GoogleCode.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    20
                sync https://PROJ.googlecode.com/svn https://PROJ.svn.sourceforge.net/svnroot/PROJ
282
8914938042d4 Disable interactive conflict resolution.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 281
diff changeset
    21
8914938042d4 Disable interactive conflict resolution.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 281
diff changeset
    22
* Disable interactive conflict resolution.
8914938042d4 Disable interactive conflict resolution.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 281
diff changeset
    23
8914938042d4 Disable interactive conflict resolution.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 281
diff changeset
    24
Write in '$HOME/.subversion/config'
8914938042d4 Disable interactive conflict resolution.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 281
diff changeset
    25
779
001f5498a085 Add header for 'interactive-conflicts' option.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 778
diff changeset
    26
  [miscellany]
282
8914938042d4 Disable interactive conflict resolution.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 281
diff changeset
    27
  interactive-conflicts = no
390
01fc5dc8e0db Run local svn server.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 282
diff changeset
    28
395
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    29
* Creating svn repo.
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    30
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    31
  $ mkdir -p /srv/svn
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    32
  $ svnadmin create /srv/svn/$repo
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    33
  $ svn co file:///srv/svn/$repo $repo
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    34
  $ cd /tmp/$repo
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    35
  $ mkdir trunk branches features tags
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    36
  $ svn add *
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    37
  $ svn st      # check all OK
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    38
  $ svn ci -m "Init repo."
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    39
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    40
For multi-project repo do follow:
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    41
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    42
  $ mkdir -p /srv/svn
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    43
  $ svnadmin create /srv/svn/$repo
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    44
  $ svn co file:///srv/svn/$repo $repo
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    45
  $ cd /tmp/$repo
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    46
  $ for proj in $proj1 $proj2; do mkdir $proj/trunk $proj/branches $proj/features $proj/tags; done
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    47
  $ svn add *
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    48
  $ svn st      # check all OK
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    49
  $ svn ci -m "Init repo."
51561eef9a7d Creating svn repo.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 390
diff changeset
    50
390
01fc5dc8e0db Run local svn server.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 282
diff changeset
    51
* Run local svn server.
01fc5dc8e0db Run local svn server.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 282
diff changeset
    52
01fc5dc8e0db Run local svn server.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 282
diff changeset
    53
  $ svnserve.exe -d --pid-file=svnserve.pid --root=/srv/svn/proj  # default port: 3690
01fc5dc8e0db Run local svn server.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 282
diff changeset
    54
  $ svn ls svn://localhost    # check all OK
01fc5dc8e0db Run local svn server.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 282
diff changeset
    55
  $ kill -l
396
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    56
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    57
* Undo bad commit.
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    58
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    59
  $ emacs FILE
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    60
...
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    61
  $ svn ci -m "Introduce first bug."
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    62
Sending        trunk/FILE
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    63
Transmitting file data .
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    64
Committed revision 7.
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    65
  $ emacs FILE
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    66
...
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    67
  $ svn ci -m "Make a lot of good changes."
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    68
...
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    69
Committed revision 8.
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    70
...
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    71
  $ emacs FILE
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    72
...
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    73
  $ svn ci -m "Introduce second bug."
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    74
...
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    75
Committed revision 10.
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    76
  $ emacs FILE
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    77
...
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    78
  $ svn ci -m "Make a lot of good changes."
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    79
...
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    80
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    81
Now you understand that revision 7 and 10 buggy. You decide revert changes:
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    82
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    83
  $ svn merge -r 7:6 -r 10:9 FILE
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    84
  $ svn ci -m "Reverted revision 7 and 10."
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    85
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    86
For one changeset revert you can use shortly syntax:
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    87
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    88
  $ svn merge -c -7 -c -10 FILE
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    89
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    90
Also you can use long diapason:
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    91
44668f040a5d Undo bad commit.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 395
diff changeset
    92
  $ svn merge -r 10:6 FILE