Журнал LinuxFormat - перейти на главную

LXF135:Launchpad

Материал из Linuxformat
Перейти к: навигация, поиск

Содержание

Зна­ком­ст­во с Launchpad

Джо­но Бэ­кон пред­став­ля­ет Launchpad, куз­ни­цу от­кры­то­го ПО.

В ми­ре от­кры­то­го ПО име­ют­ся ты­ся­чи при­ло­жений на все слу­чаи жизни. Что­бы про­ек­ты столь раз­ных про­грамм, соз­да­вае­мых мно­го­чис­лен­ны­ми доб­ро­воль­ца­ми, успеш­но раз­ви­ва­лись, им нуж­ны ме­сто для хранения ис­ход­но­го ко­да, систе­ма ре­ги­ст­ра­ции оши­бок, ме­то­ди­ка пе­ре­во­да на раз­ные язы­ки, ор­ганиза­ция под­держ­ки поль­зо­ва­те­лей — и, на­конец, про­це­ду­ра планиро­вания и вы­бо­ра но­вых функ­ций.

К сча­стью, ва­ри­ан­тов ор­ганиза­ции кол­лек­тив­но­го тру­да хва­та­ет. Есть сре­ди них слож­ные, ти­па SourceForge, есть и про­стые – на­при­мер, Trac. Но есть та­кое ре­шение, в ко­то­ром бо­гат­ство воз­мож­но­стей со­че­та­ет­ся с про­сто­той – систе­ма Launchpad, ро­див­шая­ся как по­пыт­ка упо­ря­до­чить ра­бо­чих про­цесс «по­строй­ки» ди­ст­ри­бу­ти­ва Ubuntu.

Раз­ра­бот­ка про­ек­тов здесь обес­пе­чи­ва­ет­ся сле­дую­щи­ми позициями:

  • От­сле­жи­вание оши­бок Ме­сто для ре­ги­ст­ра­ции, «от­бо­ра», ис­прав­ления и об­ра­бот­ки оши­бок.
  • Хранение ко­да Ме­сто для хранения ко­да и систе­ма­ти­за­ции мно­го­чис­лен­ных «от­ветв­лений».
  • Пе­ре­во­ды Ме­сто, где не-про­грам­ми­сты пе­ре­во­дят текст на ино­стран­ные язы­ки.
  • Сбор­ка па­ке­тов Ме­сто для сбор­ки па­ке­тов для Ubuntu и вы­да­чи их поль­зо­ва­те­лям.
  • Учёт спе­ци­фи­ка­ций Ме­сто планиро­вания функ­ций, до­бав­ляе­мых в про­ект.
  • Под­держ­ка со­об­ще­ства Ме­сто, где за­да­ют во­про­сы и от­ве­ча­ют на них.

Сей­час мы рас­смот­рим неко­то­рые из этих пунктов под­роб­но и уз­на­ем, как на­чать ра­бо­ту в систе­ме Launchpad.

Да­вай­те нач­нём с по­лу­чения учёт­ной запи­си. За­пусти­те web-брау­зер, пе­рей­ди­те на сайт http://www.launchpad.net и на­жми­те ссыл­ку Log In/Register в пра­вом верхнем уг­лу страницы. Сле­дуя ин­ст­рук­ци­ям, соз­дай­те учёт­ную запись и вернитесь на Launchpad, уже под сво­им именем. Те­перь по­смот­рим, из че­го со­сто­ит и как ра­бо­та­ет ба­зо­вый ин­тер­фейс.

Launchpad по­де­лен ме­ж­ду мно­же­ством про­ек­тов; обыч­но ка­ж­дый по­свя­щён од­но­му про­грамм­но­му про­дук­ту. На­при­мер, зай­ди­те на http://www.launchpad.net/lernid: этот про­ект я недав­но на­чал раз­ра­ба­ты­вать. Lernid – сред­ство ор­ганиза­ции элек­трон­но­го обу­чения по ка­на­лам IRC. Мы уже дав­но ве­дём неде­ли обу­чения для со­об­ще­ства Ubuntu, и Lernid уп­ро­ща­ет доступ к за­ня­ти­ям, а так­же слу­жит для де­мон­ст­ра­ции пре­зен­та­ций и web-страниц в ре­аль­ном вре­мени (LXF133). Это хо­ро­ший при­мер конъ­юнк­тур­но­го про­ек­та. Он соз­дан, что­бы удов­ле­тво­рить на­зрев­шую по­треб­ность, и Launchpad по­мог мно­гим доб­ро­воль­цам во­вре­мя «под­ста­вить пле­чо».

