| <?xml version="1.0" encoding="UTF-8"?> | |
| <chapter id="misc-docs-quick_walkthrough"> | |
| <title>Ïîâåðõíîñòíûé îáçîð ðàáîòû ñ ñèñòåìîé</title> | |
| <simplesect> | |
| <para>Ýòî ïîïûòêà ïîêàçàòü ðàáîòó ñ ñèñòåìîé Subversion íà ïðàêòè÷åñêèõ | |
| ïðèìåðàõ. Äåìîíñòðèðóåìûå êîìàíäû - òîëüêî ëèøü ìàëåíüêàÿ ÷àñòü òîãî, ÷òî ìîæåò | |
| Subversion. Äëÿ ïîëó÷åíèÿ ïîëíîé èíôîðìàöèè ñì. ãëàâó 3 êíèãè | |
| "Óïðàâëåíèå âåðñèÿìè ñ ïîìîùüþ Subversion" - â íåé ïðèâåäåíî èñ÷åðïûâàþùåå | |
| îïèñàíèå äëÿ êàæäîé êîìàíäû.</para> | |
| </simplesect> | |
| <!-- ================================================================= --> | |
| <!-- ======================== SECTION 1 ============================== --> | |
| <!-- ================================================================= --> | |
| <sect1 id="misc-docs-quick_walkthrough-sect-1"> | |
| <title>Ñîçäàíèå ðåïîçèòîðèÿ</title> | |
| <para>Â êëèåíòñêîì ïðèëîæåíèè Subversion ðåàëèçîâàí àáñòðàêòíûé | |
| èíòåðôåéñ äëÿ äîñòóïà ê ðåïîçèòîðèþ. Â íàñòîÿùåå âðåìÿ â âèäå | |
| áèáëèîòåê äîñòóïíû òðè ðåàëèçàöèè <quote>Äîñòóïà ê ðåïîçèòîðèþ</quote> | |
| ("Repository Access", RA). Âû ìîæåòå ïðîâåðèòü, êàêèå ìåòîäû | |
| äîñòóïà äîñòóïíû â Âàøåì êëèåíòñêîì ïðèëîæåíèè, íàïðèìåð òàê:</para> | |
| <screen> | |
| $ svn --version | |
| svn, version 0.29.0 (r6976) | |
| compiled Sep 6 2003, 19:19:59 | |
| Copyright (C) 2000-2003 CollabNet. | |
| Subversion is open source software, see @uref{http://subversion.tigris.org/} | |
| The following repository access (RA) modules are available: | |
| * ra_dav : Module for accessing a repository via WebDAV (DeltaV) protocol. | |
| - handles 'http' schema | |
| - handles 'https' schema | |
| * ra_local : Module for accessing a repository on local disk. | |
| - handles 'file' schema | |
| * ra_svn : Module for accessing a repository using the svn network protocol. | |
| - handles 'svn' schema | |
| </screen> | |
| <para>Åñëè Âû íå âèäèòå çàïèñè "ra_local" - ñêîðåå âñåãî ýòî îçíà÷àåò, | |
| ÷òî áèáëèîòåêà Berkeley DB íå áûëà äîñòóïíà ïðè êîìïèëÿöèè êëèåíòñêîãî | |
| ïðèëîæåíèÿ. Äëÿ âûïîëíåíèÿ êîíêðåòíûõ ïðèìåðîâ, ïðèâåä¸ííûõ íèæå, Âàì | |
| íåîáõîäèìî êëèåíòñêîå ïðèëîæåíèå ñ ïîääåðæêîé ra_local.</para> | |
| <para>Ñîçäàäèì ïóñòîé ðåïîçèòîðèé, èñïîëüçóÿ ïðèëîæåíèå | |
| <command>svnadmin</command> :</para> | |
| <screen> | |
| $ svnadmin create myrepos | |
| </screen> | |
| <para>Ïðåäïîëîæèì, ÷òî ó Âàñ åñòü äèðåêòîðèÿ <filename>someproject</filename>, | |
| êîòîðàÿ ñîäåðæèò ôàéëû, êîòîðûå Âû õîòèòå ïîìåñòèòü ïîä óïðàâëåíèå | |
| ñèñòåìû êîíòðîëÿ âåðñèé:</para> | |
| <screen> | |
| someproject/foo | |
| bar | |
| baz/ | |
| baz/gloo | |
| baz/bloo | |
| </screen> | |
| <para>Ó Âàñ åñòü ðåïîçèòîðèé, è âû ìîæåòå îñóùåñòâèòü | |
| ïåðâîíà÷àëüíûé èìïîðò äàííûõ â íåãî (<quote>file</quote> â íà÷àëå | |
| URL îçíà÷àåò ëîêàëüíûé äîñòóï):</para> | |
| <screen> | |
| $ svn import file:///àáñîëþòíûé/ïóòü/ê/ðåïîçèòîðèþ someproject myproj | |
| … | |
| Committed revision 1. | |
| </screen> | |
| <para> ïðèâåä¸ííîì ïðèìåðå âûïîëíÿåòñÿ ñëåäóþùåå: â êîðíå ôàéëîâîé | |
| ñèñòåìû ðåïîçèòîðèÿ ñîçäà¸òñÿ íîâàÿ äèðåêòîðèÿ <filename>myproj</filename> | |
| è â íå¸ êîïèðóåòñÿ ñîäåðæèìîå äèðåêòîðèè <filename>someproject</filename>. | |
| Òåïåðü Âàøè äàííûå íàõîäÿòñÿ â ðåïîçèòîðèè è ìîæíî íà÷èíàòü ðàáîòó ñ íèìè.</para> | |
| <sect2 id="misc-docs-quick_walkthrough-sect-1.1"> | |
| <title>Ñîçäàíèå ðàáî÷èõ êîïèé</title> | |
| <para>Ñîçäàäèì <quote>ðàáî÷óþ êîïèþ</quote> Âàøåãî ïðîåêòà. | |
| Äëÿ ýòîãî óêàæåì òî÷íûé URL äèðåêòîðèè ðåïîçèòîðèÿ, êîïèþ | |
| êîòîðîé ìû õîòèì ïîëó÷èòü. Ïàðàìåòð ïîñëå URL îçíà÷àåò èìÿ äèðåêòîðèè | |
| ðàáî÷åé êîïèè.</para> | |
| <screen> | |
| $ svn co file:///usr/local/svn/repos/myproj wc | |
| A wc/foo | |
| A wc/bar | |
| A wc/baz | |
| A wc/baz/gloo | |
| A wc/baz/bloo | |
| </screen> | |
| <para>Òåïåðü äèðåêòîðèÿ <filename>wc</filename> ñîäåðæèò | |
| ðàáî÷óþ êîïèþ, ñâÿçàííóþ ñ ïîëîæåíèåì <filename>/myproj</filename> | |
| â ðåïîçèòîðèè (Â ïðåäïîëîæåíèè, ÷òî ðåïîçèòîðèé íàõîäèòñÿ ïî | |
| àáñîëþòíîìó ïóòè <systemitem class="url">file:///usr/local/svn/repos</systemitem>).</para> | |
| <para>Ñîçäàäèì äóáëèêàò ðàáî÷åé êîïèè:</para> | |
| <screen> | |
| $ cp -R wc wc2 | |
| </screen> | |
| <para>È ïðîèçâåä¸ì íåêîòîðûå èçìåíåíèÿ â íàøåé ïåðâîé ðàáî÷åé êîïèè:</para> | |
| <screen> | |
| $ cd wc | |
| $ echo "Íîâûé òåêñò" >> bar # Èçìåíÿåì ñîäåðæèìîå ôàéëà bar | |
| $ svn propset color green foo # Äîáàâëÿåì ìåòàäàííûå ê ôàéëó foo | |
| $ svn rm baz # Ïîìå÷àåì äèðåêòîðèþ baz äëÿ óäàëåíèÿ | |
| $ touch newfile | |
| $ svn add newfile # Ïîìå÷àåì íîâûé ôàéë äëÿ äîáàâëåíèÿ â ðåïîçèòîðèé | |
| </screen> | |
| <para>Äîâîëüíî ìíîãî èçìåíåíèé. Åñëè îòëó÷èòüñÿ è âåðíóòüñÿ ê ðàáîòå | |
| íà ñëåäóþùèé äåíü, áóäåì ëè ìû ïîìíèòü, êàêèå èçìåíåíèÿ ïðîèçâåëè â÷åðà? | |
| Õîðîøèé âîïðîñ... Îäíàêî, ïðîáëåìà ðåøàåòñÿ ëåãêî. Êîìàíäà | |
| <command>status</command> ïîêàæåò íàì âñå <quote>ëîêàëüíûå èçìåíåíèÿ</quote> | |
| â íàøå¸ ðàáî÷åé êîïèè:</para> | |
| <screen> | |
| $ svn status # Ïîñìîòðåòü èçìåíåíèÿ â ðàáî÷åé êîïèè | |
| M ./bar | |
| _M ./foo | |
| A ./newfile | |
| D ./baz | |
| D ./baz/gloo | |
| D ./baz/bloo | |
| </screen> | |
| <para>×òî ìû âèäèì? Òðè ôàéëà ïîìå÷åíû äëÿ óäàëåíèÿ ("Deleted", D) | |
| èç ðåïîçèòîðèÿ, îäèí ôàéë ïîìå÷åí äëÿ äîáàâëåíèÿ ("Added", A) â | |
| ðåïîçèòîðèé è ñîäåðæèìîå äâóõ ôàéëîâ áûëî êàêèì-òî îáðàçîì | |
| èçìåíåíî ("Modified", M). Ïîäðîáíîñòè ïðî êîìàíäó | |
| <command>svn status</command> - â ãëàâå 3 êíèãè | |
| "Óïðàâëåíèå âåðñèÿìè ñ ïîìîùüþ Subversion".</para> | |
| <para>"Çàôèêñèðóåì" èçìåíåíèÿ, ñäåëàííûå â ðàáî÷åé êîïèè, | |
| â ðåïîçèòîðèé (òåêóùàÿ ðåäàêöèÿ êîòîðîãî ñòàíåò ðàâíîé 2):</para> | |
| <screen> | |
| $ svn commit -m "Èñïðàâëåíà îøèáêà #233" | |
| Sending bar | |
| Sending foo | |
| Adding newfile | |
| Deleting baz | |
| Transmitting data... | |
| Committed revision 2. | |
| </screen> | |
| <para>Ïàðàìåòð -m ñëóæèò äëÿ óêàçàíèÿ | |
| <firstterm>êîììåíòàðèÿ</firstterm> ê íîâîé ðåäàêöèè. Ýòî ïðîñòî | |
| îïèñàíèå íàáîðà èçìåíåíèé, êîòîðûå Âû ôèêñèðóåòå â ðåïîçèòîðèé. | |
| Â äàëüíåéøåì ëþáîé äðóãîé ïîëüçîâàòåëü ðåïîçèòîðèÿ ìîæåò | |
| ïðî÷èòàòü Âàøè êîììåíòàðèè è áûòü â êóðñå òîãî, êàêèå èçìåíåíèÿ | |
| Âû âíåñëè â ðåäàêöèè 2.</para> | |
| <para>Òåïåðü ïðåäñòàâüòå, ÷òî Âû - ýòî äðóãîé ÷åëîâåê èç âàøåé êîìàíäû. | |
| Äëÿ ýòîãî ïðîñòî ïåðåéäèòå êî âòîðîé ðàáî÷åé êîïèè (<filename>wc2</filename>). | |
| ×òîáû ïîëó÷èòü èç ðåïîçèòîðèÿ èçìåíåíèÿ, ñäåëàííûå âî âòîðîé ðåäàêöèè, | |
| íóæíî âûïîëíèòü êîìàíäó <command>svn update</command>:</para> | |
| <screen> | |
| $ cd ../wc2 # Ïåðåéä¸ì êî âòîðîé ðàáî÷åé êîïèè | |
| $ svn update # Ïîëó÷èì èçìåíåíèÿ èç ðåïîçèòîðèÿ | |
| U ./bar | |
| _U ./foo | |
| A ./newfile | |
| D ./baz | |
| </screen> | |
| <para>Ðåçóëüòàò ðàáîòû êîìàíäû <command>svn update</command> | |
| ãîâîðèò î òîì, ÷òî ôàéë baz óäàë¸í èç Âàøåé ðàáî÷åé êîïèè, | |
| íîâûé ôàéë newfile äîáàâëåí ê ðàáî÷åé êîïèè, à ñîäåðæèìîå ôàéëîâ | |
| bar è foo îáíîâëåíî èç ðåïîçèòîðèÿ.</para> | |
| <para>Åñëè ôàéë <filename>bar</filename> ñîäåðæèò ëîêàëüíûå èçìåíåíèÿ, | |
| ïðîèçâåä¸ííûå âî âòîðîé ðàáî÷åé êîïèè, áóäåò ïðîèçâåäåíà îïåðàöèÿ | |
| <firstterm>ñëèÿíèÿ</firstterm> èçìåíåíèé, çàôèêñèðîâàííûõ â ðåïîçèòîðèè, | |
| ñ âàøèìè. Ýòî îçíà÷àåò, ÷òî <filename>bar</filename> áóäåò ñîäåðæàòü | |
| îáà íàáîðà èçìåíåíèé. Ðåçóëüòàòîâ ó ýòîé îïåðàöèè ìîæåò áûòü äâà:</para> | |
| <itemizedlist> | |
| <listitem> | |
| <para>Ñëèÿíèå ïðîéä¸ò áåç ïîìåõ, â àâòîìàòè÷åñêîì ðåæèìå. | |
| Ýòî îçíà÷àåò, ÷òî äâà íàáîðà èçìåíåíèé íå ïåðåñåêàþòñÿ | |
| è ïðîãðàììà ðàçðåøèëà êîíôëèêò ñàìîñòîÿòåëüíî. | |
|  òàêîì ñëó÷àå êîìàíäà <command>svn update</command> âûâåäåò áóêâó | |
| <literal>G</literal> (Îò àíãëèéñêîãî ñëîâà "mer(G)ed").</para> | |
| </listitem> | |
| <listitem> | |
| <para>Äâà íàáîðà èçìåíåíèé ïåðåñåêàþòñÿ, è âûâåäåíà áóêâà | |
| <literal>C</literal> (îò àíãëèéñêîãî "(C)onflict"). Ðàçðåøèòü êîíôëèêò | |
| âàì ïðèä¸òñÿ âðó÷íóþ, ïîäðîáíîñòè ñì. â ñîîòâåòñòâóþùåé ãëàâå êíèãè.</para> | |
| </listitem> | |
| </itemizedlist> | |
| </sect2> | |
| </sect1> | |
| </chapter> | |
| <!-- | |
| local variables: | |
| sgml-parent-document: ("misc-docs.xml" "chapter") | |
| end: | |
| --> |