FAQ/ru

Почему "awesome"?
Название awesome пришло от английского слова awesome которое часто использовали персонажи Barney Stinson из HIMYM и Eric Cartman из South Park

Какие приложения необходимы для установки awesome?
Смотрите файл README.

Как изменить стандартную схему расположения окон в теге?
В стандартном конфигурационном файле для всех тегов, для которых не задана схема используется стандартная - плавающая схема. Вы можете изменить это изменив строки создания тегов в rc.lua:

-- Each screen has its own tag table. tags[s] = awful.tag({ 1, 2, 3, 4, 5, 6, 7, 8, 9 }, s, layouts[1])

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

Как изменить имя и схему для отдельного тега?
Вы можете изменить ваше определение тегов в rc.lua, есть много различных возможностей, вот простой пример:

--

Как установить разные теги и схемы расположения для экрана?
Измененное представление раздела объявления тегов:

--

Как настроить авто-запуск приложений?
Традиционный путь это использование файла ~/.xinitrc, вы можете прочесть об этом и некоторых других решениях на странице Autostart.

Как использовать несколько мониторов?
Awesome поддерживает полную поддержку нескольких мониторов (XRandR, Xinerama или Zaphod ) с тегами для каждого, это распределяется с помощью простого конфигурационного файла, который уже установлен для нескольких мониторов (относительно контейнеров для виджетов, панелей задач и виджетов, а также комбинации клавиш, которые позволяют вам двигать клиенты между несколькими мониторами и переключать фокус между ними). Читайте полную статью: "Использование нескольких мониторов" для дальнейших инструкций.

Как выполнить shell-команду?
Если вы хотите выполнить shell-команду или вам необходимо выполнить команду, которая использует пере-направление, pipe и тому подобное, не используйте функцию awful.util.spawn, используйте awful.util.spawn_with_shell. Вот пример:

awful.key({ modkey }, "F10", function awful.util.spawn_with_shell("cal -m | xmessage -timeout 10 -file -") end)

Как заблокировать экран если я отхожу от компьютера?
Воспользуйтесь внешним приложением, таким как 'xlock' или 'xscreensaver'. Я использую xlock приблизительно так:

key({ modkey }, "F12", function awful.util.spawn('xlock') end)

для xscreensaver это будет выглядеть так:

key({ modkey }, "F12", function awful.util.spawn('xscreensaver-command -lock') end)

Приложения с GUI Java выводятся серым экраном!
Из man-страницы awesome:

Java-приложения, которые используют XToolkit/XAWT-бэкенд могут выглядеть как серое окно. XToolkit/XAWT-бэкенд нарушает ICCCM-совместимость последней JDK 1.5 и ранних версий JDK 1.6, потому что принимает унаследованный(?) оконный менеджер. Как обходной путь вы можете использовать JDK 1.4 (который не содержит XToolkit/XAWT-бэкенд) или вы можете настроить эту переменную окружения (чтобы использовать старый Motif-бэкенд взамен): AWT_TOOLKIT=MToolkit

Обходной путь для использования Java приложений которые требуют JDK 1.5 или выше это использование вложенного X-сервера, например Xephyr. Для примера, чтобы использовать Java OpenStreetMap, вы можете использовать следующий сниппет:

$ cat bin/josm #!/bin/sh Xephyr :1 -screen 1280x1000 -once -br & export DISPLAY=:1 josm $1 killall Xephyr

Конечно, этот пример предполагает что вы запускаете только одну сессию Java-приложения, он может выглядеть не очень красиво на разрешениях отличных от 1280x1024, и запускает целый X-сервер, что является тратой ресурсов... Но вы уловили идею.

Возможно наиболее элегантное решение это использование wmname. wmname это приложение, которое изменяет название оконного менеджера видимое приложениями. Это может быть причиной проблем с другими приложениями, хотя ни одна еще не была найдена - пожалуйста отредактируйте это и добавьте проблему, если найдете её. Если вы добавите "wmname DG3D" в ваш .xinitrc, или запустите его другим путем, Java-приложения должны работать правильно. Заметьте, что это может не работать если у вас есть AWT_TOOLKIT. Это решение работает потому что у Java есть обходное решение для не-наследованных оконных менеджеров, но обнаруживает их только основываясь на параметре имени, которое задает wmname.

Эта проблема видимо решена в JDK 1.7.