Страница Launchpad де­лит­ся на несколь­ко клю­че­вых сек­то­ров. В верхней части при­ве­де­ны основ­ные руб­ри­ки.

  • Overview [Об­зор] Это глав­ная страница про­ек­та с об­щи­ми све­дения­ми.
  • Code [Код] Здесь хранит­ся код.
  • Bugs [Ошиб­ки] Здесь ре­ги­ст­ри­ру­ют­ся недостат­ки и де­фек­ты.
  • Blueprints [На­мёт­ки] Раз­дел для спе­ци­фи­ка­ций и про­ек­ти­ро­вания но­вых функ­ций.
  • Translations [Пе­ре­во­ды] Систе­ма пе­ре­во­да тек­сто­вых строк.
  • Answers [От­ве­ты] Под­держ­ка конеч­ных поль­зо­ва­те­лей.

Все эти раз­де­лы пред­на­зна­че­ны для раз­ных групп доб­ро­воль­ных по­мощников.

По­лу­чение ко­да

Это од­на из важней­ших функ­ций Launchpad: здесь мож­но най­ти ис­ход­ные ко­ды мно­же­ства при­ло­жений. Всё это мож­но за­гру­зить и изу­чить, а по­том при­ду­мать соб­ствен­ные мо­ди­фи­ка­ции и до­полнения. Для про­грам­ми­ста Launchpad – пре­восход­ный по­ли­гон для ис­сле­до­вания ПО и воз­мож­ность внести соб­ствен­ный вклад в раз­ра­бот­ку мно­же­ства при­ло­жений.

Launchpad тес­но свя­зан с систе­мой кон­тро­ля вер­сий Bazaar, что обес­пе­чи­ва­ет бес­пре­пят­ствен­ную за­груз­ку и вы­груз­ку ко­да, а так­же сред­ства кон­тро­ля и ре­ви­зии мо­ди­фи­ка­ций. Что­бы ис­поль­зо­вать эти воз­мож­но­сти, необ­хо­ди­мо уста­но­вить систе­му Bazaar (ско­рее все­го, в ва­шем ди­ст­ри­бу­ти­ве она уже есть).

На­при­мер, что­бы за­гру­зить ис­ход­ный код Lernid, пе­рей­ди­те на страницу про­ек­та http://www.launchpad.net/lernid и на­жми­те кноп­ку Code. Вы уви­ди­те мас­су от­ветв­лений: в лю­бом про­ек­те их нема­ло. Но лю­ди в основ­ном ин­те­ре­су­ют­ся «глав­ной вет­вью» – ство­лом (trunk).

Ствол – осно­ва про­ек­та. Это офи­ци­аль­ное на­прав­ление, от­ра­жаю­щее те­ку­щее со­стояние раз­ра­бот­ки. В от­ветв­лениях мо­гут иметь­ся ка­кие-то свои функ­ции, и мно­гие из них впо­след­ ствии сно­ва вли­ва­ют­ся в ствол.

За­гру­зить код ство­ла про­сто: дос­та­точ­но ско­ман­до­вать

bzr branch lp:lernid

Ес­ли вам ну­жен код дру­го­го про­ек­та, про­сто из­мените на­звание по­сле lp:. Ес­ли хо­ти­те за­гру­зить дру­гое от­ветв­ление, щелкните по нему, и Launchpad под­ска­жет коман­ду bzr для за­груз­ки этой вет­ви.

Ко­ли­че­ство про­ек­тов пре­вы­ша­ет 17 000 – есть где раз­гу­лять­ся! Ма­ло то­го, все па­ке­ты Ubuntu то­же хра­нят­ся на Launchpad. На­при­мер, что­бы за­гру­зить код при­ло­жения для мик­ро­бло­гов Gwibber, ко­то­рое вой­дёт в но­вый Ubuntu 10.10 Maverick Meerkat [Миг­ри­рую­щий Ман­густ], про­сто на­бе­ри­те:

