Экономика стран

К сожалению, большинство людей, которые будут ими затронуты почти весь мир, не будут иметь никакого влияния на результат. Вести Экономика Дайджест иностранной прессы за 14 августа.
Вести Экономика Греции снова придется списывать долги Греция не сможет самостоятельно расплатиться по долгам, и понадобится новая реструктуризация долгов, чтобы спасти страну от банкротства.

Праца з SVN у файлавай сістэме

  1. Праблема сумеснага выкарыстання файлаў
  2. Мадэль "Блакаванне-Змена-Разблякаваньне"
  3. Мадэль "Капіяванне-Змяненне-Зліццё

Subversion (SVN) - гэта цэнтралізаваная сістэма для сумеснай працы

Subversion (SVN) - гэта цэнтралізаваная сістэма для сумеснай працы. У яе аснове ляжыць сховішча, якое змяшчае дадзеныя ў форме дрэва файлавай сістэмы - звычайнай іерархіі файлаў і каталогаў. Кліенты падключаюцца да сховішча і чытаюць або змяняюць гэтыя файлы. Запісваючы дадзеныя, кліент робіць інфармацыю даступнай для астатніх. Чытаючы дадзеныя, кліент атрымлівае інфармацыю ад іншых.

Асаблівасцю сховішчы SVN з'яўляецца тое, што яно "запамінае" любая змена любога файла, і нават змены ў самым дрэве каталогаў, такія як даданне, выдаленне і перамяшчэнне файлаў і каталогаў. У любы момант кліент можа атрымаць апошнюю версію дрэва файлавай сістэмы. Але, акрамя гэтага, кліент мае магчымасць паглядзець і папярэднія стану файлавай сістэмы.

Падрабязная дакументацыя па наладзе і выкарыстанню Subversion даступная тут .

Сховішча - цэнтральная база дадзеных, звычайна размешчаная на файлавым серверы і якая змяшчае версированные файлы з иx поўнай гісторыяй. Сховішча можа быць даступна з дапамогай розных сеткавых пратаколаў або з лакальнага дыска.

Рабочая копія - каталог на лакальным кампутары, з якім працуе распрацоўшчык. Распрацоўшчык можа атрымаць з сховішчы апошнюю версію файлаў, папрацаваць з ёй лакальна, а калі будзе ўпэўнены ў зменах - зафіксаваць гэтыя файлы назад у сховішча. Рабочая копія не ўтрымлівае гісторыю праекта, але змяшчае копію файлаў, якія былі ў сховішча да таго, як іх пачаў змяняць распрацоўшчык. Такім чынам можна даведацца пра якія канкрэтна змены былі зробленыя.

Такім чынам можна даведацца пра якія канкрэтна змены былі зробленыя

ВАЖНА

Змены можна паглядзець толькі для тэкставых файлаў. Для бінарных файлаў можна даведацца толькі сам факт змены.

Рэвізія - стан дрэва файлавай сістэмы. Фіксацыя змен дрэва файлавай сістэмы - гэта атамарнага аперацыя. Г.зн. распрацоўшчык можа змяніць змесціва некалькіх файлаў, стварыць новыя каталогі і файлы, выдаліць, перайменаваць і скапіяваць файлы і тэчкі, а затым зафіксаваць ўвесь набор змены як адзінае цэлае змяненне - рэвізію.

Рэвізіі ў сховішча можна прадставіць у выглядзе серыі дрэў файлавай сістэмы - масіва нумароў рэвізій, што пачынаецца з 0 і які расце злева направа (мал. 1). Пад кожным нумарам размешчана дрэва файлавай сістэмы. І кожнае дрэва - "здымак" стану сховішчы пасля кожнай фіксацыі.

Мал. 1. - Прадстаўленне рэвізій ў сховішча

Да ўвагі

У адрозненне ад іншых сістэм кіравання версіямі, нумары рэвізій ў Subversion ставяцца да дрэў цалкам, а не асобныя файлы.

Праблема сумеснага выкарыстання файлаў

Пры працы з SVN можа ўзнікнуць сітуацыя, калі два распрацоўніка працуюць над адной і той жа функцыянальнасцю, рэалізаванай у адным і тым жа файле. Калі першы распрацоўшчык захавае свае змены першым, а другі - некалькімі секундамі пазней, то змены, унесеныя першым распрацоўшчыкам могуць быць зацёртыя. І хоць гэтыя змены Запомніліся сістэмай, праўкі, унесеныя першым распрацоўшчыкам, будуць адсутнічаць у апошняй рэвізіі файла.

Каб пазбегнуць падобнай праблемы, выкарыстоўваюцца дзве мадэлі версирования:

  • мадэль "Блакаванне-Змена-Разблякаваньне";
  • мадэль "Капіяванне-Змяненне-Зліццё".

Мадэль "Блакаванне-Змена-Разблякаваньне"

Сховішча дазваляе ўносіць змены ў файл толькі аднаму карыстачу за раз. Да таго як першы карыстач зможа ўнесці змены ў файл, ён павінен спачатку яго заблякаваць. Другі карыстальнік не зможа зафіксаваць свае змены да таго часу, пакуль першы не прынясе свае змены ў сховішча і ня здыме гэты блок.