Awesome 2
В вашем .awesomerc, под разделом screens если вы не хотите чтобы они появлялись снова, добавьте нижеследующее. В вашем .awesomerc может и не быть такого раздела - тогда добавьте его.

general {     resize_hints = false }

Awesome 3
Поведением клиентов в данном случае управляет флаг 'honorsizehints' (или 'size_hints_honor' в новых версиях Awesome), которому по умолчанию в ловушке hook_manage присваивается значение true для всех клиентов. Измените значение на false, чтобы убрать разрывы.

Как добавить переключатель приложений?
Вы можете использовать Меню Клиентов как переключатель приложений. Стандартно оно открывается, если вы кликните правой кнопкой мыши на вашей панели задач, но вы можете также определить комбинацию клавиш для этого. Вот пример определения открытия меню по комбинации клавиш "Alt + Esc", которое добавляется к вашим globalkeys:

awful.key({ "Mod1" }, "Escape", function      -- If you want to always position the menu on the same place set coordinates      awful.menu.menu_keys.down = { "Down", "Alt_L" }      local cmenu = awful.menu.clients({width=245}, { keygrabber=true, coords={x=525, y=330} })  end),

Как настроить и использовать виджеты?
Вы можете узнать все о виджетах и их создании на странице Виджеты в Awesome.

Есть пользователи, которые создали библиотеки виджетов, которые придерживаются некоторых принципов. Они пытаются упростить создание виджетов для других, и имеют выгоду от того, что их библиотеки используются в большом количестве системных мониторов, и поэтому вам не нужно писать свои собственные. Два популярных проекта Vicious и Obvious.

Как установить горизонтальные виджеты в вертикальном контейнере?
Левое или правое расположение контейнера виджета это отлично, но вертикальный текст становится трудным для чтения. На сегодняшний момент в awesome v3.4, очень трудно добиться идеального результата, но в версии awesome для разработчиков схемы виджетов уже полностью переписаны с учетом этого. Этот код позволяет с легкостью установить набор вертикальных панелей, как это позволяется в некоторых окружениях рабочего стола.

Awesome 2
Добавьте в раздел rules файла awesomerc:

titlebar { position = off }

Awesome 3
Найдите в файле rc.lua код:

if use_titlebar then -- Add a titlebar awful.titlebar.add(c, { modkey = modkey }) end

И добавьте условия, при которых будет (или не будет) добавляться заголовок. Например: if use_titlebar and c.class ~= "URxvt" then -- Add a titlebar awful.titlebar.add(c, { modkey = modkey }) end

В этом случае у окон, имеющих класс URxvt, заголовков не будет.

Awesome 3.0
Код Lua: mystatusbar.screen = nil

Чтобы использовать сочетание клавиш Modkey-b для скрытия / показа панели mystatusbar (как это было по умолчанию в Awesome 2.3), добавьте в rc.lua:

keybinding({ modkey }, "b", function        if mystatusbar[mouse.screen].screen == nil then           mystatusbar[mouse.screen].screen = mouse.screen      else          mystatusbar[mouse.screen].screen = nil      end  end):add

Awesome 3.3
Добавьте сочетание клавиш в таблицу globalkeys: awful.key({ modkey }, "b",       function             if mywibox[mouse.screen].screen == nil then                mywibox[mouse.screen].screen = mouse.screen            else                mywibox[mouse.screen].screen = nil            end        end)

Как настраивать заголовки окон?
Чтобы отключить заголовки окон для всех клиентов, удалите строку содержащую awful.titlebar.add(c, { modkey = modkey }) из вашего обработчика сигнала manage (или ловушки manage hook в более старших версиях). Если вы хотите заголовки только для некоторых клиентов, вам не нужно возвращать эту строку обратно, вы можете сделать это с помощью таблицы awful.rules.rules, где описаны правила. Пример правила:

{ rule = { class = "Gimp" }, callback = awful.titlebar.add },

Как определить комбинацию клавиш для управления видимостью заголовка?
Вы можете использовать clientkeys, вот пример:

awful.key({ modkey, "Shift" }, "t", function (c)       if   c.titlebar then awful.titlebar.remove(c)        else awful.titlebar.add(c, { modkey = modkey }) end    end),

Как определить комбинацию клавиш для управления видимостью контейнера для виджетов?
Добавьте следующие строки, определяющие клавиши в таблицу globalkeys:

awful.key({ modkey }, "b", function      mywibox[mouse.screen].visible = not mywibox[mouse.screen].visible  end),

Как определить комбинацию клавиш для управления состоянием клиента?
В стандартном rc.lua уже присутствует комбинация клавиш для этого, это "Mod4 + Control + Space". Вы можете легко сменить её на что-то более легкое, вроде "Mod4 + f" или "Mod4 + Shift + f".

awful.key({ modkey, "Shift" }, "f", awful.client.floating.toggle ),

Почему некоторые плавающие клиенты не могут использовать тайлинг?
Если какие-либо ваши приложения(такие как Firefox, Opera и тому подобные) находятся в плавающем режиме, но вы не можете применять к ним схему тайлинга, и они ведут себя странно( не тегируются, всегда показываются верхними ) - не паникуйте. Они всего-лишь максимизированны вашим предыдущим оконным менеджером, или это осталось с предыдущей сессии. Стандартная комбинация клавиш для переключения максимизироавнного статуса это "Mod4 + m".

Вы можете убедиться что ни одно приложение не будет запускаться в максимизированном режиме, если в первое правило в вашей таблице awful.rules.rules, которое применяется к всем клиентам, будет добавлено следующее:

-- Найдите вот эту строчку: keys = clientkeys, -- Добавьте две последующие: maximized_vertical  = false, maximized_horizontal = false,

Как избежать выхода за пределы экрана для плавающих клиентов?
Включите вызов awful.placement к вашему обработчику сигналов в rc.lua:

-- Floating clients don't overlap, cover -- the titlebar or get placed offscreen awful.placement.no_overlap(c) awful.placement.no_offscreen(c)

Как передвинуть или изменить размер плавающего окна с помощью клавиатуры?
Вы можете использовать функцию awful.client.moveresize. Следующий пример clientkeys будет двигать плавающие окна с помощью "Mod4 + Arrow keys" и изменять их размеры с помощью клавиш "Mod4 + PgUP/DN":

awful.key({ modkey }, "Next", function  awful.client.moveresize( 20,  20, -40, -40) end), awful.key({ modkey }, "Prior", function awful.client.moveresize(-20, -20,  40,  40) end), awful.key({ modkey }, "Down", function  awful.client.moveresize(  0,  20,   0,   0) end), awful.key({ modkey }, "Up",   function  awful.client.moveresize(  0, -20,   0,   0) end), awful.key({ modkey }, "Left", function  awful.client.moveresize(-20,   0,   0,   0) end), awful.key({ modkey }, "Right", function awful.client.moveresize( 20,   0,   0,   0) end),

Как изменить размер клиентов в тайлинге?
Вы можете использовать функцию awful.tag.incmwfact для изменения размера основного клиента и функцию awful.client.incwfact для изменения размера дополнительных клиентов. Следующий пример globalkeys демонстрирует это:

awful.key({ modkey }, "l",         function  awful.tag.incmwfact( 0.05) end), awful.key({ modkey }, "h",         function  awful.tag.incmwfact(-0.05) end), awful.key({ modkey, "Shift" }, "l", function awful.client.incwfact(-0.05) end), awful.key({ modkey, "Shift" }, "h", function awful.client.incwfact( 0.05) end),

Как изменять конфигурацию awesome, когда он запущен?
Вы можете изменять rc.lua, но вы должны перезапустить awesome чтобы изменения вступили в силу. Стандартная комбинация клавиш для перезапуска awesome это "Mod4 + Control + r".

Как запускать клиенты на специфическом теге или остальные как плавающие?
Вы можете добавлять правила в вашу таблицу awful.rules.rules. По умолчанию в rc.lua уже есть некоторые примеры, но вот еще несколько:

-- Установка Firefox всегда располагаться на втором теге первого монитора. { rule = { class = "Firefox" }, properties = {tag = tags[1][2]}}, -- Установка Smplayer на тег 4 первого монитора. { rule = { class = "Smplayer" }, properties = {tag = tags[1][4]}}, -- Установка Emacs на пятый тег второго монитора. { rule = { class = "Emacs", instance = "emacs" }, properties = {tag = tags[2][5]}}, -- Установка Alpine на шестой тег последнего монитора. { rule = { name = "Alpine" },   properties = {tag = tags[screen.count][6]}}, -- Установка Akregator на восьмой тег последнего монитора и добавление заголовка через вызов. { rule = { class = "Akregator" },properties = {tag = tags[screen.count][8]}, callback = awful.titlebar.add}, -- Установка Xterm на несколько тегов первого монитора. { rule = { class = "XTerm" }, callback = function(c) c:tags({tags[1][5], tags[1][6]}) end}, -- Установка ROX-Filer на второй тег текущего выбранного и активного монитора. { rule = { class = "ROX-Filer" }, callback = function(c) awful.client.movetotag(tags[mouse.screen][2], c) end}, -- Установка ROX-Filer на восьмой тег первого монитора и немедленное переключение на тег. { rule = { class = "ROX-Filer" }, properties = { tag = tags[1][8], switchtotag = true } } -- Установка Geeqie на тег с фокусом, как плавающий клиент { rule = { instance = "geeqie" }, properties = {floating = true}}, -- Установка Xterm как плавающего окна с фиксируемой позицией { rule = { class = "XTerm" }, properties = {floating = true}, callback = function(c) c:geometry({x=0, y=0}) end},

Как запускать клиенты как дополнительные окна под главным?
Вы можете назначить окнам открываться как дополнительные, установив правило для всех клиентов:

-- Запускать клиент как дополнительный. { rule = { }, properties = { }, callback = awful.client.setslave }

Как использовать код клавиши в определении комбинаций клавиш?
Вы можете использовать формат #XYZ для кодов клавиш в ваших определениях комбинаций. Следующий пример демонстрирует определение мультимедийной/специальной клавиши(вот почему здесь не используется нажатие модификатора(но оно может быть)):

awful.key({}, "#160", function awful.util.spawn("kscreenlocker --forcelock") end),

Как добавить индикатор клавиатурной раскладки?
Вы можете использовать утилиту xxkb. Оно создает иконку в трее и поддерживает настройку раскладки для клиента. Как альтернатива вы можете использовать виджет awesome, вы можете найти некоторые примеры на страница Change keyboard maps", или в библиотеке виджетов Obvious.

Другим путем является использовать клавиатурную комбинацию, без какого-либо визуального ответа. Первое решение это использование встроенного в X.org переключателя (смотрите пример ниже), другое решение это вызов setxkbmap  из комбинаций клавиш для awesome:

Section "InputClass" Identifier     "keyboard" Driver         "evdev" MatchIsKeyboard "on" Option    "XkbModel"    "evdev" # Switch between layouts by pressing both shift keys Option    "XkbLayout"   "hr,us" Option    "XkbOptions"  "grp:shifts_toggle" EndSection

Как сделать так, чтобы окна создавались под курсором мыши?
Если в вашем обработчике сигналов manage есть раздел расположений окна, вы можете добавить awful.placement.under_mouse(c) в существующие правила (или заменить их).

Как переключаться на специфическую схему с помощью клавиатурных комбинаций?
Вы можете вызвать функцию awful.layout.set, вот пример:

awful.key({ modkey }, "q", function awful.layout.set(awful.layout.suit.tile) end),

Почему иконки моих приложений в Wine отсутствуют, когда я присоединяю второй монитор к моему ноутбуку?
Запуск KeePass это пример подобного. Это еще нерешенный баг(?). Вы можете обойти это, убедившись что ваш подключаемый монитор становится основным монитором. Введите подобную команду:

xrandr --output VGA1 --auto --above LVDS1 --primary

Есть ли какая-то программа для запуска приложений или меню в awesome?
В Awesome 2.3 есть возможность использования меню. Достаточно создать где-нибудь файл, строки которого соответствуют пунктам меню, например:

файл ~/.awesome/menu: xterm firefox pidgin

Затем добавьте в Ваш .awesomerc: key { modkey = {"Mod4"} key = "p" command = "spawn" arg = "exec `cat ~/.awesome/menu | awesome-menu`" }

Подробности смотрите в статье awful.menu.

В качестве альтернативы можно использовать сторонние программы, такие как: пример: key { modkey = {"Mod4"} key = "p" command = "spawn" arg = "exec `dmenu_path | dmenu -b`" }
 * dmenu - утилита для запуска программ


 * dzen - x-меню, строка состояния и прочее...

пример: 9menu - файл ~/.9menurc
 * 9menu - простое x-menu


 * apwal - простые значки на корневом (root) окне


 * Gmrun - меню для запуска приложений (использует GTK+)

