Изменения

нет описания правки
Строка 1: Строка 1:  
{{Заготовка}}
 
{{Заготовка}}
   −
Что может быть интереснее того, чтобы играть в компьютерную игру? Правильно! Менять мир игры и наблюдать, как глупые ньюфаги превозмогают. Хотите знать, как делают игры? Отлично, в этой статье мы и разберем все, что касается разработки билда Space Station 13, помимо самого написания кода.
+
Что может быть интереснее того, чтобы играть в компьютерную игру? Правильно! Дрочить потные яйца! Хотите быть чемпионом? Сосите хуй.
   −
= Зачем все это? Давайте просто писать код! =
+
= Зачем все это? Давайте просто писать в ротик Эпикусу блять сука на нахуй черти ебанные я пошёл хавать блядь охуенный хавчик! =
   −
Не спеши пока ничего делать, для начала давай немного разберемся с теорией - все довольно просто, но это решит множество твоих проблем в будущем.  
+
[[Файл:doyouwannabeaprogrammer.jpeg|200px|thumb|right|tl;dr суть статьи вкратце.]]
   −
Наверное, ты уже видел один из [https://github.com/Rampoch/Chaotic-Onyx реальных билдов Space Station 13]? При достаточной внимательности, ты даже мог там разглядеть кнопку "Download ZIP". Давай пойдем по наивному пути и попробуем его скачать.
+
Не спеши пока ничего делать, для начала давай немного разберемся с теорией - все довольно просто, но это не решит множество твоих проблем в будущем. Ты вырастешь, тебе нужно будет жилье, тебе нужна будет работа, тебе нужна будет девушка, тебе нужны будут деньги. Вот это будут действительно проблемы для тебя в будущем, а не какие-то там попытки спиздить бумбокс, склеить его костылями и пытаться продавать его за 600 рублей. Надо ли тебе это? Решай сам.
   −
Скачав и разархивировав архив, ты получил папку с полной копией того билда, который, скорее всего, прямо сейчас работает на сервере. Что мы видим в типичной папочке с билдом? Рассмотрим на примере сборки Baystation12:
+
Наверное, ты уже видел один из [https://www.youtube.com/watch?v=oHg5SJYRHA0 реальных билдов Space Station 13]? При достаточной внимательности, ты даже мог там разглядеть кнопку "Go Fuck Yourself". Давай пойдем по наивному пути и попробуем его скачать.
   −
* '''название_билда.dme''' (Dream Maker Environment) - самый главный файл исходных кодов игры. Он хранит в себе список всех файлов с кодом, которые будут скомпилированы в дистрибутив игры. Все просто: добавили новый файл - добавили его путь в .dme; не хотите чтобы какой-то файл компилировался в сборку - удалите его отсюда. Это файл можно открыть бьондовским Dream Maker'ом, в котором можно добавлять/исключать файлы из сборки с помощью дерева файлов в его интерфейсе слева.
+
Скачав и разархивировав архив, ты получил винлокер, скрытый в архиве. Что мы видим в типичной папочке с билдом? Надпись "Эпикус желает твои сочные соски, скинь их или мы будем заставлять играть тебя на нашем проекте Chaotic Popyx".
* '''название_билда.dmb''' (Dream Maker Build) - скомпилированная версия сборки. Dream Maker собирает все исходные файлы с кодом, которые указаны в .dme файле вместе, компилирует их и отдает этот .dmb файл, который можно загрузить в Dream Daemon, чтобы запустить сервер.
  −
* '''code, icons, interface, fonts, maps, sound''' - обычные папки, в которых, внезапно, лежат исходные коды, иконки, файлы интерфейса, шрифты, карты и звуки соответственно. Здесь все легко.
  −
* '''config''' - важная папка с конфигами сервера. Перед первым запуском локальной сборки, убедись что скопировал файлы из подпапки examples в корень папки config и все правильно настроил.
  −
* '''html''' - различные html-формы, которые используются для описания расположения элементов интерфейса во всяких консолях, панельках, а также вспомогательные элементы.
  −
* '''tools''' - скрипты и программы, в основном, на нормальных языках программирования, которые могут понадобится при разработке и запуске сервера. Например, здесь может быть программа, которая переводит музыку в формате midi в ноты для пианино.
  −
* '''sql''' - конфигурационные файлы для запуска Базы Данных под сервер.
     −
Хорошо, мы разобрались с тем, что тут лежит. Допустим, ты нашел какой-то файлик с кодом и решил в нем что-то поменять, скажем, урон у дубинки СБ - одно число. Скомпилировал билд, запустил у себя локальную версию - все хорошо. Далее ты хочешь сделать так, чтобы эти изменения попали на сервер - как ты их будешь передавать?
+
* '''Эпикус.dme''' (Gay Master Gandonio) - самый главный педераст сервера. Он хранит в себе куча вонючего кала, которые изредка вылезают из своей норки во время очередного написания кода. Все просто: добавили нос Шепарду - получился развал Анимуса. Это позволит вам следить за историей русского сегмента SS13.
 +
* '''Ramp0ch.dumb''' (Ex-Gayest Gay In The Fucking Gayish World) - сжатый комок баребуха. Ramp0ch собирает все члены игроков Cahotic Oynx, которые указаны в его сладкой попке вместе, массирует их и отдает эти обработанные пенисы Эпикусу, который трансформируется в гавно.
 +
* '''cock, icunts, facefuck, fonks, mops, asspound''' - обычные попки, в которых, внезапно, лежат скелеты хуйцов, покрытые украинскими флагами. Чтобы разузнать предысторию этого события, необходимо провести расследование в нашем шоу Голос Дети.
 +
* '''cockfig''' - важная папка с конфигами сервера. Перед первым запуском локальной сборки, убедись что насрал в туалет и сдернул за собой человеческие отходы. Иначе дерьмо вонять будет, и жить в этом помещении будет невозможно.
 +
* '''huetml''' - те немногие, что выебали американцев в жопу.
 +
* '''sos''' - скрипты и программы, в основном, на ненормальных языках программирования, которые не понадобятся при разработке и запуске сервера. Например, здесь может быть программа, которая переводит бабки кэш мани money real дерьмо йоу это реальны  разъёб
 +
* '''sooqalar''' - конфигурационные файлы для запуска Базы Данных под сервер.
   −
Можно, конечно, взять этот файлик, отправить владельцу сборки на GitHub'e, чтобы он полностью заменил файл. Также, например, можно попросить его заменить все самому в конкретной строчке, но чем больше будет количество изменений и людей, которые их вносят - тем сложнее будет со всем эти справляться. Тут приходит на помощь Git.
+
Значит, Японцы, перед второй мировой войной, а именно - адмирал Ямамото, задумали расхуячить американский флот на Гавайских островах, то что потом вошло в историю как катастрофа на Перл Харбор.
   −
Тут важно отличать две вещи - Git и GitHub. Первое - это обычная маленькая программа для сохранения истории изменений кода, а второе - это интернет-портал, который позволяет хранить у себя твои исходные коды.
+
Слушай и запоминай. Командующий налетом на Перл Харбор был адмирал Нагума. Средний офицер, на самом деле, но исполнительный. Исполнительный, безусловно. Професионал. Но без фантазии. У японцев на самом деле людей с фантазией было немного.  
   −
Что делает Git? По сути, он сравнивает исходную версию всех файлов до изменений с тем, что получилось в итоге и создает список изменений - diff (от слова difference). Далее он помогает зафиксировать эти изменения и сохранить со своим описанием в специальном архиве изменений, в подпапке .git. Зафиксировав изменения, их можно будет откатывать, восстанавливать, сливать и делать с ними прочие непотребства, не беспокоясь о том, что твоя работа куда-то пропадет - вся история изменений останется в архиве и ее всегда можно будет восстановить. Более того, любой другой человек может прийти и посмотреть всю историю работы со сборкой. И это еще не все, git позволяет синхронизировать твой локальный архив изменений с другими архивами, которые расположены у других разработчиков на компьютерах, или, например, на GitHub'e.
+
Дерьмо, блядь, на палочке. Ничего не знаешь, ничего не можешь, что ты вообще, блядь, в армии делаешь, а?
   −
То есть, с помощью Git, ты можешь зафиксировать свое изменений кода и создать, так называемый, commit - один набор изменений файлов. Этот коммит сохранится в историю в твоем локальном архиве, как последнее изменение сборки, после чего можно будет синхронизировать свой архив с архивом игрового сервера на GitHub. Как только архив изменений на GitHub обновится - изменения применятся к сборке сервера и, после компиляции и обновления сервера педалями, дубинка станет наносить новый урон.
+
Какие самолеты были на этих авианосцах? Самолеты какие были? Какой самый известный самолет на тихоокеанском театре военных действий? Сколько истребителей, сука? Сколько, блядь, истребителей, скотина блядь?!
   −
Да, это чуть-чуть сложнее, чем просто скинуть файл с изменениями, но чем больше файлов было изменено и чем больше разработчиков одновременно работает над кодом сборки - тем важнее становится использование Git.
+
Седьмого декабря, 1941 года. японский флот в составе шести авианосцев, "Акаги", "Кага", "Хирю", "Сорю", "Секаку" и "Дзуйкаку", а так же двух линейных кораблей "Хиэй Кирисима" появились на траверсе острова Оаху, Гавайских островов.  
   −
Таким образом, репозиторий (так называют те самые архивы с историей изменений) - это набор коммитов (наборы изменений), которые совершались последовательно друг за другом. В любой момент можно получить в своей папке состояние всех файлов после применения какого-то коммита: просто переключаемся на соответствующий коммит из истории. Последовательность коммитов одного за другим образует ветку. Веток в одном репозитории может быть много. То есть начиная с какого-то коммита, мы можем создать новую ветку и добавлять туда новые коммиты, независимо от старой последовательности. Закончив работу над какой-то задачей, можно объединить эту ветку с исходной, в результате чего, все изменения окажутся в одной ветке.
+
Первое ударное воздушное соединение насчитывало 50 истребителей "Зеро", 40 торпедоносцев и 81 пикирующий бомбардировщик. В итоге этого налета четыре линейных корабля американского флота было потоплено.  
   −
Удобство веток в том, что два человека могут заниматься разными вещами в сборке, не мешая свои изменения. Даже если они затронут одни и те же файлы, проблемы возникнут только при мерже этих двух веток в одну - надо будет внимательно разруливать их изменения, выбирая какие оставить в финальной версии.
+
Какие корабли? Какие корабли?! Аризона, Вест-Вирджиния, Оклахома и Мэриленд. Это знать надо! Если ты учился в шестом училище, это классика, блядь! Сколько истребителей, сука? Сколько, блядь, истребителей, скотина блядь?!
   −
Кстати, когда ты создаешь новый репозиторий, например, локально, на компьютере - ты автоматически создаешь новую ветку, локальную. Когда ты будешь заливать свои изменения из этой локальной ветки назад на сервер - ты будешь, как бы, объединять свою локальную ветку с исходной веткой на сервере.
+
Сейчас наша армия ориентируется именно на этих офицеров. По крайней мере это те немногие, что выебли американцев в жопу. И это знать надо! Дерьмо собачье. А, блядь, нахуй! Ну-ка иди сюда, сука, блядь! Дерьмо собачье, блядь! А, блядь!
   −
= Берем в руки Git и готовимся к поступлению в Академию Магов =
+
Так, я сейчас чай принесу, мы с тобой продолжим, продолжим-продолжим... Ты, хоть и полный идиот, но... Я думаю, что эта информация будет тебе полезна. По крайней мере ближайший час.
   −
== Установка и настройка ==
+
= Берем в руки хуй и готовимся к поступлению в Академию Порядочных Парней =
   −
Git - обычная программа, которую можно поставить, точно так же, как какой-нибудь Byond, подключить к скачанному репозиторию и работать с ним. Проблема в том, что это программа хоть и мощная, но консольная, из-за чего ей неудобно пользоваться под Windows. К счастью, есть огромное количество программ-оберток, которые дают обычный интерфейс с кнопочками, управляя консольной программой за тебя. Вообще говоря, все эти программы просто дают интерфейс и пишут некие команды в консоль, причем эти команды всегда будут одни и те же, независимо от самой программы.
+
==  Отсос и манипуляция членом ==
   −
Для совсем новичков, остановимся на примере SourceTree - это самый простой способ сделать свой первый коммит. Скачивать репозиторий zip-архивом не нужно, все скачается автоматически.
+
Для начала практики минета необходимо определится с позой в которой оба партнера будут чувствовать себя наиболее комфортно.  
   −
Итак, заходим на официальный сайт [SourceTree https://www.sourcetreeapp.com/], качаем версию под свою ОС и устанавливаем. Сам Git входит в сборку SourceTree и будет установлен автоматически - отдельно его ставить не нужно. После установки, нужно будет зарегистрироваться у разработчика, на сайте Attlasian. Этот аккаунт может тебе еще пригодится, если ты будешь работать с репозиторием, расположенным на BitBucket, а не на GitHib'е.
+
Существует множество поз для орального секса, от самых простых и до самых изощренных, так что поле для экспериментов тут довольно широко.  
   −
Запустив SourceTree, щелкаем Файл/Клонировать. Указываем сайт репозитория (например, https://github.com/Rampoch/Chaotic-Onyx), путь, где мы будем хранить репозиторий локально и название для отображения в интерфейсе программы. Жмем кнопку клонировать. В выбранной папочке создастся новый репозиторий - точная копия репозитория, который хранится на сервере GitHub. Теперь мы можем тут что-то поменять и залить изменения на оригинальный репозиторий сервера.
+
Основной принцип при выборе позы в которой вы будете делать минет партнеру это ее удобство как для вас, так и для партнера с точки зрения не только комфорта но и чувственного наслаждения от сексуальной близости.
 +
 
 +
Хорошенько оближите головку члена, чтобы она стала немного влажной, так она будет лучше скользить у вас в губах. Начните с легкого и неглубокого минета, достаточным для начала будет брать в ротик лишь головку пениса.
 +
 
 +
Однако не стоит заигрываться с ней потому что от перевозбуждения ваш партнер может преждевременно ощутить оргазм так и не познав всего спектра наслаждения от минета. Да и получить в ротик теплой струйкой спермы в самом начале игры тоже будет не очень интересно.
 +
 
 +
Чередуйте игривые ласки и поцелуи с легким сосанием члена дабы партнер немного остывал от стимуляции пениса. Немного пососав член переключитесь на мошонку или поцелуи живота партнера, поцелуи в губы после члена также будет довольно волнителен для вас и вашего партнера.  
 +
 
 +
Если вы владеете практикой глубокого минета, то пробуйте глубоко глотать его доводя партнера до вершин наслаждения.
    
== Интерфейс SourceTree ==
 
== Интерфейс SourceTree ==
Строка 55: Строка 63:  
Что у нас есть в интерфейсе SourceTree?
 
Что у нас есть в интерфейсе SourceTree?
   −
* '''Вкладки.''' Каждая вкладка - отдельный локальный репозиторий. То есть все, что мы видим на этой вкладке - касается конкретного репозитория, который мы создали.
+
* '''Закладки.''' Каждая закладка - отдельная история. То есть все, что мы видим на этой закладке - касается кончика пениса.
* '''Нижние вкладки.''' Это разные панели с полезной информацией о состоянии репозитория.
+
* '''Нижние закладки''' Это разные закладки рангом пониже. Полные лохи - их лишь используют как тряпку ебаную
** '''Состояние файлов''' - все изменения, которые были внесены в файлы, которые содержаться в репозитории, но еще не зафиксированы. Если залезть сейчас внутрь папки репозитория и поменять любой файл, то изменения появятся в этой закладке.
+
** '''Невероятный отсос''' - стимуляция пеениса языком с последующим заглотом
** '''Журнал/История''' - история изменений, все коммиты по всем отслеживаемым веткам. На скриншоте видно очень много веток - потому что это Baystation12, там каждый разработчик создает свою ветку, а потом они мержатся в основную. Каждая строчка - это отдельный коммит, со своим автором, номером, датой и описанием. Выбрав конкретный коммит, снизу можно посмотреть список измененных файлов и конкретные изменения каждого файла. Также там есть полное описание коммита, которое могло не поместится в строчке выше и дополнительная информация.
+
** '''>Эпикус'' - Чувак час страдал, выдумывал, что бы такого написать. Я за минуту откатил 2 кликами и забанил. Э - эффективность.
* '''Левая панель.''' Содержит список всех веток в репозитории, внешних веток, меток и спрятанных изменений. Ветки - это просто наборы коммитов, разные ветки истории изменений, по сути. То есть начиная с некоторого состояния репозитория, например, 12 марта, два разработчика начали параллельно вносить какие-то изменения. Удобно, если каждый будет создавать новые коммиты в своей отдельной ветке, тогда их изменения не будут перемешиваться, а когда они закончат - можно будет удобно слить их в одну основную ветку.
+
* '''Леваки.''' - пидорасы все
* '''Верхняя панель.''' Главные кнопки для работы с репозиторием.
+
** '''Заебать''' - В жопу ебать таким образом что аж заебался
** '''Закоммитить''' - создать новый коммит. Эта кнопка соберет все изменения, которые были внесены, спросит описание изменений и создаст новый коммит, который сразу окажется в локальном репозитории. Пока коммит хранится только локально у тебя, можно его изменять и даже удалять, но как только ты его отправишь в основной репозиторий на сервере GitHub, удалить его уже будет нельзя. Так что не стоит сразу пушить все свои коммиты на сервер, 10 раз подумай, не сохранил ли ты случайно какой-нибудь мусор, или, хуже, личную информацию, которую не хотел бы раскрывать.
+
** '''Марксизм''' - философское, экономическое и политическое учение, основанное Анальным Карлом и Фридрихом Энгейсом. Существуют различные интерпретации учения Маркса, связанные с различными политическими партиями и движениями в общественной мысли и политической практике. Политический марксизм является одним из вариантов социализма наряду с левым анархизмом
** '''Отправить''' - отправить все коммиты, которые были сохранены локально в удаленный репозиторий, например, в репозиторий сервера на GitHub. В диалоге можно будет выбрать какую конкретно ветку отправить в какую ветку в каком удаленном репозитории, если у тебя там много вариантов.
+
** '''Получить''' - по ебалу
** '''Получить''' - скачать все коммиты с удаленного сервера к себе в локальный репозиторий. Коммиты переезжают из конкретной удаленной ветки в конкретную локальную ветку. Да, автоматически ничего обновляться не будет, так что перед началом работы над новым коммитом, лучше скачай все изменения из репозитория сервера этой кнопкой.
+
** '''Извлечь''' - пули с пятой точки
** '''Извлечь''' - получает только информацию о том, есть ли на сервере новые коммиты. То есть ты увидишь новые коммиты в удаленных ветках, но локальные ветки останутся без изменений.
+
** '''Ветка''' - деревянное
** '''Ветка''' - создать новую ветку, начиная с текущего коммита.
+
** '''Слияние''' - рампоча и эпикуса приведёт к созданию монстра ебаного
** '''Слияние''' - сливаем две ветки в одну. Все коммиты из обеих веток будут выстроены в истории по времени, а в конце будет добавлен новый мерж-коммит, в котором можно будет разрешить все конфликты, если они будут. Конфликт - это когда в разных ветках трогали одни и те же строчки одних и тех же файлов. Чтобы решить такой конфликт - надо выбрать какие варианты должны войти в итоговый результат.
+
** '''Спрятать хуй''' - Основное свойство и главный геймплей прекрасной игры Space Station 13 Космическая станция 13 КС13 СС13. Позволяет высовывать или заправить хуй в штаны себе обратно, чтобы не вызвать подозрений.
** '''Спрятать''' - прячем все текущие изменения под каким-то названием, с возможностью их потом вытащить. Иногда бывает удобнее, чем плодить ветки.
+
** '''анал''' - порвался ещё в самом начале
** '''Терминал''' - откроет консольное окно, куда можно будет вбивать сырые команды Git. Иногда бывает полезно, если ты хочешь сделать какую-то сложную штуку, которую либо не завезли в интерфейс, либо ты не знаешь где ее искать.
     −
== Твой первый коммит ==
+
== Твой первый секс ==
    
[[Файл:SourceTree_Commit.png|thumb|right|Интерфейс создания нового коммита в SourceTree]]
 
[[Файл:SourceTree_Commit.png|thumb|right|Интерфейс создания нового коммита в SourceTree]]
Строка 80: Строка 87:  
Как только мы определились с теми изменениями, которые нужно включить в коммит, пишем в окне снизу описание коммита и нажимаем закоммитить. Коммит сразу окажется в истории локальной ветки коммитов, чтобы отправить его в удаленный репозиторий сервера, нужно нажать сверху кнопку "Отправить" и выбрать конкретную ветку, в которую нужно запихать наши новые коммиты.
 
Как только мы определились с теми изменениями, которые нужно включить в коммит, пишем в окне снизу описание коммита и нажимаем закоммитить. Коммит сразу окажется в истории локальной ветки коммитов, чтобы отправить его в удаленный репозиторий сервера, нужно нажать сверху кнопку "Отправить" и выбрать конкретную ветку, в которую нужно запихать наши новые коммиты.
   −
=== Создаем Pull Request на GitHub ===
+
Поздравляю, вы лишились своей анальной девственности. Продолжайте в том же духе, и вы сможете стать как наш лидер, любящий очень большие носы ммммммммммммм бляяяяя
 +
 
 +
=== Создаем Pull Anal на GitHub ===
 +
 
 +
Отправить свою сперму напрямую в чью-то маму в ShitHub'e тебе, скорее всего, не дадут. Для внесения своих изменений в чужие мамы, на ShitHub придумали способ тянуть за анал, необходимо купить такую возможность всего за 1000 рублей в месяц.
 +
 
 +
Чтобы клонировать репозиторий к себе на аккаунт, нужно нажать кнопку Fork в интерфейсе страницы репозитория на ShitHub'e. Как я буду вилкой-то чистить? Чё, совсем мудак, что ли? Покажи мне, как я буду чистить-то, ёпта!
 +
 
 +
Ну и наконец, чтобы потянуть за анус, идем в основной репозиторий сервера, нажимаем на кнопку дранус. Выбираем основную вену в руке, колим содержимое шприца, указываем соответствующую ветку в твоем внешнем репозитории на аккаунте, ловим кайфарик.
   −
Отправить свои коммиты напрямую в репозиторий сервера на GitHub'e тебе, скорее всего, не дадут. Для внесения своих изменений в чужие репозитории, на GitHub придумали Pull Request'ы, запросы на забор кода из твоего репозитория. Чтобы создать такой запрос, тебе нужно (1) клонировать исходный репозиторий, создав новую копию под своим аккаунтом на GitHub; (2) внести коммиты с локального репозитория у тебя на компьютере, в этот новый репозиторий на GitHub, под твоим аккаунтом; (3) сделать запрос на забор кода из твоего репозитория GitHub в репозиторий сервера.
+
= Фокусы любого анального волшебника =
   −
Чтобы клонировать репозиторий к себе на аккаунт, нужно нажать кнопку Fork в интерфейсе страницы репозитория на GitHub'e. У тебя в профиле появится новый репозиторий, полная копия основного, в который ты сможешь заливать свои изменения. Обрати внимание, что в него не будут автоматически добавляться изменения из основного репозитория - нужно будет обновлять руками. Чтобы добавить коммиты, которые уже есть в локальной истории у тебя на компьютере, в этот репозиторий, нужно в SourceTree добавить новый внешний репозиторий и пушить в одну из его веток. Лучше для каждого нового набора изменений создавать на внешнем репозитории новую ветку, чтобы не мешать тематически разные изменения и создавать для них отдельные Pull Request'ы.
+
== Высовываем хрустальный шар из своего гудка ==
   −
Ну и наконец, чтобы сделать сам Pull Request, идем в основной репозиторий сервера, нажимаем соответствующую кнопку. Выбираем основную ветку репозитория сервера (в нее будем заливать изменения), а для ветки из которой нужно забрать коммиты, указываем соответствующую ветку в твоем внешнем репозитории на аккаунте.
+
Очень сука часто нахуй волшебники пидорские ебутся в свои волосатые епта жопы блять, который охуеть будет нихуево макс иди нахуй понятным любому нахуй, кто сука на него посмотрит. Простой ебаный способ блядь делать нахуй правильные PR'ы епта:
   −
= Фокусы любого приличного волшебника =
+
# Перед блядь тем нахуй как сука ты пидор начал нахуй что-либо сука делать, обнови нахуй основную ветку анального локального терминального репозитория, забрав сука все нахуй новые блядь коммиты блядь из ебаного основного сука репозитория нахуй сервера блять на GitHub'е епта. Сразу блядь отправь нахуй все эти новые коммиты блять в свой внешний репозиторий ебаный на ShitHub епта (ты же сука еще помнишь нахуй, что он сука не обновляется автоматически нихуя?).
 +
# Создай новую ветку, в верхушке ЗАЛУПЫ. Лучше назови ее Gaysex, чтобы было понятно, чем ты собираешься в ней заниматься. Все свои коммиты можешь в мусорку выкинуть лоооооол
 +
# Если ты кончил без презерватива, тебе пиздец нахуй! Если забивать на этот пункт, то придётся платить алименты до конца своих дней.
 +
# Если у тебя очень много коммитов или у них не достаточно понятное описание - мягко сядь на туалет и начни срать жёстко. Сразу после похода в туалет вся твоя размазня на стенках туалета останутся проиндексированными, но говно будет сброшено. Сдергиваешь туалет и стираешь за собой ёршиком так чисти чисти нахуй
 +
# Отправляй свои изменения прямо в пизду и нахуй через кишечник рот желудок легкие Афганистан
 +
# ты сука
 +
# Если все хорошо, то твой член просто примут и все, но так бывает очень редко. Скорее всего, у принимающего в жоп будут какие-то вопросы по поводу того, почему твой хуй внезапно оказался в говне, тогда после того, как ты его помоешь, желательно '''мягко'''устроить пробитие, сказать что-нибудь от души, а потом перезалить мочевой пузырь, чтобы обновить cumмиты на ShitHub'e и обоссаться на месте. Цыгане что-ли? Ненавижу блядь цыган.
   −
== Создаем чистые Pull Request'ы ==
+
= БЫДЛО ЁБАННОЕ блЯ ПИСАЛО ЭТУ СТАТЬЮ=
   −
Очень часто у новичков возникают проблемы с тем, чтобы сделать чистый Pull Request, который будет максимально понятным любому, кто на него посмотрит. Простой способ делать правильные PR'ы:
+
ребята вы жрали?
   −
# Перед тем как ты начал что-либо делать, обнови основную ветку локального репозитория, забрав все новые коммиты из основного репозитория сервера на GitHub'е. Сразу отправь все эти новые коммиты в свой внешний репозиторий на GitHub (ты же еще помнишь, что он не обновляется автоматически?).
+
= статья воняет =
# Создай новую ветку, в верхушке основной ветки локального репозитория. Лучше назови ее как-нибудь так, чтобы было понятно, чем ты собираешься в ней заниматься. Все свои коммиты на эту тему пиши прямо в эту ветку.
  −
# Если ты закончил и внес все изменения, какие хотел, обязательно скомпилируй билд и проверь на локальном сервере, что все работает так, как должно! Если забивать на этот пункт, то твои ПРы любой адекватный админ будет принимать очень и очень долго.
  −
# Если у тебя очень много коммитов или у них не достаточно понятное описание - мягко откати все свои коммиты до последнего не-твоего коммита (ПКМ по первому коммиту сверху, который сделал не ты; "сбросить состояние текущей ветку к выбранному коммиту"; режим выбираем мягкий, чтобы сохранить все изменения, сбросив лишь фиксации). Сразу после отката все твои изменения останутся проиндексированными в списке изменений, но коммиты будут сброшены. Создаешь новый красивый коммит с хорошим описанием.
  −
# Отправляй свои изменения в свой внешний репозиторий, в ветку с таким же названием. Уже в этой ветке откатить ничего не получится, потому что она хранится на GitHub. Но на самом деле, это временная ветка, которая нужна лишь для того, чтобы прикрепить ее к Pull Request'у. Так как все твои изменения всегда будут у тебя на компьютере локально, ты всегда можешь удалить эту ветку и создать заново, чтобы сделать историю коммитов чистой. В этой ветке, желательно, всегда иметь хорошие коммиты, с нормальным описанием, которые логически разбиты на этапы внесения изменений.
  −
# Создаем сам Pull Request, привязывая к нему нашу ветку с идеальными описаниями коммитов. В описании обязательно стоит описать все изменения, которые были проделаны в ветке, даже если все подробно описано в самих коммитах - отсюда потом удобно будет скопировать изменения, например, в внутриигровой changelog.
  −
# Если все хорошо, то твой PR просто примут и все, но так бывает очень редко. Скорее всего, у принимающего будут какие-то вопросы и пожелания по изменениям, тогда после того, как ты внесешь изменения, желательно '''мягко''' отменить последний коммит локально, пересоздать его с дополнительными изменениями, а потом перезалить внешнюю ветку, чтобы обновить коммиты на GitHub'e. PR должен автоматически подобрать новую ветку (ну или там можно руками выбрать новую ветку), так что его пересоздавать не нужно!
     −
= Сервер - это легко =
+
= ДЕРЖИ РОВНО ФРАЕР =
8

правок