недахопы:

  • Першы элемент можа забыцца адмыкнуць, што прывядзе да страты часу другім распрацоўшчыкам.
  • Блякаваньне можа выклікаць залішнюю чарговасць. Калі карыстальнікі працуюць з рознымі неперасякальнымі часткамі файла (напрыклад, пачатак і канец), то можна было б працаваць з файлам адначасова, мяркуючы карэктнае зліццё зменаў.
  • Блякаваньне можа выклікаць ілжывае пачуццё бяспекі. Карыстальнікі могуць адначасова працаваць з рознымі файламі, якія змяшчаюць якая залежыць адзін ад аднаго функцыянальнасць. Кожны карыстальнік заблакаваў свой файл і думае, што пачынае бяспечную ізаляваную задачу. Гэта перашкаджае своечасоваму абмеркавання іх змяненняў, якія могуць быць несумяшчальныя адзін з адным, што прывядзе да непрацаздольнасці распрацоўванага рашэння.

Гэтая мадэль аказваецца зручней, калі выконваецца праца над файламі, што не паддаюцца зьліцьця. Напрыклад, калі сховішча змяшчае выявы, і два чалавекі змяняюць іх у адно і тое ж час, то няма магчымасці зліць гэтыя змены разам.

Мадэль "Капіяванне-Змяненне-Зліццё

Кліенцкае прыкладанне кожнага карыстальніка счытвае са сховішча праект і стварае персанальную рабочую копію - лакальнае адлюстраванне файлаў і каталогаў сховішчы. Пасля гэтага карыстальнікі працуюць, адначасова змяняючы свае асабістыя копіі. У рэшце рэшт, асабістыя копіі зліваюцца ў новую, фінальную версію. Звычайна сістэма кіравання версіямі выконвае зліццё аўтаматычна, але ўвогуле выпадку неабходна рашэнне чалавека.

Калі пры адначасовай працы двух карыстальнікаў змены перасякаюцца, то ўзнікае канфлікт. Тады карыстальнік, які ўносіць змены другім, павінен (пасля абмеркавання з першым карыстальнікам) ўручную з набору канфліктуючых змяненняў выбраць неабходныя. Пасля дазволу канфлікту аб'яднаны файл можа быць бяспечна зафіксаваны ў сховішча.

Вырашальным фактарам пры выкарыстанні гэтай мадэлі з'яўляецца ўзаемадзеянне паміж карыстальнікамі. Пры дрэнным узаемадзеянні карыстальнікаў павялічваецца колькасць сэнсавых і сінтаксічных канфліктаў.

У службовай тэчцы .svn рабочай копіі для кожнага файла Subversion запісвае інфармацыю аб двух найважнейшых уласцівасцях:

  • на якой рэвізіі заснаваны файл у рабочай копіі (рабочая рэвізія файла);
  • дату і час, калі лакальная копія файла апошні раз абнаўлялася са сховішча.

На падставе гэтай інфармацыі Subversion можа вызначыць у якім з станаў знаходзіцца файл рабочай копіі:

  1. Не мяняўся і не састарэлы. Файл не змяняўся ў рабочай копіі. У сховішча не фіксаваліся змены гэтага файла з часу яго рабочай рэвізіі. Пры спробе яго абнавіць або зафіксаваць нічога выканаюцца не будзе.
  2. Зменены лакальна і не састарэлы. Файл быў зменены ў рабочай копіі. У сховішча не фіксаваліся змены гэтага файла з часу яго базавай рэвізіі. Абнаўленне выканаюцца не будзе. Фіксацыя ў сховішча выканаецца паспяхова.
  3. Не мяняўся і састарэў. Файл у рабочай папцы не мяняўся, але быў зменены ў сховішча. Файл павінен быць абноўлены для адпаведнасці бягучай публічнай рэвізіі. Фіксацыя выканаюцца не будзе. Абнаўленне выканаецца паспяхова.
  4. Зменены лакальна і састарэў. Файл быў зменены як у рабочай папцы, так і ў сховішча. Спроба фіксацыі пацерпіць няўдачу. Файл неабходна спачатку абнавіць, паспрабаваўшы аб'яднаць апублікаваныя іншым распрацоўшчыкам змены з лакальнымі. Калі Subversion не зможа выканаць аб'яднанне самастойна, рашэнне канфлікту будзе выконваць карыстальнік.

пры выключаным рэжыме распрацоўкі ў файлавай сістэме дадатак bpm'online выкарыстоўвае ўласную працоўную копію кожнага карыстацкага пакета, для якога падключана версионность. Гэтыя працоўныя копіі размяшчаюцца ў каталогу, паказаным у элеменце defPackagesWorkingCopyPath канфігурацыйнага файла ConnectionStrings.config (гл. " Як разгарнуць прыкладанне on-site ").

Калі яна ў рэжыме распрацоўкі ў файлавай сістэме, то рабочая копія спатрэбіцца стварыць асобна ў каталогу [Шлях да ўсталяванага дадаткам] \ Terrasoft.WebApp \ Terrasoft.Configuration \ Pkg \ [Назва пакета] (гл. " Стварэнне пакета ў рэжыме распрацоўкі ў файлавай сістэме ").

Для працы з Subversion (SVN) у файлавай сістэме рэкамендуецца выкарыстоўваць кліенцкае прыкладанне TortoiseSVN версіі не ніжэй 1.9. Яно рэалізавана як пашырэнне абалонкі Windows і ўбудоўваецца ў кантэкстнае меню правадыра Windows. Падрабязная дакументацыя па выкарыстанні TortoiseSVN даступная тут .

Навигация сайта
Реклама
Панель управления
Календарь новостей
Популярные новости
Информация
Экономика стран www.mp3area.ru © 2005-2016
При копировании материала, ссылка на сайт обязательна.