bzr branch lp:ubuntu/maverick/gwibber

Как ви­ди­те, при­нять уча­стие в раз­ра­бот­ке Ubuntu со­всем не слож­но: за­груз­ка ко­да и управ­ление им осу­ще­ств­ля­ют­ся из еди­но­го цен­тра.

Внесение из­менений

За­гру­жая код про­ек­та, вы, ве­ро­ят­но, хо­ти­те улуч­шить его до­бав­кой ка­кой-ли­бо функ­ции или ис­прав­лением ошиб­ки. Вер­нуть ис­прав­лен­ный про­ект храните­лям неслож­но. Это де­ла­ет­ся в три эта­па:

  1. Фик­са­ция Со­храните из­менения на локаль­ном ком­пь­ю­те­ре.
  2. Воз­врат Вы­гру­зи­те своё от­ветв­ление на Launchpad.
  3. Пред­ло­жение Пред­ло­жи­те ав­то­ру про­ек­та при­сое­динить ис­прав­лен­ное от­ветв­ление.

Вер­нём­ся к на­ше­му при­ме­ру с Lernid: пред­ставь­те, что вы улуч­ши­ли про­ект ре­дак­ти­ро­ванием ко­да или со­став­лением до­ку­мен­та­ции. На ва­шем ком­пь­ю­те­ре из­менения ра­бо­та­ют, и вы ре­ши­ли за­фик­си­ро­вать их в систе­ме Bazaar – тогда со­об­щи­те Bazaar о необ­хо­ди­мо­сти со­хранить из­менения, вот так:

bzr commit

Сис­те­ма пред­ло­жит со­ста­вить со­про­во­ди­тель­ное со­об­ще­ние с опи­са­ни­ем из­ме­не­ний. Те­перь мож­но вы­гру­жать из­ме­нён­ные дан­ные на Launchpad. На­бе­ри­те ко­ман­ду:

bzr push lp:~<имя_поль­зо­ва­те­ля>/<про­ект>/<имя_вет­ви>

На­при­мер, для ме­ня, поль­зо­ва­те­ля с име­нем jonobacon, вы­груз­ка от­ветв­ле­ния на Lernid бу­дет вы­гля­деть так:

bzr push lp:~jonobacon/lernid/my-new-branch

Пе­рей­дя на http://code.launchpad.net/lernid для про­смот­ра ко­да, я об­на­ру­жу и свой вклад (раз я ука­зал lernid как ад­рес для push).

Те­перь ка­ж­дый мо­жет за­гру­зить об­нов­лён­ный код и про­ве­рить, всё ли дей­ству­ет как на­до. Ес­ли я за­хо­чу пред­ло­жить глав­ным раз­ра­бот­чи­кам Lernid вклю­чить мои из­менения в «ствол», то нач­ну с на­жа­тия кноп­ки Propose For Merging [Пред­ло­жить к слиянию]. За­тем, до­ба­вив крат­кое опи­сание сво­его от­ветв­ления, на­жму кноп­ку Propose Merge [Пред­ло­жить слияние]. По­сле это­го раз­ра­бот­чи­ки смо­гут про­ве­рить мою ра­бо­ту.

Ре­ги­ст­ра­ция оши­бок

Дру­гая важ­ная функ­ция Launchpad – систе­ма от­сле­жи­вания оши­бок [bugs], про­зван­ная раз­ра­бот­чи­ка­ми «Malone» (помните Bugsy Malone? [ге­рой по­пу­ляр­но­го дет­ско­го мю­зик­ла, – прим. ред.]). Раз­ра­ба­ты­вать та­кие ин­ст­ру­мен­ты ар­хи­труд­но, но коман­да Launchpad ока­за­лась на вы­со­те: систе­ма удоб­на как для поль­зо­ва­те­лей (нетруд­но со­ста­вить со­об­щение об ошиб­ке), так и для про­грам­ми­стов (удоб­но от­сле­жи­вать и систе­ма­ти­зи­ро­вать ошиб­ки).

