.. ÐÑÐ¾Ñ Ñайл в ÑоÑмаÑе ReStructuredText - он Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¾ÑÑоÑмаÑиÑован в HTML, .. или ÑекÑÑ. РбÑдÑÑем планиÑÑеÑÑÑ Ð²ÑделÑÑÑ Ð¿ÑимеÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´ и авÑомаÑиÑеÑки .. ÑеÑÑиÑоваÑÑ Ð¸Ñ . .. ÐаннÑй ÑекÑÑ ÑнаÑала бÑл на Wiki .. http://bazaar.canonical.com/IntroductionToBzr .. но бÑл пеÑемеÑен в деÑево иÑÑ Ð¾Ð´Ð½Ð¾Ð³Ð¾ кода ÑÑо Ð±Ñ ÑÐ¸Ð½Ñ ÑонизиÑоваÑÑÑÑ .. Ñ Ð¸ÑÑ Ð¾Ð´Ð½Ñм кодом и возможно авÑомаÑиÑеÑки ÑеÑÑиÑоваÑÑÑÑ. ============== УÑебник Bazaar ============== ТекÑÑÐ°Ñ Ð²ÐµÑÑÐ¸Ñ Ð´Ð»Ñ bzr-0.91, 2007-08 Ðведение ======== ÐÑли Ð²Ñ Ñже Ð·Ð½Ð°ÐºÐ¾Ð¼Ñ Ñ ÑаÑпÑеделеннÑми ÑиÑÑемами конÑÑÐ¾Ð»Ñ Ð²ÐµÑÑий, Ñо можеÑе ÑÑÐ°Ð·Ñ Ð¿ÐµÑейÑи к "ÐÑедÑÑавлÑемÑÑ Bazaar". ÐÑли, Ñ Ð´ÑÑгой ÑÑоÑонÑ, Ð²Ñ Ð·Ð½Ð°ÐºÐ¾Ð¼Ñ Ñ ÑиÑÑемами конÑÑÐ¾Ð»Ñ Ð²ÐµÑÑий, но не Ð·Ð½Ð°ÐºÐ¾Ð¼Ñ Ñ ÑаÑпÑеделеннÑми ÑиÑÑемами, Ñогда ÑÑÐ¾Ð¸Ñ Ð½Ð°ÑаÑÑ Ñ "Чем оÑлиÑаÑÑÑÑ ÑаÑпÑеделеннÑе ÑиÑÑемÑ". ÐнаÑе, возÑмиÑе коÑе или Ñай, ÑаÑположиÑеÑÑ Ð¿Ð¾Ñдобнее и пÑодолжим ÑÑение. ÐазнаÑение конÑÑÐ¾Ð»Ñ Ð²ÐµÑÑий ========================== ÐÑÑÑ ÑанÑÑ, ÑÑо Ð²Ñ Ñже ÑабоÑали Ñ ÐºÐ°ÐºÐ¸Ð¼Ð¸-либо ÑекÑÑовÑми даннÑми -- иÑÑ Ð¾Ð´Ð½Ð¸ÐºÐ°Ð¼Ð¸ пÑогÑамм, Web-ÑайÑами, или конÑигÑÑаÑионнÑми Ñайлами Ñ ÐºÐ¾ÑоÑÑми имеÑÑ Ð´ÐµÐ»Ð¾ админиÑÑÑаÑоÑÑ ÑиÑÑем Unix в /etc. Также еÑÑÑ Ñ Ð¾ÑоÑие ÑанÑÑ, ÑÑо Ð²Ñ Ð´ÐµÐ»Ð°Ð»Ð¸ оÑибки, коÑоÑÑе вÑзÑвали поÑом глÑбокое Ñожаление. Ðозможно Ð²Ñ Ñдалили конÑигÑÑаÑионнÑй Ñайл Ð´Ð»Ñ Ð²Ð°Ñего поÑÑового ÑеÑвеÑа, или повÑедили иÑÑ Ð¾Ð´Ð½Ñй код лÑбимого пÑоекÑа. Ðе важно ÑÑо конкÑеÑно ÑлÑÑилоÑÑ, но Ð²Ñ Ð¿ÑоÑÑо Ñдалили важнÑÑ Ð¸Ð½ÑоÑмаÑÐ¸Ñ ÐºÐ¾ÑоÑÑÑ Ð²Ñ Ð±ÐµÐ·Ð½Ð°Ð´ÐµÐ¶Ð½Ð¾ Ñ Ð¾Ñели Ð±Ñ Ð²ÐµÑнÑÑÑ. ÐÑли Ñакое когда либо ÑлÑÑалоÑÑ Ñ Ð²Ð°Ð¼Ð¸, Ñо Ð²Ñ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ гоÑÐ¾Ð²Ñ Ð´Ð»Ñ Bazaar. СиÑÑÐµÐ¼Ñ ÐºÐ¾Ð½ÑÑÐ¾Ð»Ñ Ð²ÐµÑÑий, Ñакие как Bazaar даÑÑ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ÑÑÑ Ð¾ÑÑлеживаÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð´Ð»Ñ ÐºÐ°Ñалога, коÑоÑÑй они изменÑÑÑ Ð² неÑÑо более Ñложное, ÑÑо назÑваеÑÑÑ **веÑка**. ÐеÑка не ÑолÑко ÑÐ¾Ñ ÑанÑÐµÑ Ñо как каÑалог вÑглÑÐ´Ð¸Ñ Ð² даннÑй моменÑ, но Ñакже как он вÑглÑдел в ÑазлиÑнÑе моменÑÑ Ð² пÑоÑлом. ÐаÑем, когда Ð²Ñ ÑделаеÑе ÑÑо-Ñо, ÑÑо Ð±Ñ Ð²Ñ Ð½Ðµ Ñ Ð¾Ñели делаÑÑ, Ð²Ñ ÑможеÑе воÑÑÑановиÑÑ ÐºÐ°Ñалог в Ñом виде как он вÑглÑдел в какой-Ñо Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð² пÑоÑлом. СиÑÑÐµÐ¼Ñ ÐºÐ¾Ð½ÑÑÐ¾Ð»Ñ Ð²ÐµÑÑий даÑÑ Ð¿Ð¾Ð»ÑзоваÑелÑм возможноÑÑÑ ÑÐ¾Ñ ÑанÑÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð½Ð° веÑке "ÑикÑиÑÑÑ **ÑевизиÑ**". Ð¡Ð¾Ð·Ð´Ð°Ð½Ð½Ð°Ñ ÑÐµÐ²Ð¸Ð·Ð¸Ñ ÑакÑиÑеÑки ÑвлÑеÑÑÑ Ñводкой изменений, коÑоÑÑе бÑли ÑÐ´ÐµÐ»Ð°Ð½Ñ Ñ Ð¿Ð¾Ñледнего моменÑа когда деÑево бÑло ÑÐ¾Ñ Ñанено. ÐÑи Ñевизии имеÑÑ Ñакже и дÑÑгое назнаÑение. ÐапÑимеÑ, можно комменÑиÑоваÑÑ Ñевизии, запиÑав, ÑÑо знаÑÐ¸Ñ Ð´Ð°Ð½Ð½Ñй Ð½Ð°Ð±Ð¾Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹, ÑеÑез необÑзаÑелÑнÑÑ Ð·Ð°Ð¿Ð¸ÑÑ Ð² жÑÑнале. РеалÑнÑе запиÑи в жÑÑнале могÑÑ Ð±ÑÑÑ Ð¿Ð¾Ñ Ð¾Ð¶Ð¸ на "ÐÑпÑавлен Web-Ñаблон Ð´Ð»Ñ Ð·Ð°ÐºÑÑÑÐ¸Ñ ÑаблиÑÑ" и "Ðобавлена поддеÑжка SFTP. ÐÑпÑавлен #595" ÐÑ Ñ Ñаним ÑÑÐ¾Ñ Ð¶ÑÑнал, ÑÑо Ð±Ñ Ð¿Ð¾Ð·Ð¶Ðµ, в ÑлÑÑае ÐºÐ°ÐºÐ¸Ñ -либо пÑоблем Ñ SFTP, можно бÑло опÑеделиÑÑ ÐºÐ¾Ð³Ð´Ð° могла пÑоизойÑи пÑоблема. Чем оÑлиÑаÑÑÑÑ ÑаÑпÑеделеннÑе ÑиÑÑÐµÐ¼Ñ ------------------------------------- Ðногие ÑиÑÑÐµÐ¼Ñ ÐºÐ¾Ð½ÑÑÐ¾Ð»Ñ Ð²ÐµÑÑий Ñ ÑанÑÑ Ð´Ð°Ð½Ð½Ñе на ÑеÑвеÑÐ°Ñ . ÐÑли кÑо-Ñо Ñ Ð¾ÑÐµÑ ÑабоÑаÑÑ Ñ ÐºÐ¾Ð´Ð¾Ð¼, коÑоÑÑй Ñ ÑаниÑÑÑ Ð² ÑиÑÑеме Ñогда ÐµÐ¼Ñ Ð½Ñжно ÑÑÑановиÑÑ Ñоединение Ñ ÑеÑвеÑом и "ÑоздаÑÑ ÑабоÑÑÑ ÐºÐ¾Ð¿Ð¸Ñ" кода. ÐÑи ÑÑом ÑоздаеÑÑÑ ÐºÐ°Ñалог в коÑоÑом можно менÑÑÑ ÑÐ°Ð¹Ð»Ñ Ð¸ заÑем ÑикÑиÑоваÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ. ÐÐ»Ð¸ÐµÐ½Ñ ÑиÑÑÐµÐ¼Ñ Ð·Ð°Ñем ÑоединÑеÑÑÑ Ñ ÑеÑвеÑом ÑиÑÑÐµÐ¼Ñ Ð¸ ÑÐ¾Ñ ÑанÑÐµÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ. ÐÑÐ¾Ñ Ð¼ÐµÑод извеÑÑен как ÑенÑÑÐ°Ð»Ð¸Ð·Ð¾Ð²Ð°Ð½Ð½Ð°Ñ Ð¼Ð¾Ð´ÐµÐ»Ñ. ЦенÑÑÐ°Ð»Ð¸Ð·Ð¾Ð²Ð°Ð½Ð½Ð°Ñ Ð¼Ð¾Ð´ÐµÐ»Ñ Ð¼Ð¾Ð¶ÐµÑ Ð¸Ð¼ÐµÑÑ Ð½ÐµÐºÐ¾ÑоÑÑе недоÑÑаÑки. ЦенÑÑÐ°Ð»Ð¸Ð·Ð¾Ð²Ð°Ð½Ð½Ð°Ñ ÑиÑÑема ÑÑебÑÐµÑ Ð½Ð°Ð»Ð¸ÑÐ¸Ñ ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ñ ÑеÑвеÑом Ð´Ð»Ñ Ð»ÑбÑÑ Ð´ÐµÐ¹ÑÑвий по конÑÑÐ¾Ð»Ñ Ð²ÐµÑÑий. ÐÑо Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¿ÑоблемаÑиÑнÑм еÑли ÑеÑÐ²ÐµÑ Ð½Ð°Ñ Ð¾Ð´Ð¸ÑÑÑ Ð½Ð° дÑÑгой маÑине в инÑеÑнеÑе, а ÐºÐ»Ð¸ÐµÐ½Ñ - неÑ. Ðли, Ñ Ñже, ÐºÐ»Ð¸ÐµÐ½Ñ **в** инÑеÑнеÑе, а ÑеÑÐ²ÐµÑ - неÑ. РаÑпÑеделеннÑе ÑиÑÑÐµÐ¼Ñ ÐºÐ¾Ð½ÑÑÐ¾Ð»Ñ Ð²ÐµÑÑий Ð¾Ð±Ñ Ð¾Ð´ÑÑ ÑÑÑ Ð¿ÑÐ¾Ð±Ð»ÐµÐ¼Ñ ÑÐ¾Ñ ÑанÑÑ Ð²ÐµÑки на Ñой же маÑине на коÑоÑой Ð½Ð°Ñ Ð¾Ð´Ð¸ÑÑÑ ÐºÐ»Ð¸ÐµÐ½Ñ. Ð ÑлÑÑае Ñ Bazaar, веÑка Ð½Ð°Ñ Ð¾Ð´Ð¸ÑÑÑ Ð² Ñом же Ñамом меÑÑе, ÑÑо и код Ñ ÑанÑÑийÑÑ Ð¿Ð¾Ð´ конÑÑолем веÑÑий. ÐÑо позволÑÐµÑ Ð¿Ð¾Ð»ÑзоваÑÐµÐ»Ñ ÑÐ¾Ñ ÑанÑÑÑ (**ÑикÑиÑоваÑÑ**) Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ ÐºÐ¾Ð³Ð´Ð° он Ð·Ð°Ñ Ð¾ÑÐµÑ -- даже без ÑеÑевого подклÑÑениÑ. ÐолÑзоваÑÐµÐ»Ñ Ð½Ñжен доÑÑÑп к инÑеÑнеÑÑ ÑолÑко когда он Ñ Ð¾ÑÐµÑ Ð¿Ð¾Ð»ÑÑиÑÑ Ð´Ð¾ÑÑÑп к ÑÑей-либо веÑке в дÑÑгом меÑÑе. ÐбÑее ÑÑебование, ÑÑо многие лÑди Ñ Ð¾ÑÑÑ Ð¾ÑÑлеживаÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð´Ð»Ñ ÐºÐ°Ñалога, Ñакие как Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñайлов и Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð² подкаÑÐ°Ð»Ð¾Ð³Ð°Ñ . ÐÑÑлеживаÑÑ ÑÑо "ÑÑками" ÑжаÑнÑй пÑоÑеÑÑ, коÑоÑÑй Ñо вÑеменем ÑÑановиÑÑÑ Ð³Ñомоздким. Ðо ÑÐµÑ Ð¿Ð¾Ñ Ð¿Ð¾ÐºÐ° Ð²Ñ Ð½Ðµ попÑобÑеÑе ÑиÑÑÐµÐ¼Ñ ÐºÐ¾Ð½ÑÑÐ¾Ð»Ñ Ð²ÐµÑÑий, ÑакÑÑ ÐºÐ°Ðº Bazaar. Такие инÑÑÑÑменÑÑ Ð°Ð²ÑомаÑизиÑÑÑÑ Ð¿ÑоÑеÑÑ ÑÐ¾Ñ ÑÐ°Ð½ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½ÑÑ , ÑÐ¾Ð·Ð´Ð°Ð²Ð°Ñ **Ñевизии** деÑева каÑалога когда полÑзоваÑÐµÐ»Ñ Ð·Ð°Ð¿ÑаÑÐ¸Ð²Ð°ÐµÑ ÑделаÑÑ ÑÑо. СиÑÑÐµÐ¼Ñ ÐºÐ¾Ð½ÑÑÐ¾Ð»Ñ Ð²ÐµÑÑий, Ñакие как Bazaar, могÑÑ Ð´ÐµÐ»Ð°ÑÑ Ð½Ð°Ð¼Ð½Ð¾Ð³Ð¾ болÑÑе Ñем пÑоÑÑо Ñ ÑаниÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¸ оÑменÑÑÑ Ð¾ÑибоÑнÑе дейÑÑвиÑ. ÐапÑимеÑ, Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ Bazaar ÑазÑабоÑÑики могÑÑ Ð²Ð·ÑÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ ÐºÐ¾Ð´Ð° на одной веÑке и обÑединиÑÑ Ð¸Ñ Ñо ÑвÑзанной веÑкой -- даже еÑли ÑÑи Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñ ÑанÑÑÑÑ Ð½Ð° веÑке коÑоÑÑÑ Ñоздал кÑо-Ñо дÑÑгой. ÐÑо позволÑÐµÑ ÑазÑабоÑÑикам ÑоÑÑÑдниÑаÑÑ Ð±ÐµÐ· Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ÑÑи оÑкÑÑваÑÑ Ð´Ð¾ÑÑÑп на запиÑÑ Ðº ÑепозиÑоÑиÑ. Bazaar Ð¿Ð¾Ð¼Ð½Ð¸Ñ ''пÑедков'' Ñевизии: пÑедÑдÑÑие Ñевизии на коÑоÑÑÑ Ð¾Ñнована ÑекÑÑÐ°Ñ ÑевизиÑ. Ðдна ÑÐµÐ²Ð¸Ð·Ð¸Ñ Ð¼Ð¾Ð¶ÐµÑ Ð¸Ð¼ÐµÑÑ Ð±Ð¾Ð»ÑÑе одного пÑÑмого поÑомка, каждÑй из коÑоÑÑÑ Ñо Ñвоими изменениÑми, ÑÑо пÑедÑÑавлÑÐµÑ Ð´Ð¸Ð²ÐµÑгенÑÐ¸Ñ Ð² ÑволÑÑии деÑева. Создание веÑок в Bazaar позволÑÐµÑ Ð½ÐµÑколÑким лÑдÑм ÑоÑÑÑдниÑаÑÑ Ð² ÑволÑÑии пÑоекÑа, без Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ÑÑи ÑабоÑаÑÑ Ð¶ÐµÑÑко по Ñагам. Создание веÑок Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¿Ð¾Ð»ÐµÐ·Ð½Ñм даже Ð´Ð»Ñ Ð¾Ð´Ð½Ð¾Ð³Ð¾ ÑазÑабоÑÑика. ÐÑедÑÑавлÑемÑÑ Bazaar ===================== Bazaar ÑÑÑÐ°Ð½Ð°Ð²Ð»Ð¸Ð²Ð°ÐµÑ ÐµÐ´Ð¸Ð½ÑÑвеннÑÑ Ð½Ð¾Ð²ÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ, **bzr**. ÐÑе возможноÑÑи пÑедоÑÑавлÑÑÑÑÑ ÑеÑез под-ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ ÑÑой командÑ. ÐÑ Ð¼Ð¾Ð¶ÐµÑе пÑоÑмоÑÑеÑÑ ÐºÑаÑкÑÑ ÑпÑÐ°Ð²ÐºÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¾Ð¹ ``bzr help``. ÐекоÑоÑÑе идеи гÑÑппиÑÑÑÑÑÑ Ð¿Ð¾ Ñемам, иÑполÑзÑйÑе ``bzr help topics`` Ð´Ð»Ñ ÑпиÑка доÑÑÑпнÑÑ Ñем. Ðдна из ÑÑнкÑий ÑиÑÑÐµÐ¼Ñ ÐºÐ¾Ð½ÑÑÐ¾Ð»Ñ Ð²ÐµÑÑий -- оÑÑлеживаÑÑ ÐºÑо Ñделал изменениÑ. Ð ÑаÑпÑеделеннÑÑ ÑиÑÑÐµÐ¼Ð°Ñ Ð´Ð»Ñ ÑÑого ÑÑебÑеÑÑÑ Ð¸Ð´ÐµÐ½ÑиÑиÑиÑоваÑÑ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ авÑоÑа ÑникалÑно в глобалÑном плане. ÐолÑÑинÑÑво лÑдей Ñже имеÑÑ Ñакой иденÑиÑикаÑоÑ: email адÑеÑ. Bazaar доÑÑаÑоÑно Ñмен, ÑÑо Ð±Ñ Ð°Ð²ÑомаÑиÑеÑки ÑоздаваÑÑ email адÑÐµÑ Ð¸Ð· ÑекÑÑего имени и адÑеÑа Ñ Ð¾ÑÑа. ÐÑли вам не нÑавиÑÑÑ Ð¿Ñедположение коÑоÑое Ð´ÐµÐ»Ð°ÐµÑ Bazaar Ð²Ñ ÑможеÑе вÑбÑаÑÑ Ð¸Ð· ÑÑÐµÑ Ð¾Ð¿Ñий: #. УÑÑановиÑÑ email адÑÐµÑ ÑеÑез ``bzr whoami``. ÐÑо наиболее пÑоÑÑой пÑÑÑ. ЧÑо Ð±Ñ ÑÑÑановиÑÑ Ñакой глобалÑнÑй иденÑиÑикаÑоÑ, иÑполÑзÑйÑе:: % bzr whoami "ÐаÑе ÐÐ¼Ñ <email@example.com>" ÐÑли Ð²Ñ Ñ Ð¾ÑиÑе иÑполÑзоваÑÑ ÑазнÑе адÑеÑа Ð´Ð»Ñ ÑазнÑÑ Ð²ÐµÑок, Ñо зайдиÑе в каÑалог Ñ Ð²ÐµÑкой и иÑполÑзÑйÑе:: % bzr whoami --branch "ÐаÑе ÐÐ¼Ñ <email@example.com>" #. УÑÑановиÑÑ email адÑÐµÑ Ð² ``~/.bazaar/bazaar.conf`` [1]_, добавив ÑледÑÑÑие ÑÑÑоÑки. ÐамеÑÑÑе, ÑÑо ``[DEFAULT]`` завиÑÐ¸Ñ Ð¾Ñ ÑегиÑÑÑа Ñимволов:: [DEFAULT] email=ÐаÑе ÐÐ¼Ñ <email@isp.com> Ðак и вÑÑе Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе пеÑеопÑеделиÑÑ ÑÑи ÑÑÑановки Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð¹ веÑки Ñоздав ÑекÑÐ¸Ñ Ð´Ð»Ñ Ð²ÐµÑки в ``~/.bazaar/locations.conf`` и добавив ÑледÑÑÑие ÑÑÑоÑки:: [/пÑÑÑ/к/веÑке] email=ÐаÑе ÐÐ¼Ñ <email@isp.com> #. ÐеÑеопÑеделиÑÑ Ð´Ð²Ð° пÑедÑдÑÑÐ¸Ñ ÑпоÑоба, ÑÑÑановив Ð²Ð°Ñ Ð¿Ð¾Ð»Ð½Ñй email адÑÐµÑ Ð² глобалÑнÑÑ Ð¿ÐµÑеменнÑÑ ÑÑÐµÐ´Ñ ``$BZR_EMAIL``, или ``$EMAIL`` (``$BZR_EMAIL`` Ð¸Ð¼ÐµÐµÑ Ð±Ð¾Ð»ÑÑий пÑиоÑиÑеÑ). .. [1] ÐÐ»Ñ Windows полÑзоваÑелÑÑкие ÑÐ°Ð¹Ð»Ñ ÐºÐ¾Ð½ÑигÑÑаÑии могÑÑ Ð±ÑÑÑ Ð½Ð°Ð¹Ð´ÐµÐ½Ñ Ð² каÑалоге Ñ Ð´Ð°Ð½Ð½Ñми пÑиложений. Таким обÑазом вмеÑÑо ``~/.bazaar/branch.conf`` конÑигÑÑаÑÐ¸Ñ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð½Ð°Ð¹Ð´ÐµÐ½Ð° в: ``C:\Documents and Settings\<полÑзоваÑелÑ>\Application Data\Bazaar\2.0\branch.conf``. Там же могÑÑ Ð±ÑÑÑ Ð½Ð°Ð¹Ð´ÐµÐ½Ñ ``locations.conf``, ``ignore`` и каÑалог ``plugins``. Создаем веÑÐºÑ ============= ÐÑÑоÑÐ¸Ñ Ð¿Ð¾-ÑмолÑÐ°Ð½Ð¸Ñ Ñ ÑаниÑÑÑ Ð½Ð° веÑке в каÑалоге .bzr. РбÑдÑÑÐ¸Ñ Ð²ÐµÑÑиÑÑ Bazaar бÑдÑÑ ÑÑедÑÑва Ð´Ð»Ñ Ñ ÑÐ°Ð½ÐµÐ½Ð¸Ñ Ð¸ÑÑоÑии в оÑделÑном ÑепозиÑоÑии, коÑоÑÑй Ñакже ÑÐ¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ ÑдаленнÑм. ÐÑ Ñоздаем новÑÑ Ð²ÐµÑÐºÑ Ð²Ñполнив ``bzr init`` в Ñже Ñозданном каÑалоге:: % mkdir tutorial % cd tutorial % ls -a ./ ../ % pwd /home/mbp/work/bzr.test/tutorial % % bzr init % ls -aF ./ ../ .bzr/ % Ðак и в CVS здеÑÑ ÑÑи клаÑÑа Ñайлов: неизвеÑÑнÑе, игноÑиÑÑемÑе и под конÑÑолем веÑÑий. Ðоманда **add** ÑÑÐ°Ð²Ð¸Ñ Ñайл под конÑÑÐ¾Ð»Ñ Ð²ÐµÑÑий, Ñ.е. Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð² нем бÑдÑÑ Ð·Ð°Ð¿Ð¸ÑÑваÑÑÑÑ ÑиÑÑемой:: % echo 'hello world' > hello.txt % bzr status unknown: hello.txt % bzr add hello.txt added hello.txt % bzr status added: hello.txt ÐÑли Ð²Ñ Ð´Ð¾Ð±Ð°Ð²Ð¸Ð»Ð¸ не ÑÐ¾Ñ Ñайл пÑоÑÑо ÑделайÑе ``bzr remove``, ÑÑо Ð±Ñ ÑделаÑÑ ÐµÐ³Ð¾ опÑÑÑ Ð½ÐµÐ¸Ð·Ð²ÐµÑÑнÑм. РабоÑÐ°Ñ ÐºÐ¾Ð¿Ð¸Ñ Ñайла не бÑÐ´ÐµÑ Ñдалена в ÑÑом ÑлÑÑае, Ñ Ð¾ÑÑ Ð¾Ð½Ð° Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ñдалена в дÑÑÐ³Ð¸Ñ ÑлÑÑаÑÑ [2]_. .. [2] ``bzr remove`` ÑÐ´Ð°Ð»Ð¸Ñ ÑабоÑÑÑ ÐºÐ¾Ð¿Ð¸Ñ ÐµÑли она Ð½Ð°Ñ Ð¾Ð´Ð¸ÑÑÑ Ð¿Ð¾Ð´ конÑÑолем веÑÑий, но не Ð¸Ð¼ÐµÐµÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹ Ñ Ð¿Ð¾Ñледней заÑикÑиÑованной веÑÑии. ÐÑ Ð¼Ð¾Ð¶ÐµÑе оÑÑавиÑÑ Ñайл Ñказав опÑÐ¸Ñ ``--keep`` Ð´Ð»Ñ ``bzr remove``, или ÑдалиÑÑ Ñ Ð¾Ð¿Ñией ``--force``. РазмеÑение веÑок ================ ÐÑÑ Ð¸ÑÑоÑÐ¸Ñ Ñ ÑаниÑÑÑ Ð½Ð° веÑке, коÑоÑÐ°Ñ ÑвлÑеÑÑÑ Ð²Ñего лиÑÑ ÐºÐ°Ñалогом на диÑке ÑодеÑжаÑим ÑÐ°Ð¹Ð»Ñ ÑпÑавлениÑ. Ðо-ÑмолÑÐ°Ð½Ð¸Ñ Ð·Ð´ÐµÑÑ Ð½ÐµÑ Ð¾ÑделÑного ÑепозиÑоÑиÑ, или Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ ÐºÐ°Ðº в svn, или svk. Ðо Ð¶ÐµÐ»Ð°Ð½Ð¸Ñ Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе ÑоздаÑÑ ÑепозиÑоÑий (Ñм. ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ ``bzr init-repo``). ÐÑо можно ÑделаÑÑ Ð² ÑлÑÑае оÑÐµÐ½Ñ Ð±Ð¾Ð»ÑÑÐ¸Ñ Ð²ÐµÑок, или болÑÑого колиÑеÑÑва веÑок Ð´Ð»Ñ Ð¿ÑоекÑа ÑÑеднего ÑазмеÑа. ÐÑ Ð¾Ð±ÑÑно обÑаÑаемÑÑ Ðº веÑкам на наÑем компÑÑÑеÑе пÑоÑÑо пеÑедав Ð¸Ð¼Ñ ÐºÐ°Ñалога ÑодеÑжаÑего веÑкÑ. bzr Ñакже поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð´Ð¾ÑÑÑп к веÑкам ÑеÑез HTTP и SFTP, напÑимеÑ:: % bzr log http://bazaar.launchpad.net/~bzr-pqm/bzr/bzr.dev/ % bzr log sftp://bazaar.launchpad.net/~bzr-pqm/bzr/bzr.dev/ УÑÑановив Ð´Ð»Ñ bzr Ð¿Ð»Ð°Ð³Ð¸Ð½Ñ Ð¼Ð¾Ð¶Ð½Ð¾ Ñакже оÑÑÑеÑÑвлÑÑÑ Ð´Ð¾ÑÑÑп к веÑкам Ñ Ð¸ÑполÑзованием rsync. СмоÑÑиÑе ÑекÑÐ¸Ñ `ÐÑбликаÑÐ¸Ñ Ð²ÐµÑки`_ ÑÑо Ð±Ñ Ð¿Ð¾Ð»ÑÑиÑÑ Ð±Ð¾Ð»ÑÑе инÑоÑмаÑии о Ñом как помеÑÑиÑÑ ÑÐ²Ð¾Ñ Ð²ÐµÑÐºÑ Ð² нÑжное меÑÑо. ÐÑоÑмоÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹ ================== Ðак ÑолÑко Ð²Ñ Ð·Ð°ÐºÐ¾Ð½Ñили ÑÐ²Ð¾Ñ ÑабоÑÑ, Ð²Ñ Ð·Ð°Ñ Ð¾ÑиÑе **заÑикÑиÑоваÑÑ** ее в иÑÑоÑии Ñевизий. ХоÑоÑÐ°Ñ Ð¿ÑакÑика ÑикÑиÑоваÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð´Ð¾ÑÑаÑоÑно ÑаÑÑо: когда заÑабоÑала Ð½Ð¾Ð²Ð°Ñ ÑÑнкÑионалÑноÑÑÑ, иÑпÑавлена оÑибка, или ÑлÑÑÑен код, или докÑменÑаÑиÑ. ÐÑи ÑÑом ÑÑÐ¾Ð¸Ñ Ð¿ÑовеÑиÑÑ, ÑÑо код компилиÑÑеÑÑÑ Ð¸ пÑÐ¾Ñ Ð¾Ð´Ð¸Ñ Ð²Ñе ÑеÑÑÑ Ð¿ÐµÑед ÑикÑаÑией, ÑÑо Ð±Ñ Ð±ÑÑÑ ÑвеÑеннÑм, ÑÑо ÐºÐ°Ð¶Ð´Ð°Ñ ÑÐµÐ²Ð¸Ð·Ð¸Ñ Ð² Ñ Ð¾ÑоÑем ÑоÑÑоÑнии. Также можно пÑоÑмоÑÑеÑÑ Ñвои изменениÑ, Ð´Ð»Ñ ÑвеÑенноÑÑи, ÑÑо Ð²Ñ ÑикÑиÑÑеÑе именно Ñо, ÑÑо Ñ Ð¾Ñели и полÑÑиÑÑ ÑÐ°Ð½Ñ Ð¿ÑовеÑиÑÑ ÑÐ²Ð¾Ñ ÑабоÑÑ Ð¿ÐµÑед Ñем как запиÑаÑÑ ÐµÐµ поÑÑоÑнно. Ðве ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ bzr оÑобенно Ð¿Ð¾Ð»ÐµÐ·Ð½Ñ Ð·Ð´ÐµÑÑ: **status** и **diff**. bzr status ---------- Ðоманда **status** показÑÐ²Ð°ÐµÑ ÐºÐ°ÐºÐ¸Ðµ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð±Ñли ÑÐ´ÐµÐ»Ð°Ð½Ñ Ð² ÑабоÑем каÑалоге Ñ Ð¼Ð¾Ð¼ÐµÐ½Ñа поÑледней Ñевизии:: % bzr status modified: foo ``bzr status`` ÑкÑÑÐ²Ð°ÐµÑ "неинÑеÑеÑнÑе" ÑÐ°Ð¹Ð»Ñ ÐºÐ¾ÑоÑÑе, либо не менÑлиÑÑ, либо игноÑиÑÑÑÑÑÑ. Также команде status могÑÑ Ð±ÑÑÑ Ð¿ÐµÑÐµÐ´Ð°Ð½Ñ Ð½ÐµÐ¾Ð±ÑзаÑелÑнÑе имена Ñайлов, или каÑалогов Ð´Ð»Ñ Ð¿ÑовеÑки. bzr diff -------- Ðоманда **diff** показÑÐ²Ð°ÐµÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð² ÑекÑÑе Ñайлов в ÑÑандаÑÑном ÑоÑмаÑе diff. ÐÑвод ÑÑой ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¿ÐµÑедан дÑÑгим командам, Ñаким как ''patch'', ''diffstat'', ''filterdiff'' и ''colordiff'':: % bzr diff === added file 'hello.txt' --- hello.txt 1970-01-01 00:00:00 +0000 +++ hello.txt 2005-10-18 14:23:29 +0000 @@ -0,0 +1,1 @@ +hello world С опÑией ``-r`` деÑево Ñайлов ÑÑавниваеÑÑÑ Ñ Ñанней Ñевизией, или показÑваÑÑÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñ Ð´Ð²ÑÐ¼Ñ ÑевизиÑми:: % bzr diff -r 1000.. # Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð½Ð°ÑÐ¸Ð½Ð°Ñ Ñ r1000 % bzr diff -r 1000..1100 # Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ c 1000 до 1100 ÐпÑÐ¸Ñ ``--diff-options`` говоÑÐ¸Ñ bzr запÑÑÑиÑÑ Ð²Ð½ÐµÑнÑÑ Ð¿ÑогÑÐ°Ð¼Ð¼Ñ diff, пеÑедав ей опÑии. ÐапÑимеÑ:: % bzr diff --diff-options --side-by-side foo ÐекоÑоÑÑе пÑоекÑÑ Ð¿ÑедпоÑиÑаÑÑ Ð¿Ð¾ÐºÐ°Ð·ÑваÑÑ Ð¿ÑеÑикÑÑ Ð² наÑале ÑекÑÑа изменений Ð´Ð»Ñ ÑÑаÑÑÑ (old) и новÑÑ (new) Ñайлов. ÐпÑÐ¸Ñ ``--prefix`` Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¸ÑполÑзована Ð´Ð»Ñ ÑÑÑановки Ñакого пÑеÑикÑа. ÐлÑÑ Ðº ÑÑÐ¾Ð¼Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð° ``bzr diff -p1`` вÑÐ²Ð¾Ð´Ð¸Ñ Ð¿ÑеÑикÑÑ Ð² ÑоÑме коÑоÑÐ°Ñ Ð¿Ð¾Ð´Ñ Ð¾Ð´Ð¸Ñ Ð´Ð»Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ ``patch -p1``. ФикÑаÑÐ¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹ ================== Ðогда ÑоÑÑоÑние ÑабоÑего деÑева Ð¿Ð¾Ð´Ñ Ð¾Ð´Ð¸Ñ Ð´Ð»Ñ ÑÐ¾Ñ ÑÐ°Ð½ÐµÐ½Ð¸Ñ Ð¾Ð½Ð¾ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ **заÑикÑиÑовано** на веÑке, ÑÑо ÑоздаÑÑ Ð½Ð¾Ð²ÑÑ ÑÐµÐ²Ð¸Ð·Ð¸Ñ ÑодеÑжаÑÑÑ Ñнимок ÑоÑÑоÑÐ½Ð¸Ñ Ð´ÐµÑева. bzr commit ---------- Ðоманде **commit** можно пеÑедаÑÑ ÑообÑение опиÑÑваÑÑее Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð² Ñевизии. Ðна Ñакже запиÑÑÐ²Ð°ÐµÑ Ð¸Ð´ÐµÐ½ÑиÑикаÑÐ¾Ñ Ð¿Ð¾Ð»ÑзоваÑелÑ, ÑекÑÑее вÑÐµÐ¼Ñ Ð¸ вÑеменнÑÑ Ð·Ð¾Ð½Ñ, плÑÑ ÑпиÑок измененнÑÑ Ñайлов и Ð¸Ñ ÑодеÑжимого. СообÑение опиÑÑваÑÑее Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¾Ð¿ÑеделÑеÑÑÑ ÑеÑез опÑÐ¸Ñ ``-m``, или ``--message``. Ðожно Ñакже вводиÑÑ ÑообÑÐµÐ½Ð¸Ñ ÑоÑÑоÑÑие из неÑколÑÐºÐ¸Ñ ÑÑÑок; в болÑÑинÑÑве оболоÑек Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе ÑделаÑÑ ÑÑо оÑÑавив оÑкÑÑÑÑÑ ÐºÐ°Ð²ÑÑÐºÑ Ð² конÑе ÑÑÑоки. :: % bzr commit -m "добавлен пеÑвÑй Ñайл" Также можно иÑполÑзоваÑÑ Ð¾Ð¿ÑÐ¸Ñ ``-F``, Ð´Ð»Ñ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ ÑообÑÐµÐ½Ð¸Ñ Ð¸Ð· Ñайла. ÐекоÑоÑÑе лÑди делаÑÑ Ð·Ð°Ð¼ÐµÑки изменений во вÑÐµÐ¼Ñ ÑабоÑÑ Ð½Ð°Ð´ ними, а заÑем пÑоÑмаÑÑиваÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ, ÑÑо Ð±Ñ Ð±ÑÑÑ ÑвеÑеннÑми, ÑÑо они Ñделали Ñо, ÑÑо Ñ Ð¾Ñели ÑделаÑÑ. (ÐÑÐ¾Ñ Ñайл Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ñакже полезен когда Ð²Ñ Ð²Ð¾Ð·Ð²ÑаÑаеÑеÑÑ Ðº Ñвоей ÑабоÑе поÑле пеÑеÑÑва.) СообÑение из ÑекÑÑового ÑедакÑоÑа ================================= ÐÑли Ð²Ñ Ð½Ðµ иÑполÑзÑеÑе опÑии ``-m`` и ``-F`` Ñогда bzr оÑкÑÐ¾ÐµÑ ÑекÑÑовÑй ÑедакÑÐ¾Ñ Ð´Ð»Ñ Ð²Ð²Ð¾Ð´Ð° ÑообÑениÑ. Ðакой ÑедакÑÐ¾Ñ Ð·Ð°Ð¿ÑÑкаÑÑ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð½Ð°ÑÑÑоено ÑеÑез пеÑеменнÑе ÑÑÐµÐ´Ñ ``$VISUAL``, или ``$EDITOR``, коÑоÑÑе могÑÑ Ð±ÑÑÑ Ð¿ÐµÑеопÑÐµÐ´ÐµÐ»ÐµÐ½Ñ Ð¾Ð¿Ñией ``editor`` в Ñайле ``~/.bazaar/bazaar.conf``; опÑÐ¸Ñ ``$BZR_EDITOR`` пеÑеопÑеделÑÐµÑ Ð²Ñе опиÑаннÑе вÑÑе наÑÑÑойки. ÐÑли Ð²Ñ Ð²ÑÑ Ð¾Ð´Ð¸Ñе из ÑедакÑоÑа без ÐºÐ°ÐºÐ¸Ñ -либо изменений, Ñо ÑикÑаÑÐ¸Ñ Ð±ÑÐ´ÐµÑ Ð¿ÑеÑвана. Файл коÑоÑÑй оÑкÑÑваеÑÑÑ Ð² ÑедакÑоÑе ÑодеÑÐ¶Ð¸Ñ Ð³Ð¾ÑизонÑалÑнÑÑ Ð»Ð¸Ð½Ð¸Ñ. ЧаÑÑÑ Ñайла ниже ÑÑой линии вклÑÑена ÑолÑко Ð´Ð»Ñ Ð¸Ð½ÑоÑмаÑии и не бÑÐ´ÐµÑ ÑаÑÑÑÑ ÑообÑÐµÐ½Ð¸Ñ Ð¾Ð± изменениÑÑ . Ðиже линии показÑваеÑÑÑ ÑпиÑок Ñайлов коÑоÑÑе бÑли измененÑ. ÐÐ»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ ÑообÑÐµÐ½Ð¸Ñ Ð²Ð°Ð¼ надо напиÑаÑÑ Ñвое ÑообÑение вÑÑе линии, ÑÐ¾Ñ ÑаниÑÑ ÐµÐ³Ð¾ и вÑйÑи из ÑедакÑоÑа. ÐÑли Ð²Ñ Ñ Ð¾ÑиÑе ÑвидеÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ ÑодеÑжимого Ñайлов коÑоÑÑе бÑдÑÑ Ð·Ð°ÑикÑиÑованÑ, пÑи ÑедакÑиÑовании ÑообÑÐµÐ½Ð¸Ñ Ð²Ð°Ð¼ нÑжно ÑказаÑÑ Ð¾Ð¿ÑÐ¸Ñ ``--show-diff`` Ð´Ð»Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ ``commit``. ÐÑа опÑÐ¸Ñ Ð´Ð¾Ð±Ð°Ð²Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð² Ñайл коÑоÑÑй бÑÐ´ÐµÑ Ð¾ÑкÑÑÑ Ð² ÑедакÑоÑе ниже линии и ÑпиÑка измененнÑÑ Ñайлов. ÐÑо знаÑиÑ, ÑÑо Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе ÑиÑаÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿Ñи ÑедакÑиÑовании ÑообÑениÑ, но они не бÑдÑÑ Ð²ÐºÐ»ÑÑÐµÐ½Ñ Ð² ÑообÑение когда Ð²Ñ Ð·Ð°ÐºÐ¾Ð½ÑиÑе ÑедакÑиÑоваÑÑ. ÐÑли Ð²Ñ Ñ Ð¾ÑиÑе, ÑÑо Ð±Ñ ÑаÑÑи изменений бÑли вклÑÑÐµÐ½Ñ Ð² ÑообÑение Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе ÑкопиÑоваÑÑ Ð¸ вÑÑавиÑÑ Ð¸Ñ Ð²ÑÑе огÑаниÑиÑелÑной линии. ÐÑбоÑоÑÐ½Ð°Ñ ÑикÑаÑÐ¸Ñ ------------------- ÐÑли Ð²Ñ Ð¿ÐµÑедадиÑе ÑпиÑок имен Ñайлов, или каÑалогов поÑле ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ commit, Ñо бÑдÑÑ Ð·Ð°ÑикÑиÑÐ¾Ð²Ð°Ð½Ñ ÑолÑко Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð¿ÐµÑеданнÑÑ Ð¾Ð±ÑекÑов. ÐапÑимеÑ:: % bzr commit -m "иÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð´Ð¾ÐºÑменÑаÑии" commit.py Ðо ÑмолÑÐ°Ð½Ð¸Ñ bzr вÑегда ÑикÑиÑÑÐµÑ Ð²Ñе Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð´ÐµÑева, даже еÑли запÑÑен из подкаÑалога. ЧÑо Ð±Ñ Ð·Ð°ÑикÑиÑоваÑÑ ÑолÑко Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¾Ñ ÑекÑÑего каÑалога и ниже, иÑполÑзÑйÑе:: % bzr commit . Удаление не заÑикÑиÑованнÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹ ===================================== ÐÑли Ð²Ñ Ñделали какие-либо Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¸ не Ñ Ð¾ÑиÑе оÑÑавлÑÑÑ Ð¸Ñ , иÑполÑзÑйÑе ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ **revert**, ÑÑо Ð±Ñ Ð²ÐµÑнÑÑÑÑ Ðº ÑоÑÑоÑÐ½Ð¸Ñ Ð¿ÑедÑдÑÑей Ñевизии. ХоÑоÑÐ°Ñ Ð¸Ð´ÐµÑ, иÑполÑзоваÑÑ ÑнаÑала ``bzr diff`` Ð´Ð»Ñ Ð¿ÑоÑмоÑÑа изменений. Ðо ÑмолÑÐ°Ð½Ð¸Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð° revert оÑменÑÐµÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð½Ð° вÑем деÑеве, но еÑли ей пеÑÐµÐ´Ð°Ð½Ñ Ð¸Ð¼ÐµÐ½Ð° Ñайлов, или каÑалогов Ñо бÑдÑÑ Ð·Ð°ÑÑонÑÑÑ ÑолÑко они. ``bzr revert`` Ñакже оÑиÑÐ°ÐµÑ ÑпиÑок Ñевизий ожидаÑÑÐ¸Ñ Ð¾Ð±ÑединениÑ. ÐгноÑиÑование Ñайлов ==================== Ðногие деÑевÑÑ Ñ Ð¸ÑÑ Ð¾Ð´Ð½Ñм кодом ÑодеÑÐ¶Ð°Ñ ÑÐ°Ð¹Ð»Ñ ÐºÐ¾ÑоÑÑе не нÑжно Ñ ÑаниÑÑ Ð¿Ð¾Ð´ конÑÑолем веÑÑий, напÑÐ¸Ð¼ÐµÑ ÑезеÑвнÑе ÑÐ°Ð¹Ð»Ñ ÑекÑÑового ÑедакÑоÑа, обÑекÑнÑе ÑÐ°Ð¹Ð»Ñ Ð¸ ÑобÑаннÑе пÑогÑаммÑ. ÐÑ Ð¼Ð¾Ð¶ÐµÑе пÑоÑÑо не добавлÑÑÑ Ð¸Ñ , но они вÑегда бÑдÑÑ Ð¾Ð±Ð½Ð°ÑÑживаÑÑÑÑ ÐºÐ°Ðº неизвеÑÑнÑе. ÐÑ Ñакже можеÑе ÑказаÑÑ bzr игноÑиÑоваÑÑ Ð¸Ñ Ð´Ð¾Ð±Ð°Ð²Ð¸Ð² Ð¸Ñ Ð² Ñайл ``.bzrignore`` в коÑне ÑабоÑего деÑева. ÐÑÐ¾Ñ Ñайл ÑодеÑÐ¶Ð¸Ñ ÑпиÑок Ñаблонов Ñайлов, по Ð¾Ð´Ð½Ð¾Ð¼Ñ Ð² каждой ÑÑÑоÑке. ÐбÑÑное ÑодеÑжимое Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ñаким:: *.o *~ *.tmp *.py[co] ÐÑли Ñаблон ÑодеÑÐ¶Ð¸Ñ ÑлеÑ, Ñо он бÑÐ´ÐµÑ ÑопоÑÑавлен Ñ Ð¿Ð¾Ð»Ð½Ñм пÑÑем наÑÐ¸Ð½Ð°Ñ Ð¾Ñ ÐºÐ¾ÑÐ½Ñ ÑабоÑего деÑева; инаÑе он ÑопоÑÑавлÑеÑÑÑ ÑолÑко Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ Ñайла. Таким обÑазом пÑÐ¸Ð¼ÐµÑ Ð²ÑÑе игноÑиÑÑÐµÑ ÑÐ°Ð¹Ð»Ñ Ñ ÑаÑÑиÑением ``.o`` во вÑÐµÑ Ð¿Ð¾Ð´ÐºÐ°ÑÐ°Ð»Ð¾Ð³Ð°Ñ , но пÑÐ¸Ð¼ÐµÑ Ð½Ð¸Ð¶Ðµ игноÑиÑÑÐµÑ ÑолÑко ``config.h`` в коÑне ÑабоÑего деÑева и HTML ÑÐ°Ð¹Ð»Ñ Ð² каÑалоге ``doc/``:: ./config.h doc/*.html ÐÐ»Ñ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ ÑпиÑка Ñайлов коÑоÑÑе игноÑиÑÑÑÑÑÑ Ð¸ ÑооÑвеÑÑÑвÑÑÑÐ¸Ñ Ð¸Ð¼ Ñаблонов иÑполÑзÑйÑе ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ ``bzr ignored``:: % bzr ignored config.h ./config.h configure.in~ *~ ÐÐµÑ Ð¿Ñоблем еÑли Ñаблон Ð´Ð»Ñ Ð¸Ð³Ð½Ð¾ÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¿Ð¾Ð´Ñ Ð¾Ð´Ð¸Ñ Ð´Ð»Ñ Ñайла под конÑÑолем веÑÑий, или Ð²Ñ Ð´Ð¾Ð±Ð°Ð²Ð¸Ð»Ð¸ Ñайл коÑоÑÑй игноÑиÑÑеÑÑÑ. Ð¨Ð°Ð±Ð»Ð¾Ð½Ñ Ð½Ðµ имеÑÑ Ð½Ð¸ÐºÐ°ÐºÐ¾Ð³Ð¾ ÑÑÑекÑа на ÑÐ°Ð¹Ð»Ñ Ð¿Ð¾Ð´ конÑÑолем веÑÑий, они ÑолÑко опÑеделÑÑÑ Ð¿Ð¾ÐºÐ°Ð·ÑваÑÑÑÑ Ð½ÐµÐ¸Ð·Ð²ÐµÑÑнÑе ÑайлÑ, или пÑоÑÑо игноÑиÑÑÑÑÑÑ. Файл ``.bzrignore`` обÑÑно должен бÑÑÑ Ð¿Ð¾Ð´ конÑÑолем веÑÑий, ÑÑо Ð±Ñ Ð½Ð¾Ð²Ñе копии веÑки видели Ñакие же ÑаблонÑ:: % bzr add .bzrignore % bzr commit -m "ÐÐ¾Ð±Ð°Ð²Ð»ÐµÐ½Ñ ÑÐ°Ð±Ð»Ð¾Ð½Ñ Ð´Ð»Ñ Ð¸Ð³Ð½Ð¾ÑиÑованиÑ" ÐлобалÑнÑе ÑÐ°Ð±Ð»Ð¾Ð½Ñ Ð´Ð»Ñ Ð¸Ð³Ð½Ð¾ÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ ------------------------------------ ÐбÑÑно еÑÑÑ ÑÐ°Ð¹Ð»Ñ ÐºÐ¾ÑоÑÑе нÑжно игноÑиÑоваÑÑ Ð¸ они не ÑпеÑиÑиÑÐ½Ñ Ð´Ð»Ñ Ð¾ÑделÑнÑÑ Ð¿ÑоекÑов, а ÑкоÑее ÑпеÑиÑиÑÐ½Ñ Ð´Ð»Ñ Ð¿Ð¾Ð»ÑзоваÑелÑ. ÐапÑимеÑ, вÑеменнÑе ÑÐ°Ð¹Ð»Ñ ÑекÑÑового ÑедакÑоÑа, или пеÑÑоналÑнÑе вÑеменнÑе ÑайлÑ. ÐмеÑÑо Ñого, ÑÑо Ð±Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÑÑÑ Ð¸Ñ Ð´Ð»Ñ Ð¸Ð³Ð½Ð¾ÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð² каждом пÑоекÑе, bzr поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð³Ð»Ð¾Ð±Ð°Ð»ÑнÑй Ñайл игноÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ ``~/.bazaar/ignore`` [1]_. Ðн Ð¸Ð¼ÐµÐµÑ Ñакой же ÑинÑакÑиÑ, ÑÑо и Ñайл игноÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ пÑоекÑа. ÐÑоÑмоÑÑ Ð¸ÑÑоÑии ================ bzr log ------- Ðоманда ``bzr log`` показÑÐ²Ð°ÐµÑ ÑпиÑок пÑедÑдÑÑÐ¸Ñ Ñевизий. Ðоманда ``bzr log --forward`` Ð´ÐµÐ»Ð°ÐµÑ Ñоже Ñамое, но в Ñ ÑонологиÑеÑком поÑÑдке, показÑÐ²Ð°Ñ Ð±Ð¾Ð»ÐµÐµ поздние Ñевизии в конÑе. Ðак и ``bzr diff``, ``bzr log`` поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð¾Ð¿ÑÐ¸Ñ ``-r``:: % bzr log -r 1000.. # Ð ÐµÐ²Ð¸Ð·Ð¸Ñ 1000 и вÑе поÑле нее % bzr log -r ..1000 # ÐÑе до и вклÑÑÐ°Ñ r1000 % bzr log -r 1000..1100 # Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñ 1000 до 1100 % bzr log -r 1000 # ÐÐ·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ ÑолÑко Ð´Ð»Ñ Ñевизии 1000 СÑаÑиÑÑика веÑки ================ Ðоманда ``bzr info`` показÑÐ²Ð°ÐµÑ ÑÑммаÑнÑÑ Ð¸Ð½ÑоÑмаÑÐ¸Ñ Ð¾ ÑабоÑем деÑеве и иÑÑоÑии на веÑке. ÐаÑалоги под конÑÑолем веÑÑий ============================= bzr Ð¼Ð¾Ð¶ÐµÑ ÐºÐ¾Ð½ÑÑолиÑоваÑÑ ÑÐ°Ð¹Ð»Ñ Ð¸ каÑалоги, оÑÑÐ»ÐµÐ¶Ð¸Ð²Ð°Ñ Ð¿ÐµÑÐµÐ¸Ð¼ÐµÐ½Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¸ ÑпÑоÑÐ°Ñ Ð¸Ñ Ð¿Ð¾ÑледÑÑÑее обÑединение:: % mkdir src % echo 'int main() {}' > src/simple.c % bzr add src added src added src/simple.c % bzr status added: src/ src/simple.c Удаление Ñайлов =============== ÐÑ Ð¼Ð¾Ð¶ÐµÑе ÑдалиÑÑ Ñайл, или каÑалог из под конÑÑÐ¾Ð»Ñ Ð²ÐµÑÑий пÑоÑÑо Ñдалив Ð¸Ñ Ð¸Ð· ÑабоÑего каÑалога. ÐÑо немного оÑлиÑаеÑÑÑ Ð¾Ñ CVS, коÑоÑÐ°Ñ ÑÑебÑÐµÑ ÑÑо Ð±Ñ Ð²Ñ Ñакже Ñделали ``cvs remove``. ``bzr remove`` ÑдалÑÐµÑ Ñайл из под конÑÑÐ¾Ð»Ñ Ð²ÐµÑÑий, но Ð¼Ð¾Ð¶ÐµÑ Ð¸ не ÑдалÑÑÑ ÑабоÑÑÑ ÐºÐ¾Ð¿Ð¸Ñ Ñайла [2]_. ÐÑо Ñдобно когда Ð²Ñ Ð´Ð¾Ð±Ð°Ð²Ð¸Ð»Ð¸ не ÑÐ¾Ñ Ñайл, или ÑеÑили, ÑÑо Ñайл на Ñамом деле не должен бÑÑÑ Ð¿Ð¾Ð´ конÑÑолем веÑÑий. :: % rm -r src % bzr remove -v hello.txt ? hello.txt % bzr status removed: hello.txt src/ src/simple.c unknown: hello.txt ÐÑли Ð²Ñ Ð²Ð´ÑÑг Ñдалили не ÑÐ¾Ñ Ñайл, Ñо Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе иÑполÑзоваÑÑ ``bzr revert`` ÑÑо Ð±Ñ Ð²Ð¾ÑÑÑановиÑÑ ÐµÐ³Ð¾. ÐеÑвление ========= ЧаÑÑо вмеÑÑо Ñого ÑÑо Ð±Ñ Ð½Ð°ÑинаÑÑ Ñвой ÑобÑÑвеннÑй пÑоекÑ, Ð²Ñ Ñ Ð¾ÑиÑе пÑедложиÑÑ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ñже гоÑового пÑоекÑа. ЧÑо Ð±Ñ ÑделаÑÑ ÑÑо вам нÑжно полÑÑиÑÑ ÐºÐ¾Ð¿Ð¸Ñ Ð³Ð¾Ñовой веÑки. Так как ÑÑа ÐºÐ¾Ð¿Ð¸Ñ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¿Ð¾ÑенÑиалÑной новой веÑкой ÑÑа команда назÑваеÑÑÑ **branch**:: % bzr branch lp:bzr bzr.dev % cd bzr.dev ÐÑа команда копиÑÑÐµÑ Ð¿Ð¾Ð»Ð½ÑÑ Ð¸ÑÑоÑÐ¸Ñ Ð²ÐµÑки и поÑле ÑÑого Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе делаÑÑ Ð²Ñе опеÑаÑии Ñ Ð½ÐµÐ¹ локалÑно: пÑоÑмаÑÑиваÑÑ Ð¶ÑÑнал, ÑоздаваÑÑ Ð¸ обÑединÑÑÑ Ð´ÑÑгие веÑки. ÐдеÑÑ Ñакже еÑÑÑ Ð¾Ð¿ÑÐ¸Ñ Ð´Ð»Ñ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ ÑолÑко ÑаÑÑи иÑÑоÑии еÑли ÑÑо Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾. ÐÐ¾Ð¿Ð¸Ñ Ð´ÑÑгой веÑки можно Ñакже полÑÑиÑÑ Ð¿ÑоÑÑо ÑкопиÑовав ее каÑалог, ÑазвеÑнÑв аÑÑ Ð¸Ð², или ÑкопиÑовав Ñдаленно ÑеÑез ÑакÑÑ ÑÑилиÑÑ ÐºÐ°Ðº rsync. Следование за изменениÑми оÑновного пÑоекÑа =========================================== ÐÑ Ð¼Ð¾Ð¶ÐµÑе обновлÑÑÑ ÑÐ²Ð¾Ñ Ð²ÐµÑÐºÑ Ð¸Ð· ÑодиÑелÑÑкой ÑеÑез полÑÑение ее изменений:: % bzr pull ÐоÑле ÑÑого локалÑнÑй каÑалог бÑÐ´ÐµÑ ÐºÐ¾Ð¿Ð¸ÐµÐ¹ ÑодиÑелÑÑкого. ÐÑо вклÑÑÐ°ÐµÑ Ð¸ ''иÑÑоÑÐ¸Ñ Ñевизий'' - ÑпиÑок изменений ÑделаннÑÑ Ð½Ð° ÑодиÑелÑÑкой веÑке, а не обÑединеннÑÑ Ñ Ð´ÑÑÐ³Ð¸Ñ Ð²ÐµÑок. ÐÑа команда ÑабоÑÐ°ÐµÑ ÑолÑко еÑли локалÑÐ½Ð°Ñ Ð²ÐµÑка, либо более ÑÑаÑÐ°Ñ ÐºÐ¾Ð¿Ð¸Ñ ÑодиÑелÑÑкой веÑки без новÑÑ ÑикÑаÑий, либо вÑе поÑледние ÑикÑаÑии Ñже бÑли обÑÐµÐ´Ð¸Ð½ÐµÐ½Ñ Ñ ÑодиÑелÑÑкой веÑкой. ÐбÑединение Ñо ÑвÑзаннÑÑ Ð²ÐµÑок ============================== ÐÑли две веÑки ÑазоÑлиÑÑ (обе имеÑÑ ÑникалÑнÑе изменениÑ) Ñогда ``bzr merge`` - ÑÑо Ð¿Ð¾Ð´Ñ Ð¾Ð´ÑÑÐ°Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð° Ð´Ð»Ñ Ð¸ÑполÑзованиÑ. ÐбÑединение авÑомаÑиÑеÑки вÑÑиÑÐ»Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ ÐºÐ¾ÑоÑÑе ÑÑÑеÑÑвÑÑÑ Ð½Ð° обÑединÑемой веÑке и оÑÑÑÑÑÑвÑÑÑ Ð² локалÑной веÑке и попÑÑаеÑÑÑ Ð¾Ð±ÑединиÑÑ Ð¸Ñ Ñ Ð»Ð¾ÐºÐ°Ð»Ñной веÑкой. :: % bzr merge URL Ð ÑлÑÑае конÑликÑа пÑи обÑединении бÑдÑÑ ÑÐ¾Ð·Ð´Ð°Ð½Ñ ÑÑи Ñайла Ñ Ð¾Ð´Ð½Ð¸Ð¼Ð¸ именем, но ÑазнÑми ÑаÑÑиÑениÑми. Файл Ñ Ð¾Ð±Ñими изменениÑми бÑÐ´ÐµÑ Ñ ÑаÑÑиÑением ".BASE", Ñайл Ñ Ð»Ð¾ÐºÐ°Ð»ÑнÑми изменениÑми бÑÐ´ÐµÑ Ñ ÑаÑÑиÑением ".THIS" и Ñайл Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñми из обÑединÑемой веÑки бÑÐ´ÐµÑ Ñ ÑаÑÑиÑением ".OTHER". ÐÑполÑзÑÑ ÑакÑÑ Ð¿ÑогÑÐ°Ð¼Ð¼Ñ ÐºÐ°Ðº kdiff3 Ð²Ñ ÑепеÑÑ ÑможеÑе доÑÑаÑоÑно легко обÑединиÑÑ Ð¸Ñ Ð² один Ñайл. ÐÐ»Ñ ÑикÑаÑии изменений вам нÑжно пеÑеименоваÑÑ Ð¾Ð±ÑединеннÑй Ñайл (".THIS") в Ñайл Ñ Ð¾ÑигиналÑнÑм именем. Ð Ð´Ð»Ñ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð¸Ñ Ð¸ÑпÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ ÐºÐ¾Ð½ÑликÑа нÑжно иÑполÑзоваÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ resolve, коÑоÑÐ°Ñ ÑÐ´Ð°Ð»Ð¸Ñ ÑÐ°Ð¹Ð»Ñ ".OTHER" и ".BASE". Ðоманда commit бÑÐ´ÐµÑ Ð²ÑдаваÑÑ Ð¾ÑÐ¸Ð±ÐºÑ Ð¿Ð¾ÐºÐ° ÑÑÑеÑÑвÑÐµÑ Ð¾Ð´Ð¸Ð½ из Ñайлов Ñ ÑаÑÑиÑением .BASE, .THIS, или .OTHER. :: % kdiff3 file.BASE file.OTHER file.THIS % mv file.THIS file % bzr resolve file [**TODO**: опиÑаÑÑ Ð¼Ð°ÑкеÑÑ ÐºÐ¾Ð½ÑликÑов внÑÑÑи Ñайлов] ÐÑбликаÑÐ¸Ñ Ð²ÐµÑки ================ ÐÐ»Ñ Ð¿ÑбликаÑии веÑки bzr вам не нÑжен ÑпеÑиализиÑованнÑй ÑеÑвеÑ, нÑжен пÑоÑÑо обÑÑнÑй Web-ÑеÑвеÑ. ÐÑоÑÑо пеÑенеÑиÑе ÑÐ°Ð¹Ð»Ñ Ð½Ð° Ð²Ð°Ñ ÑеÑвеÑ, вклÑÑÐ°Ñ ÐºÐ°Ñалог .bzr. Ðожно опÑбликоваÑÑ Ð²ÐµÑÐºÑ (или Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð½Ð° веÑке) одним из ÑледÑÑÑÐ¸Ñ ÑÑÐµÑ ÑпоÑобов: * ÐÑÑÑий ÑпоÑоб - иÑполÑзоваÑÑ Ð´Ð»Ñ ÑÑого Ñам bzr. :: % bzr push sftp://servername.com/path/to/directory (ÐаÑалог назнаÑÐµÐ½Ð¸Ñ Ð´Ð¾Ð»Ð¶Ð½Ð° бÑÑÑ Ñоздан заÑанее, еÑли ÑолÑко не Ñказана опÑÐ¸Ñ ``--create-prefix``) * ÐÑÑгой ÑпоÑоб - плагин ``rspush`` коÑоÑÑй вклÑÑен в BzrTools и иÑполÑзÑÐµÑ rsync Ð´Ð»Ñ Ð¿ÑбликаÑии изменений в иÑÑоÑии Ñевизий и ÑабоÑем деÑеве. * ÐÑ Ñакже можеÑе ÑкопиÑоваÑÑ ÑÐ°Ð¹Ð»Ñ ÑÑками, пеÑеÑлав аÑÑ Ð¸Ð², или иÑполÑзÑÑ rsync, или дÑÑгой меÑод пеÑеÑÑлки. ÐбÑÑно ÑÑо менее безопаÑно Ñем иÑполÑзоваÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ ``push``, но Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð±ÑÑÑÑее и пÑоÑе в ÐºÐ°ÐºÐ¸Ñ -Ñо ÑиÑÑаÑиÑÑ . ÐеÑемеÑение изменений Ð¼ÐµÐ¶Ð´Ñ Ð´ÐµÑевÑÑми ===================================== ÐÑо ÑлÑÑаеÑÑÑ Ð¸ Ñ Ð»ÑÑÑими из наÑ: в какой-Ñо Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð²Ñ Ð´ÐµÐ»Ð°ÐµÑе Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð½Ðµ в Ñом деÑеве Ñайлов. Ðозможно поÑомÑ, ÑÑо Ð²Ñ ÑлÑÑайно наÑали ÑабоÑаÑÑ Ð½Ðµ в Ñом каÑалоге, либо изменений оказалиÑÑ Ð±Ð¾Ð»ÑÑе Ñем Ð²Ñ Ð¾Ð¶Ð¸Ð´Ð°Ð»Ð¸ и Ð²Ñ ÑеÑили ÑоздаÑÑ Ð´Ð»Ñ Ð½Ð¸Ñ Ð½Ð¾Ð²ÑÑ Ð²ÐµÑкÑ. ÐÐ»Ñ Ð¿ÐµÑемеÑÐµÐ½Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ð¹ из одного деÑева в дÑÑгое иÑполÑзÑйÑе :: % cd NEWDIR % bzr merge --uncommitted OLDDIR ÐÑа команда пеÑенеÑÐµÑ Ð²Ñе не заÑикÑиÑованнÑе Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñ Ð²ÐµÑки OLDDIR на веÑÐºÑ NEWDIR. Ðоманда не бÑÐ´ÐµÑ Ð¿ÐµÑеноÑиÑÑ Ð·Ð°ÑикÑиÑованнÑе изменениÑ, даже еÑли они могли Ð±Ñ Ð±ÑÑÑ Ð¾Ð±ÑÐµÐ´Ð¸Ð½ÐµÐ½Ñ Ñ NEWDIR обÑÑнÑм обÑединением. ÐÐ·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñакже оÑÑаÑÑÑÑ Ð¸ в OLDDIR, но Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе иÑполÑзоваÑÑ ``bzr revert OLDDIR`` Ð´Ð»Ñ Ð¸Ñ ÑдалениÑ, как-Ñо ÑолÑко ÑбедиÑеÑÑ, ÑÑо Ñ NEWDIR вÑе ноÑмалÑно. NEWDIR не обÑзаÑелÑно должен бÑÑÑ ÐºÐ¾Ð¿Ð¸ÐµÐ¹ OLDDIR, но они Ð´Ð¾Ð»Ð¶Ð½Ñ Ð±ÑÑÑ ÑвÑзаннÑми веÑками. Чем болÑÑе они оÑлиÑаÑÑÑÑ, Ñем болÑÑе ÑÐ°Ð½Ñ Ð²Ð¾Ð·Ð½Ð¸ÐºÐ½Ð¾Ð²ÐµÐ½Ð¸Ñ ÐºÐ¾Ð½ÑликÑов.