В Awesome 3 меню есть по умолчанию, для добавления или удаления элементов отредактируйте rc.lua.

Отсутствует трей! Как мне получать уведомления от Pidgin?
Awesome понимает флаг 'URGENT', который выставляет Pidgin, и может изменить фон тега awesome. Для этого запустите Pidgin, перейдите в Tools -> Plugins и включите модуль 'Message Notification'. Далее в настройках этого модуля включите 'Set Window Manager 'URGENT' hint'.

Настройте цвета для тегов в секции 'colors' в Вашем файле ~/.awesomerc (Для awesome-2.2):

colors { urgent_fg = "#ffffff" urgent_bg = "#D53737" }

Для awesome-2.3:

styles { urgent {           fg = "#FFFFFF" bg = "#D53737" } }

Выполните команду awesome -k, чтобы убедиться, что конфиг не содержит ошибок, и перезапустите awesome.

Для awesome-3 отредактируйте файл ~/.config/awesome/themes/

bg_urgent    = #ff0000 fg_urgent    = #ffffff

В результате, когда Вы получите сообщение в Pidgin, тег, к которому прикреплен Pidgin, должен изменить цвет на красный.

Можно ли изменить настройки awesome, когда он запущен?
Да, можно. Тем не менее необходимо будет перезапустить Awesome, чтобы применить новые настройки. Стандартное сочетание клавиш для перезапуска Awesome 3.0 - Mod4 + Ctrl + r.

Как изменить тему курсора в Awesome?
Вы можете установить желаемую тему при помощи xsetroot

xsetroot -cursor_name THEME

Эту команду можно поместить в ~/.xinitrc

Могу ли я прицепить окно так, чтобы держать его между мониторами?
Да, точно такого же эффекта можно добиться добавив окно на все теги (правый клик по тегу чтобы добавить его к текущему окну)/ Учтите, что теги awesome это не настоящие "экраны", а нечто более гибкое.

Как узнать класс окна для использования в качестве идентификатора клиента в конфигурационном файле?
xprop | grep -i class Затем кликните по интересующему Вас окну и посмотрите в выводе значение WM_CLASS. Его можно будет поместить, например, в таблицу floatapps, чтобы сделать окно приложения плавающим: floatapps = {    -- by class ["MPlayer"] = true, ["pinentry"] = true, ["gimp"] = true, -- by instance ["mocp"] = true }

В качестве альтернативы можно использовать функцию, которая будет показывать информацию о выбранном в данный момент клиенте, используя библиотеку Naughty. В Awesome 3.3 добавьте к таблице clientkeys: awful.key({ modkey, "Control" }, "i",       function (c)            naughty.notify({ text = "Class: " .. c.class .. "\nInstance: " .. c.instance .. "\nName: " .. c.name .. "\n", width = 400 })       end)

Теперь при нажатии Ctrl+Modkey+i будет появляться всплывающее уведомление с информацией о клиенте.

Я запустил awesome, и не знаю что делать. Как управлять этой штукой?
По-умолчанию, чтобы открыть терминал, нужно нажать Mod4+Enter (где Mod4 обычно клавиша 'Windows') или правую кнопку мыши.

Затем наберите man awesome. Это весьма хорошее руководство, в нём также описаны комбинации клавиш.

Схемы
С стандартным конфигурационным файлом вы можете циклически изменять схему расположения окон, нажимая mod4+space (mod4+shift+space для обратной прокрутки) или кликая по кнопке схемы в верхнем левом углу экрана.

Смотрите на страницу layout/ru для того, чтобы прочесть описание того, как разные схемы располагают окна.

Как перезапустить или выйти из awesome?
Вы можете использовать комбинацию клавиш "Mod4+Ctrl+r" или выбрав пункт "restart" в меню. Вы можете вызвать даже awesome.restart из виджета командной строки Lua или отдав сигнал соответствующему клиенту:

$ echo 'awesome.restart' | awesome-client

Вы также можете послать сигнал SIGHUP процессу awesome. Найдите PID процесса, используя pps, pgrep или используйте pkill:

$ pkill -HUP awesome