Про­цесс ре­ги­ст­ра­ции оши­бок прост. Во-пер­вых, пе­рей­ди­те к странице про­ек­та на Launchpad и на­жми­те кноп­ку Bugs [Ошиб­ки] ввер­ху. За­тем на­жми­те ссыл­ку Report A Bug [Со­об­щить об ошиб­ке] в пра­вом верхнем уг­лу.

У вас за­про­сят ан­но­та­цию – од­но­строч­ное опи­сание ошиб­ки. На­при­мер: “Gwibber crashes when connecting [Gwibber па­да­ет при под­клю­чении]” или “Evolution is not displaying messages in my Inbox [Evolution не ото­бра­жа­ет со­об­щения в пап­ке Вхо­дя­щие]”. Вве­ди­те опи­сание и на­жми­те кноп­ку Next [Да­лее].

На сле­дую­щем эк­ране Launchpad по­про­бу­ет най­ти уже имею­щие­ся со­об­щения об ана­ло­гич­ной ошиб­ке и вы­ве­дет ре­зуль­та­ты по­иска. На­жа­тие стрел­ки ря­дом с опи­санием ошиб­ки по­ка­жет де­таль­ные све­дения о ней. Ес­ли «ва­ша» ошиб­ка уже за­ре­ги­ст­ри­ро­ва­на, не от­прав­ляй­те со­об­щение – на­жми­те кноп­ку “Yes, this is the bug I’m trying to report [Да, об этой ошиб­ке я и го­во­рю]”. Систе­ма Launchpad от­ме­тит, что та­кая ошиб­ка об­на­ру­же­на не од­на­ж­ды. Это поднимет «накал» ошиб­ки, ука­зы­ваю­щий раз­ра­бот­чи­кам на наи­бо­лее частые про­бле­мы.

Не най­дя «сво­ей» ошиб­ки сре­ди пе­ре­чис­лен­ных, на­жми­те кноп­ку “No, I need to report a new bug [Нет, я хо­чу со­об­щить о но­вой ошиб­ке]”. На сле­дую­щем эк­ране нуж­но бу­дет вве­сти под­роб­ное опи­сание ошиб­ки. По­на­до­бят­ся све­дения о ком­пь­ю­те­ре, вер­си­ях ПО и ша­гах, вы­звав­ших ошиб­ку. Ука­зав все необ­хо­ди­мое, от­правь­те со­об­щение в ба­зу дан­ных на­жа­ти­ем кноп­ки Submit Bug Report [От­пра­вить со­об­щение об ошиб­ке].

От­бор оши­бок

Ва­ше со­об­щение при­сое­динит­ся к че­ре­де от­чё­тов, до­ку­мен­ти­рую­щих вся­че­ские про­бле­мы с про­ек­та­ми на Launchpad. Всё это за­ду­ма­но как пло­щад­ка для об­су­ж­дения, где вы­яв­ля­ют­ся де­таль­ные све­дения о про­бле­мах, что­бы в ито­ге снаб­дить про­грам­ми­ста ин­фор­ма­ци­ей для по­иска ре­шения. Про­цесс сортировки ошиб­ок на основании полученной ин­фор­ма­ции на­зы­ва­ет­ся «от­бо­ром» [triaging].

Ра­бо­та над от­бо­ром оши­бок – весь­ма цен­ный вклад в от­кры­тое ПО. Про­смотр от­чё­тов, рас­ста­нов­ка при­ори­те­тов, тести­ро­вание при­ло­жений для вы­яв­ления недостат­ков, со­став­ление до­полнитель­ных ком­мен­та­ри­ев – всё это очень по­мо­га­ет при­бли­зить­ся к ре­шению про­бле­мы. Рас­смот­рим основ­ные ор­га­ны «управ­ления от­бо­ром», доступ­ные в Launchpad. От­прав­ляя от­чёт об ошиб­ке, вы уви­ди­те ок­но с тре­мя клю­че­вы­ми зо­на­ми. Ввер­ху, в жёл­той таб­ли­це, при­ве­де­ны неко­то­рые све­дения о со­стоянии и важ­но­сти ошиб­ки; спра­ва пе­ре­чис­ле­ны псев­донимы поль­зо­ва­те­лей, подпи­сав­ших­ся на но­во­сти об этой ошиб­ке; основ­ная частьок­на от­во­дит­ся ком­мен­та­ри­ям, фор­ми­рую­щим дискуссию о по­исках ре­шения.

