Hex Artifact Content
Not logged in

Artifact 879d69a87c4db6e220f3d0e0afe18e48f15e143d:

File www/cmd_checkout.wiki part of check-in [c8b86eae78] - adjust reference.wiki &c. by kejoki on 2009-01-07 22:45:17.

0000: 3c 68 32 3e 63 68 65 63 6b 6f 75 74 3c 2f 68 32  <h2>checkout</h2
0010: 3e 0a 0a 54 68 65 20 3c 63 6f 64 65 3e 63 68 65  >..The <code>che
0020: 63 6b 6f 75 74 3c 2f 63 6f 64 65 3e 20 63 6f 6d  ckout</code> com
0030: 6d 61 6e 64 20 69 73 20 68 6f 77 20 61 20 70 72  mand is how a pr
0040: 6f 6a 65 63 74 20 76 65 72 73 69 6f 6e 20 67 6f  oject version go
0050: 65 73 20 66 72 6f 6d 0a 74 68 65 20 72 65 70 6f  es from.the repo
0060: 73 69 74 6f 72 79 20 74 6f 20 74 68 65 20 63 68  sitory to the ch
0070: 6f 73 65 6e 20 70 72 6f 6a 65 63 74 20 64 69 72  osen project dir
0080: 65 63 74 6f 72 79 2e 0a 0a 57 69 74 68 6f 75 74  ectory...Without
0090: 20 67 6f 69 6e 67 20 69 6e 74 6f 20 64 65 74 61   going into deta
00a0: 69 6c 20 61 62 6f 75 74 20 67 65 74 74 69 6e 67  il about getting
00b0: 2f 6f 70 65 6e 69 6e 67 20 61 20 72 65 70 6f 73  /opening a repos
00c0: 69 74 6f 72 79 2c 20 6f 6e 63 65 20 79 6f 75 0a  itory, once you.
00d0: 68 61 76 65 20 61 20 72 65 70 6f 73 69 74 6f 72  have a repositor
00e0: 79 20 61 6e 64 20 61 20 70 6c 61 63 65 20 69 6e  y and a place in
00f0: 20 77 68 69 63 68 20 74 68 65 20 72 65 70 6f 73   which the repos
0100: 69 74 6f 72 79 20 68 61 73 20 62 65 65 6e 0a 6f  itory has been.o
0110: 70 65 6e 65 64 2c 20 79 6f 75 20 63 61 6e 20 22  pened, you can "
0120: 63 68 65 63 6b 20 6f 75 74 22 20 61 20 22 76 65  check out" a "ve
0130: 72 73 69 6f 6e 22 20 6f 66 20 74 68 65 20 66 69  rsion" of the fi
0140: 6c 65 73 20 77 68 69 63 68 20 6d 61 6b 65 20 75  les which make u
0150: 70 20 74 68 65 0a 72 65 70 6f 73 69 74 6f 72 79  p the.repository
0160: 20 61 74 20 73 6f 6d 65 77 68 65 6e 2e 0a 0a 54   at somewhen...T
0170: 68 65 20 74 65 72 6d 20 22 63 68 65 63 6b 6f 75  he term "checkou
0180: 74 22 20 69 73 20 74 72 61 64 69 74 69 6f 6e 61  t" is traditiona
0190: 6c 20 69 6e 20 73 6f 75 72 63 65 20 6d 61 6e 61  l in source mana
01a0: 67 65 6d 65 6e 74 20 73 79 73 74 65 6d 73 2c 20  gement systems, 
01b0: 62 75 74 20 61 0a 62 69 74 20 6f 66 20 61 6e 20  but a.bit of an 
01c0: 61 6e 61 63 68 72 6f 6e 69 73 6d 20 69 6e 20 61  anachronism in a
01d0: 20 64 69 73 74 72 69 62 75 74 65 64 20 73 79 73   distributed sys
01e0: 74 65 6d 20 6c 69 6b 65 20 3c 62 3e 66 6f 73 73  tem like <b>foss
01f0: 69 6c 3c 2f 62 3e 2e 0a 22 43 68 65 63 6b 69 6e  il</b>.."Checkin
0200: 67 20 6f 75 74 22 20 61 20 76 65 72 73 69 6f 6e  g out" a version
0210: 20 6f 66 20 61 20 70 72 6f 6a 65 63 74 20 6d 65   of a project me
0220: 61 6e 73 20 67 65 74 74 69 6e 67 20 61 6c 6c 20  ans getting all 
0230: 6f 66 20 74 68 65 20 73 6f 75 72 63 65 0a 61 72  of the source.ar
0240: 74 69 66 61 63 74 73 20 6f 75 74 20 69 6e 74 6f  tifacts out into
0250: 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 65 6e   the standard en
0260: 76 69 72 6f 6e 6d 65 6e 74 2d 2d 2d 63 75 72 72  vironment---curr
0270: 65 6e 74 6c 79 20 74 68 65 0a 73 68 65 6c 6c 2f  ently the.shell/
0280: 66 69 6c 65 2d 73 79 73 74 65 6d 2e 0a 0a 54 72  file-system...Tr
0290: 61 64 69 74 69 6f 6e 61 6c 6c 79 2c 20 74 68 65  aditionally, the
02a0: 20 76 65 72 73 69 6f 6e 20 69 73 20 73 6f 6d 65   version is some
02b0: 20 22 69 6e 63 72 65 6d 65 6e 74 69 6e 67 22 20   "incrementing" 
02c0: 63 6f 64 65 20 6c 69 6b 65 0a 76 31 2e 33 2e 32  code like.v1.3.2
02d0: 72 63 51 75 69 6e 6b 20 6f 72 20 66 34 35 31 20  rcQuink or f451 
02e0: 6f 72 20 73 6f 6d 65 74 68 69 6e 67 2e 20 20 49  or something.  I
02f0: 6e 20 64 69 73 74 72 69 62 75 74 65 64 20 53 43  n distributed SC
0300: 4d 20 73 79 73 74 65 6d 73 20 69 74 27 73 0a 73  M systems it's.s
0310: 6f 6d 65 20 61 62 73 6f 6c 75 74 65 6c 79 20 75  ome absolutely u
0320: 6e 69 71 75 65 20 69 64 65 6e 74 69 66 69 65 72  nique identifier
0330: 2c 20 75 73 75 61 6c 6c 79 20 74 68 65 20 72 65  , usually the re
0340: 73 75 6c 74 20 6f 66 20 61 20 6f 6e 65 2d 77 61  sult of a one-wa
0350: 79 0a 68 61 73 68 20 28 53 48 41 31 2c 20 69 6e  y.hash (SHA1, in
0360: 20 66 6f 73 73 69 6c 27 73 20 63 61 73 65 2e 29   fossil's case.)
0370: 20 20 54 68 65 20 3c 62 3e 66 6f 73 73 69 6c 3c    The <b>fossil<
0380: 2f 62 3e 20 74 65 72 6d 20 66 6f 72 20 74 68 65  /b> term for the
0390: 73 65 20 69 73 0a 3c 65 6d 3e 61 72 74 69 66 61  se is.<em>artifa
03a0: 63 74 20 49 44 73 3c 2f 65 6d 3e 2e 0a 0a 3c 63  ct IDs</em>...<c
03b0: 6f 64 65 3e 66 6f 73 73 69 6c 26 6e 62 73 70 3b  ode>fossil&nbsp;
03c0: 63 68 65 63 6b 6f 75 74 26 6e 62 73 70 3b 3c 2f  checkout&nbsp;</
03d0: 63 6f 64 65 3e 20 3c 69 3e 69 64 3c 2f 69 3e 20  code> <i>id</i> 
03e0: 77 69 6c 6c 20 63 68 65 63 6b 20 6f 75 74 20 74  will check out t
03f0: 68 65 0a 76 65 72 73 69 6f 6e 20 63 6f 72 72 65  he.version corre
0400: 73 70 6f 6e 64 69 6e 67 20 74 6f 20 3c 69 3e 69  sponding to <i>i
0410: 64 3c 2f 69 3e 20 69 6e 74 6f 20 74 68 65 20 73  d</i> into the s
0420: 6f 75 72 63 65 20 74 72 65 65 2e 0a 0a 3c 63 6f  ource tree...<co
0430: 64 65 3e 63 68 65 63 6b 6f 75 74 3c 2f 63 6f 64  de>checkout</cod
0440: 65 3e 20 72 65 71 75 69 72 65 73 20 79 6f 75 20  e> requires you 
0450: 74 6f 20 70 69 63 6b 20 61 20 70 72 65 63 69 73  to pick a precis
0460: 65 20 76 65 72 73 69 6f 6e 20 74 6f 20 70 75 74  e version to put
0470: 20 69 6e 74 6f 0a 74 68 65 20 22 6f 6e 2d 64 69   into.the "on-di
0480: 73 6b 22 20 73 6f 75 72 63 65 20 74 72 65 65 2c  sk" source tree,
0490: 20 61 6e 64 20 6c 65 61 76 65 73 20 61 6e 79 20   and leaves any 
04a0: 65 64 69 74 65 64 20 66 69 6c 65 73 20 77 68 69  edited files whi
04b0: 63 68 20 61 72 65 20 61 6c 72 65 61 64 79 0a 69  ch are already.i
04c0: 6e 20 74 68 65 20 74 72 65 65 20 69 6e 74 61 63  n the tree intac
04d0: 74 2e 0a 0a 3c 63 6f 64 65 3e 75 70 64 61 74 65  t...<code>update
04e0: 3c 2f 63 6f 64 65 3e 2c 20 6f 6e 20 74 68 65 20  </code>, on the 
04f0: 6f 74 68 65 72 20 68 61 6e 64 2c 20 3c 65 6d 3e  other hand, <em>
0500: 6d 65 72 67 65 73 3c 2f 65 6d 3e 20 65 64 69 74  merges</em> edit
0510: 73 20 69 6e 74 6f 20 74 68 65 0a 76 65 72 73 69  s into the.versi
0520: 6f 6e 20 79 6f 75 20 63 68 6f 6f 73 65 20 28 69  on you choose (i
0530: 66 20 79 6f 75 20 63 68 6f 6f 73 65 20 6f 6e 65  f you choose one
0540: 3b 20 79 6f 75 20 63 61 6e 20 64 65 66 61 75 6c  ; you can defaul
0550: 74 20 74 68 65 20 76 65 72 73 69 6f 6e 2e 29 0a  t the version.).
0560: 0a 53 69 6e 63 65 20 61 20 76 65 72 73 69 6f 6e  .Since a version
0570: 20 69 73 20 72 65 71 75 69 72 65 64 2c 20 61 6e   is required, an
0580: 64 20 3c 62 3e 66 6f 73 73 69 6c 3c 2f 62 3e 27  d <b>fossil</b>'
0590: 73 20 61 72 74 69 66 61 63 74 20 49 44 73 20 61  s artifact IDs a
05a0: 72 65 0a 66 61 69 72 6c 79 20 6c 6f 6e 67 2c 20  re.fairly long, 
05b0: 74 68 65 72 65 20 61 72 65 20 74 77 6f 20 67 6f  there are two go
05c0: 6f 64 20 77 61 79 73 20 74 6f 20 72 65 66 65 72  od ways to refer
05d0: 20 74 6f 20 74 68 65 20 76 65 72 73 69 6f 6e 2e   to the version.
05e0: 20 20 59 6f 75 20 63 61 6e 0a 75 73 65 20 61 20    You can.use a 
05f0: 75 6e 69 71 75 65 20 70 72 6f 70 65 72 20 70 72  unique proper pr
0600: 65 66 69 78 20 6f 66 20 74 68 65 20 76 65 72 73  efix of the vers
0610: 69 6f 6e 20 28 73 69 78 20 6f 72 20 65 69 67 68  ion (six or eigh
0620: 74 20 63 68 61 72 61 63 74 65 72 73 20 69 73 0a  t characters is.
0630: 6d 6f 72 65 20 74 68 61 6e 20 65 6e 6f 75 67 68  more than enough
0640: 20 69 6e 20 6d 6f 73 74 20 63 61 73 65 73 29 20   in most cases) 
0650: 3c 65 6d 3e 6f 72 3c 2f 65 6d 3e 20 79 6f 75 20  <em>or</em> you 
0660: 63 61 6e 20 5b 2e 2f 63 6d 64 5f 74 61 67 2e 77  can [./cmd_tag.w
0670: 69 6b 69 20 7c 0a 74 61 67 5d 20 79 6f 75 72 20  iki |.tag] your 
0680: 62 61 73 65 6c 69 6e 65 73 20 61 6e 64 20 75 73  baselines and us
0690: 65 20 74 68 65 20 74 61 67 73 20 66 6f 72 20 63  e the tags for c
06a0: 68 65 63 6b 6f 75 74 73 2c 20 72 65 76 65 72 74  heckouts, revert
06b0: 69 6e 67 2c 0a 62 72 61 6e 63 68 69 6e 67 20 28  ing,.branching (
06c0: 74 61 67 73 20 61 72 65 20 74 68 65 20 62 65 73  tags are the bes
06d0: 74 20 77 61 79 20 74 6f 20 62 72 61 6e 63 68 29  t way to branch)
06e0: 20 61 6e 64 20 73 6f 20 66 6f 72 74 68 2e 20 20   and so forth.  
06f0: 42 6f 74 68 0a 6d 65 74 68 6f 64 73 20 77 6f 72  Both.methods wor
0700: 6b 20 74 68 72 6f 75 67 68 6f 75 74 20 66 6f 73  k throughout fos
0710: 73 69 6c 2e 0a 0a 53 65 65 20 61 6c 73 6f 20 5b  sil...See also [
0720: 2e 2f 63 6d 64 5f 74 61 67 2e 77 69 6b 69 20 7c  ./cmd_tag.wiki |
0730: 20 66 6f 73 73 69 6c 20 74 61 67 5d 2c 0a 5b 2e   fossil tag],.[.
0740: 2f 63 6d 64 5f 72 65 76 65 72 74 2e 77 69 6b 69  /cmd_revert.wiki
0750: 20 7c 20 66 6f 73 73 69 6c 20 72 65 76 65 72 74   | fossil revert
0760: 5d 2c 0a 5b 2e 2f 63 6d 64 5f 75 70 64 61 74 65  ],.[./cmd_update
0770: 2e 77 69 6b 69 20 7c 20 66 6f 73 73 69 6c 20 75  .wiki | fossil u
0780: 70 64 61 74 65 5d 2c 0a 5b 2e 2f 63 6d 64 5f 70  pdate],.[./cmd_p
0790: 75 73 68 2e 77 69 6b 69 20 7c 20 66 6f 73 73 69  ush.wiki | fossi
07a0: 6c 20 70 75 73 68 5d 2c 0a 5b 2e 2f 63 6d 64 5f  l push],.[./cmd_
07b0: 70 75 6c 6c 2e 77 69 6b 69 20 7c 20 66 6f 73 73  pull.wiki | foss
07c0: 69 6c 20 70 75 6c 6c 5d 2c 0a 5b 2e 2f 63 6d 64  il pull],.[./cmd
07d0: 5f 63 6c 6f 6e 65 2e 77 69 6b 69 20 7c 20 66 6f  _clone.wiki | fo
07e0: 73 73 69 6c 20 63 6c 6f 6e 65 5d 2c 0a 5b 2e 2f  ssil clone],.[./
07f0: 63 6d 64 5f 6f 70 65 6e 2e 77 69 6b 69 20 7c 20  cmd_open.wiki | 
0800: 66 6f 73 73 69 6c 20 6f 70 65 6e 5d 2c 0a 5b 2e  fossil open],.[.
0810: 2f 63 6d 64 5f 63 6c 6f 73 65 2e 77 69 6b 69 20  /cmd_close.wiki 
0820: 7c 20 66 6f 73 73 69 6c 20 63 6c 6f 73 65 5d 2c  | fossil close],
0830: 0a 5b 2e 2f 63 6d 64 5f 6e 65 77 2e 77 69 6b 69  .[./cmd_new.wiki
0840: 20 7c 20 66 6f 73 73 69 6c 20 6e 65 77 5d 2c 0a   | fossil new],.
0850: 5b 2e 2f 72 65 66 65 72 65 6e 63 65 2e 77 69 6b  [./reference.wik
0860: 69 20 7c 20 52 65 66 65 72 65 6e 63 65 5d        i | Reference]