Почему awesome не использует мой собственный новый конфигурационный файл?
Если awesome не может найти $XDG_CONFIG_HOME/awesome/rc.lua, или не может его загрузить, он начинает использовать стандартный файл в /etc/xdg/awesome/rc.lua (вы же не изменяли его, я надеюсь, не так ли?). Даже если команда awesome --check не выдала никаких ошибок, это означает только то, что ваш rc.lua синтаксически корректен, но защита от других ошибок не гарантированна. Даже больше, awesome может принять только часть вашего конфигурационного файла и показывать ошибку в загрузке остального, это может привести к странным последствиям, как два набора тегов. Посмотрите следующий вопрос или попытайтесь найти проблему.

Где располагаются логи, сообщения о ошибках или что-то подобное?
Когда при применении вашей конфигурации что-то идет не так, awesome отправляет сообщение об ошибке в системный поток stderr. Когда он запущен с обычным $ startx, тогда ошибки будут выводиться прямо в терминал. Если вы используете что-то более целостное( например DM, такие как KDM или GDM), стандартный поток stderr перенаправляется куда-нибудь еще. Чтобы узнать куда, запустите следующую команду:

$ ls -l /proc/$(pidof awesome)/fd/2

Вот простой путь для запуска awesome и пере-направления его стандартных потоков вывода и ошибок в файлы:

exec /usr/bin/awesome >> ~/.cache/awesome/stdout 2>> ~/.cache/awesome/stderr

Если вы запишете это в .xinitrc (для startx) или ~/.xsession (qingy использующий это, к примеру), вы сможете просматривать их (с помощью tail -f) полностью прямо из awesome.

как запустить другую X сессию
В KDE Я могу запустить другую Х сессию и переключаться между ними с помощью F7 и F8. как сделать такое же в awesome?


 * Переключитесь на новый виртуальный терминал (VT) используя например Ctrl+Alt+F8, залогиньтесь как обычно, и запустите X-ы там, Например с помощью команды startx -- :2. (Grfgguvf 18:27, 30 September 2008 (UTC))

qingy хороший инструмент для проделывания подобных вещей.

Можно использовать простой скрипт xlaunch, позволяющий запустить произвольную программу в новой Х-сессии: Страница xlaunch

Как выключать / перезагружать / переводить компьютер в спящий режим
Стандартное сочетание клавиш для выхода из Awesome - Mod4+Shift+q.


 * Из командной строки можно выполнить shutdown -h now для выключения, shutdown -r now для перезагрузки, и так далее... (Grfgguvf 18:28, 30 September 2008 (UTC))
 * Также, по крайней мере в Ubuntu, можно использовать команду pmi action suspend для перехода в режим ожидания. --Dhgwilliam 21:16, 7 November 2008 (UTC)

Где буфер обмена? Как мне делать копирование и вставку?
X-сервер предоставляет возможность выделить текст мышью и вставить его куда-либо, нажав среднюю кнопку мыши или сочетание клавиш -.

В качестве альтернативы можно установить любое приложение для управления буфером обмена, например, klipper.

Я обнаружил ошибку, что делать?
Во-первых, протестируйте версию для разработчиков, возможно, ошибку уже исправили. Если ошибка представляет собой неожиданное поведение программы, поясните, что вы ожидали вместо неё. Если это ошибка сегментации, приложите данные трассировки (например, с помощью gdb).

Всё вышеперечисленное отправляйте по этой ссылке: http://awesome.naquadah.org/bugs/

Во всех случаях, опишите действия, которые привели к ошибке, чтобы её можно было воспроизвести.

Вы принимаете патчи и улучшения?
Да, принимаю. Отправляйте их мне или в почтовую рассылку. Также зайдите на страничку для разработчиков.

Как отслеживать разные ветки awesome?
Чтобы скопировать обычную версию разработчика(из git):

git clone git://git.naquadah.org/awesome.git/ cd awesome/

Чтобы o взять ветвь, например, такого вида - 'awesome-3':

git fetch origin awesome-3:awesome-3 git checkout awesome-3

git-branch напишет вам о том, какая ветвь у вас. На некоторых дистрибутивах также есть возможность "дополнять" ветви команд git(и даже больше). git-branch will tell you on what branch you are.

Чтобы оставаться обновленным с веткой 'awesome-3', запустите это в директории awesome:

git fetch origin git reset --hard origin/awesome-3

Чтобы создать патч:

git clone git://git.naquadah.org/awesome.git/ edit file git commit filename git format-patch origin This yields a file name like 0001-the-title-you-gave-it.patch