Возь­мём жёл­тую таб­ли­цу ввер­ху. Здесь есть несколь­ко по­лей, зна­чение ко­то­рых мож­но из­менить с по­мо­щью жёл­тых кно­пок по со­сед­ству. Нам ин­те­рес­ны три по­ля; рас­смот­рим их под­робнее. Пер­вое по­ле – Status [Со­стояние], от­ра­жаю­щее те­ку­щее со­стояние ошиб­ки и ее ис­прав­ления. Ва­ри­ан­тов мно­го.

  • New [Но­вое] От­чёт об ошиб­ке по­сту­пил на сайт, но раз­ра­бот­чик ещё не дал ему оцен­ку.
  • Incomplete [Непол­ное] От­чёт об ошиб­ке, о ко­то­рой раз­ра­бот­чик за­про­сил до­полнитель­ные све­дения и ожи­да­ет их.
  • Invalid [Необосно­ван­ное] Со­об­щение об ошиб­ке не под­твер­ди­лось (иногда поль­зо­ва­те­ли поднима­ют лож­ную тре­во­гу).
  • Won’t Fix [Не при­ня­то] Ошиб­ка, ко­то­рую раз­ра­бот­чик не счи­та­ет нуж­ным ис­прав­лять (на­при­мер, поль­зо­ва­тель рас­ценил как оши­боч­ное ре­шение из­менить цвет кноп­ки).
  • Confirmed [Под­твер­жде­но] Раз­ра­бот­чик при­знал со­об­щение достой­ным внимания.
  • Triaged [Ото­бра­но] По со­об­щению со­б­ра­на вся ин­фор­ма­ция, необ­хо­ди­мая для ис­прав­ления (на­при­мер, уда­лось най­ти при­чи­ну непо­лад­ки).
  • In Progress [В ра­бо­те] Раз­ра­бот­чик взял­ся уст­ранить ошиб­ку и занима­ет­ся этим.
  • Fix Committed [Ис­прав­ле­но] Ис­прав­ление ошиб­ки за­вер­ше­но и вы­гру­же­но в глав­ную ко­до­вую ба­зу.
  • Fix Released [Вы­да­но] Для оши­бок, ис­прав­ление ко­то­рых вы­да­но конеч­ным поль­зо­ва­те­лям (ча­ще все­го в оче­ред­ной вер­сии ПО).

Сле­дую­щее по­ле – Importance [Важ­ность]: это весь­ма важ­ная часть со­об­щения об ошиб­ке, и ра­бо­тать с ним сле­ду­ет очень внима­тель­но. Зна­чение это­го по­ля ука­зы­ва­ет на опас­ность ошиб­ки. Ва­ри­ан­ты вы­бо­ра та­кие:

  • Critical [Кри­тич­но] Серь­ёз­ная ошиб­ка, вы­зы­ваю­щая су­ще­ст­вен­ное снижение про­из­во­ди­тель­но­сти или свя­зан­ная с риском по­те­ри дан­ных.
  • High [Вы­со­кий уро­вень] Раз­ру­ши­тель­ная ошиб­ка.
  • Medium [Средний уро­вень] Ошиб­ка, вы­зы­ваю­щая зна­чи­тель­ные неудоб­ства в ра­бо­те с ПО.
  • Low [Низ­кий уро­вень] Ошиб­ка все­рь­ёз не влия­ет на об­щую ра­бо­ту при­ло­жения.
  • Wishlist [По­же­лания] Мно­гие со­об­щения об ошиб­ках мож­носчи­тать за­про­сом на но­вые функ­ции – и клас­си­фи­ци­ро­вать со­от­вет­ствен­но.
  • Undecided [Неиз­вест­но] Вы­бе­ри­те этот ва­ри­ант, ес­ли ни один из пре­ды­ду­щих не по­до­шёл.

