Changes To Как добавить скрипт в репозитарий Вы: nobody
Вход

Initial version of "Как добавить скрипт в репозитарий"

            1  +<div align="justify"><font size="2" face="verdana, geneva,arial">
            2  +Итак, вы написали свой полезнейший во всех отношениях скрипт и теперь хотите
            3  +поделиться им со всем прогрессивным человечеством. Я помогу вам в этом.
            4  +Именно для этих целей и предназначен [http://snegopat.ru/scripts/], являющийся
            5  +репозитарием
            6  +[http://ru.wikipedia.org/wiki/%D0%A0%D0%B0%D1%81%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%BD%D0%B0%D1%8F_%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0_%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F_%D0%B2%D0%B5%D1%80%D1%81%D0%B8%D1%8F%D0%BC%D0%B8#.D0.A0.D0.B0.D1.81.D0.BF.D1.80.D0.B5.D0.B4.D0.B5.D0.BB.D1.91.D0.BD.D0.BD.D1.8B.D0.B5_.D1.81.D0.B8.D1.81.D1.82.D0.B5.D0.BC.D1.8B_.D1.83.D0.BF.D1.80.D0.B0.D0.B2.D0.BB.D0.B5.D0.BD.D0.B8.D1.8F_.D0.B2.D0.B5.D1.80.D1.81.D0.B8.D1.8F.D0.BC.D0.B8|распределённой системы управления версиями]
            7  +[http://fossil-scm.org|fossil].
            8  +
            9  +Вся прелесть распределённых систем управления версиями в том, что у каждого разработчика
           10  +хранится своя, локальная копия всего репозитария. У вас она уже есть - достаточно заглянуть
           11  +в папку repo. repo\scripts.fossil - это и есть клонированный репозитарий. Папка scripts -
           12  +это открытая рабочая копия репозитария, о чем говорит находящийся в ней файл _FOSSIL_.
           13  +
           14  +Вы уже можете использовать локальный репозитарий для хранения истории версий своих разработок.
           15  +Как это делается? Для начала я бы рекомендовал вам разместить fossil.exe в одной из папок,
           16  +перечисленных в PATH, ну например, папке Windows. Это позволит вам всегда запускать fossil.exe,
           17  +просто набрав fossil, в какой бы папке вы не находились.
           18  +
           19  +Я предполагаю, что у вас уже есть хотя бы начальные представления о работе с
           20  +системами контроля версий. Вкратце типичная последовательность работ такова:
           21  +
           22  +  #  Файлы, в которых вы заинтересованы, добавляются в систему контроля версий.
           23  +  #  По мере правок файла, с удобной для вас периодичностью, его измененные состояния
           24  +     фиксируются в системе. Это и есть версии (ревизии) файла.
           25  +  #  Периодически вы обмениваетесь своими изменениями с окружающими.
           26  +
           27  +В fossil это происходит следующим образом.
           28  +
           29  +  *  Сначала вы размещаете свой файл, или даже свои файлы в папке scripts или его подпапке.
           30  +     Примечательно, что в какой бы подпапке вы не находились, fossil вегда работает со всей
           31  +     рабочей копией, начиная от той папки, где лежит файл _FOSSIL_.
           32  +  *  Теперь вы уведомляете fossil о том, что хотите взять эти файлы под его заботливый контроль:
           33  +     <verbatim>
           34  +     fossil add имена файлов
           35  +     </verbatim>
           36  +     Можно для каждого файла выполнять отдельную команду add, можно перечислить их в одной команде,
           37  +     разделяя пробелом. Если в качестве имени файла указать каталог, fossil добавит все еще не
           38  +     взятые им под контроль файлы из этого каталога и его подкатологов. Посмотреть список файлов,
           39  +     еще не взятых под контроль, можно командой
           40  +     <verbatim>
           41  +     fossil extra
           42  +     </verbatim>
           43  +     Таким образом, если кроме ваших файлов нет других "лишних", то самый простой путь добавить
           44  +     все файлы это
           45  +     <verbatim>
           46  +     fossil add .
           47  +     </verbatim>
           48  +  *  Вы уведомили fossil о файлах, которые хотите контролировать. Но в репозитарий (даже ваш локальный)
           49  +     они еще не попали. А попадут они туда после <b>фиксации</b>.
           50  +     <div align="right"><i>
           51  +     Фиксация - она же коммит, она же чекин,<br/>она же commit, она же check-in -<br/> операция, заносящая
           52  +     текущее содержание файла<br/>в систему, как очередную версию файла.
           53  +     </i></div>
           54  +     В fossil фиксация делается командой
           55  +     <verbatim>
           56  +     fossil ci -m "Комментарий к фиксации"
           57  +     </verbatim>
           58  +     По этой команде состояние всех изменных с последней фиксации файлов опять фиксируется в системе,
           59  +     образуя очередную <b>ревизию</b>.
           60  +     Посмотреть, какие файлы были изменены, можно командой
           61  +     <verbatim>
           62  +     fossil changes
           63  +     </verbatim>
           64  +     Но тут есть одна тонкость. Хотя вы работаете с локальным репозитарием, рано или поздно вам
           65  +     придется передать свои правки в другой (центральный) репозитарий. А там уже могут быть
           66  +     добавлены правки других пользователей, и ваши правки создадут ненужные разветвления
           67  +     (о них немного в другой раз, для пытливых [http://fossil-scm.org/index.html/doc/trunk/www/branching.wiki|ссылка]).
           68  +     Непреднамеренных ветвлений лучше избегать, а этого можно добиться, работая в самой свежей
           69  +     ревизии. Для этого сначала надо получить последние правки из центра:
           70  +     <verbatim>
           71  +     fossil pull
           72  +     </verbatim>
           73  +     а затем обновив свою рабочую копию:
           74  +     <verbatim>
           75  +     fossil update
           76  +     </verbatim>
           77  +     При обновлении fossil учтет ваши исправления в вашей же копии файлов, и объединит их в рабочем каталоге
           78  +     с последними правками из центрального репозитария, если сможет. Вот теперь можно и делать коммит.
           79  +  *  Последовательность правка/обновление/фиксация можно повторять сколько угодно. Все будет храниться
           80  +     в вашем локальном репозитарии. И даже будет видно в локальном веб-интерфейсе:
           81  +     <verbatim>
           82  +     fossil ui
           83  +     </verbatim>
           84  +     Команда запустит fossil как веб-сервер на 127.0.0.1:8080 (или другом порту, заданном в параметрах
           85  +     команды) и запустит умолчальный браузер на этой странице. Там вы можете смотреть timeline,
           86  +     создавать и править вики страницы и задачи - все это будет храниться в вашем локальном репозитарии.
           87  +  *  И вот, вы достигли просветления, скрипт отлажен и вылизан, и в-принципе, неплохо показать бы его
           88  +     людям. Пора отдать им свои правки. Для этого нужно сделать
           89  +     <verbatim>
           90  +     fossil push
           91  +     </verbatim>
           92  +     Вот тут то вы и узнаете, что в центральном репозитарии прав на коммит вам не дадено. Поэтому
           93  +     обратитесь сначала ко мне - форум, email, почтовые голуби, как угодно - и попросите прав на
           94  +     коммит. Я обычно добр и права даю. После чего ваш скрипт попадает в центральный репозитарий
           95  +     и становится видим для всех.
           96  +
           97  +Это о технической стороне вопроса. Теперь о моральной. Обычно вместе с правами на коммит, я даю
           98  +и права на создание вики-страниц. Крайне жалательно, чтобы параллельно со скриптом вы также
           99  +создавали бы и вики-страницу с его описанием. Для единообразия, пусть страница называется также,
          100  +как и файл вашего скрипта (включая подпапки, если скрипт в них). Это можно сделать также предварительно
          101  +в локальном интерфейсе, запустив
          102  +  <verbatim>
          103  +  fossil ui
          104  +  </verbatim>
          105  +Вместе с <i>fossil push</i> ваши страницы также уйдут в центр, Юстасу.
          106  +
          107  +Описание должно быть небольшим, но достаточным. Также хорошо завести тему на форуме, опять же
          108  +с названием файла скрипта, опять же с небольшим описанием, и дав ссылку на ветку форума на
          109  +вики-странице скрипта. Дальнейшие обсуждения скрипта лучше вести уже на форуме, дабы не засорять
          110  +репозитарий кучей правок (они будут расходиться по всем локальным репозитариям).
          111  +
          112  +Ну и так как многие будут смотреть текст вашего скрипта из браузера, при просмотре событий и
          113  +правок, крайне жалетельно, чтобы
          114  +  *  Кодировка файла скрипта была UTF-8 c BOM. Тогда во-первых в браузере будут правильно отображаться
          115  +     русские символы, а во-вторых, Снегопат правильно загрузит текст вашего скрипта.
          116  +  *  Вместо табов выравнивать текст пробелами, так как обычно размер табуляции редактора не
          117  +     совпадает с размером табуляции браузера, и весь текст съезжает.
          118  +
          119  +</font></div>