На­конец, по­следнее важ­ное по­ле – Assigned To [По­ру­че­но]: здесь при­во­дит­ся имя раз­ра­бот­чи­ка, ко­то­рый взял­ся за по­иск ре­шения.

Под жёл­той таб­ли­цей от­ве­де­но ме­сто для пе­ре­го­во­ров об ошиб­ке. К уча­стию при­гла­ша­ют­ся все, об­су­ж­дение ото­бра­жа­ет­ся в хро­но­ло­ги­че­ском по­ряд­ке. По­лез­ный со­вет: здесь не нуж­но по­ме­щать ком­мен­та­рии ти­па «эту ошиб­ку я то­же ви­дел». Для это­го в верхней части ок­на есть ссыл­ка Does This Bug Affect You? [Влия­ет ли эта ошиб­ка на вас?] – на­жми­те жёл­тую кноп­ку спра­ва от надпи­си, и все пой­мут, что да, влия­ет.

На­конец, ес­ли вас осо­бо ин­те­ре­су­ет от­чёт о кон­крет­ной ошиб­ке и вы хо­ти­те сле­дить за из­менением его ста­ту­са, на­жми­те кноп­ку Subscribe [Подпи­сать­ся] на пра­вой панели – и бу­де­те по­лу­чать элек­трон­ные со­об­щения об об­нов­лениях и из­менениях.

Пе­ре­во­ды

И по­следний ком­понент, ко­то­рый мы рас­смот­рим – сек­ция пе­ре­во­дов, из­вест­ная как Rosetta. Сю­да мож­но им­пор­ти­ро­вать лю­бой про­ект, ис­поль­зую­щий стан­дарт­ный кар­кас gettext, и Rosetta обес­пе­чит про­стой ин­тер­фейс для лю­бо­го же­лаю­ще­го за­нять­ся пе­ре­во­дом. При­ят­но, что для уча­стия в про­ек­те пе­ре­во­дчи­ку неза­чем изу­чать про­грам­ми­ро­вание: доста­точ­но уметь пе­ре­во­дить с анг­лий­ско­го.

Со­об­ще­ство пе­ре­во­дчи­ков на Launchpad весь­ма вну­ши­тель­но. Я вы­гру­зил на Launchpad го­то­вое при­ло­жение, по­дал за­яв­ку на пе­ре­вод, и уже че­рез час бы­ли го­то­вы пе­ре­во­ды на 10 язы­ков.

Что­бы при­нять уча­стие, най­ди­те про­ект, где вклю­че­ны пе­ре­во­ды (на­при­мер, Ubuntu), и на­жми­те кноп­ку Translations [Пе­ре­во­ды]. За­тем на­жми­те кноп­ку Choose Preferred Languages [Вы­брать язы­ки] и от­меть­те га­лоч­ка­ми язы­ки, на ко­то­рые хо­ти­те пе­ре­во­дить. Вер­нув­шись на глав­ную страницу пе­ре­во­дов, пе­рей­ди­те к от­ме­чен­но­му язы­ку и в пер­вом ком­биниро­ван­ном окне вы­бе­ри­те Untranslated Items [Непе­ре­ве­дён­ные сег­мен­ты]. Те­перь вве­ди­те пе­ре­вод в по­ле New Translation [Но­вый пе­ре­вод]. До­бав­ляя пе­ре­вод, не за­бы­вай­те со­хра­нять до­ба­воч­ные зна­ки и фор­ма­ти­ро­вание.

В за­вер­шение

Launchpad – мощ­ная сре­да раз­ра­бот­ки, и наш об­зор лишь за­дел вер­хуш­ку айс­бер­га. За ка­ж­дым из рас­смот­рен­ных на­ми основ­ных ком­понен­тов скры­ва­ет­ся бо­га­тый на­бор функ­ций и воз­мож­но­стей для кол­лек­тив­ной раз­ра­бот­ки от­лич­но­го ПО. В про­дол­же­ние на­ше­го пу­те­ше­ст­вия ре­ко­мен­дую зай­ти на стра­ни­цу https://edge.launchpad.net/+tour: уз­нае­те мно­го но­во­го. Уда­чи, и не за­бы­вай­те из­ве­щать нас о сво­их дос­ти­же­ни­ях!

Ра­бо­чий стол как IDE

Кро­ме мощ­но­го web-ин­тер­фей­са, в Launchpad пре­ду­смот­ре­на биб­лио­те­ка Python, с по­мо­щью ко­то­рой соз­да­но не­сколь­ко дру­гих ин­тер­фей­сов (для то­го же Launchpad). Один из наи­бо­лее ин­те­рес­ных – Ground Control, на­пи­сан­ный Мар­тин­сом Оу­эн­сом [Martins Owens] – дос­ту­пен по ад­ре­су http://ground-control.org. Ground Control обес­пе­чи­ва­ет ин­те­гра­цию Launchpad и Bazaar в фай­ло­вый ме­нед­жер Nautilus (Gnome).

Ground Control до­бав­ля­ет не­сколь­ко кно­пок к стан­дарт­но­му ок­ну Nautilus, что по­зво­ля­ет про­смат­ри­вать от­ветв­ле­ния, вы­гру­жать из­ме­не­ния, ис­прав­лять ошиб­ки и вы­пол­нять дру­гие дей­ст­вия – не при­тра­ги­ва­ясь к ко­манд­ной стро­ке. Из­на­чаль­но Ground Control был соз­дан для со­дей­ст­вия груп­пе раз­ра­бот­ки не­тех­ни­че­ской до­ку­мен­та­ции Ubuntu, а за­тем, в со­че­та­нии с web-ин­тер­фей­сом Launchpad, пе­ре­рос в мощ­ное сред­ст­во кол­лек­тив­ной раз­ра­бот­ки про­ек­тов.

Ещё о Launchpad:

На­мёт­ки

Боль­шин­ст­во но­вых функ­ций про­ек­та соз­да­ёт­ся кол­лек­тив­но. Со­от­вет­ст­вую­щие за­пи­си ве­дут­ся в ви­де спе­ци­фи­ка­ций, по­нят­ных всем чле­нам со­об­ще­ст­ва: это не­об­хо­ди­мо для «свер­ки ча­сов» в про­цес­се раз­ра­бот­ки. Ко­ман­да Launchpad реа­ли­зо­ва­ла эту функ­цию в ви­де осо­бой руб­ри­ки, «На­мёт­ки» [Blueprints].

«На­мёт­ки» – это ме­сто для до­ку­мен­ти­ро­ва­ния но­вой функ­ции, вы­ра­бот­ки пла­на её реа­ли­за­ции, при­вяз­ки к об­щей спе­ци­фи­ка­ции, оп­ре­де­ле­ния важ­но­сти и при­ори­те­та; ана­ло­гич­но про­цес­су от­сле­жи­ва­ния оши­бок. Кро­ме то­го, руб­ри­ка на­мё­ток слу­жит ин­фор­ма­ци­он­ной па­не­лью, на ко­то­рой за­пи­сы­ва­ют­ся из­ме­не­ния ста­ту­са и об­нов­ле­ния. Под­пи­сав­шись на эту руб­ри­ку, поль­зо­ва­те­ли по­лу­ча­ют элек­трон­ные со­об­ще­ния о про­ис­хо­дя­щих со­бы­ти­ях.

От­ве­ты

Осо­бо по­пу­ляр­на функ­ция Launchpad под на­зва­ни­ем «От­ве­ты». Здесь ко­неч­ные поль­зо­ва­те­ли за­да­ют во­про­сы, а чле­ны со­об­ще­ст­ва коо­пе­ри­ру­ют­ся для от­ве­тов на них. Ве­дёт­ся сле­же­ние за тем, что­бы ни один во­прос не ос­тал­ся без от­ве­та; есть воз­мож­ность до­бав­лять па­ры «во­прос–от­вет» к спи­ску FAQ.

От­ве­ты – вер­ный спо­соб рас­ши­рить круг поль­зо­ва­те­лей про­ек­та, и ка­ж­дый удач­ный от­вет по­вы­ша­ет цен­ность это­го мощ­но­го ре­сур­са под­держ­ки.

Персональные инструменты
купить
подписаться
Яндекс.Метрика