| Both sides previous revisionPrevious revisionNext revision | Previous revision | 
| ru:develop:guidelines [2014/06/23 00:36]  – [Документация]  valerius2k | ru:develop:guidelines [2018/08/17 14:43] (current)  – [Присылая патчи с исправлениями (FIX THIS!!!)]  valerius | 
|---|
|   * [[http://regina-rexx.sf.net/]] для ReginaREXX |   * [[http://regina-rexx.sf.net/]] для ReginaREXX | 
 |  | 
| Вы можете [[ru:download|загрузить]] нерегулярно обновляемые снапшоты исходников с этого сайта, или самые последние версии с SVN. Исходники osFree находятся на [[http://osfree.svn.sourceforge.net/viewvc/osfree/|Sourceforge SVN]]. Sourceforge также позволяет скачать любую ревизию в виде .tar.gz архива. | Вы можете [[ru:download|загрузить]] нерегулярно обновляемые снапшоты исходников с этого сайта, или самые последние версии из Git. Исходники osFree находятся на [[https://github.com/osfree-project/osfree/|GitHub]]. GitHub также позволяет скачать любую ревизию в виде .tar.gz архива. | 
 |  | 
| Перед сборкой проверьте файлы setvars-<somename>.cmd и <somename>.conf, И поменяйте настройки (в основном, пути к инструментам разработки). После этого откройте сеанс командной строки и запустите setvars-<somename>.cmd и введите | Перед сборкой проверьте файлы setvars-<somename>.cmd и <somename>.conf, И поменяйте настройки (в основном, пути к инструментам разработки). После этого откройте сеанс командной строки и запустите setvars-<somename>.cmd и введите | 
| ==== Дерево каталогов ==== | ==== Дерево каталогов ==== | 
 |  | 
| Посмотрите на код в SVN, для понимания принципа размещения файлов. Обратите внимание, что дерево файлов в SVN osFree состоит из исходных кодов операционной системы и инструментов тулкита. Пожалуйста, НЕ помещайте сюда приложения и инструменты, не соответствующие назначению тулкита. Тулкит это вспомогательные утилиты, собираемые под ту систему, под которой ведется сборка и необходимые для сборки файлов ОС. | Посмотрите на код в Git-репозитории, для понимания принципа размещения файлов. Обратите внимание, что дерево файлов в SVN osFree состоит из исходных кодов операционной системы и инструментов тулкита. Пожалуйста, НЕ помещайте сюда приложения и инструменты, не соответствующие назначению тулкита. Тулкит это вспомогательные утилиты, собираемые под ту систему, под которой ведется сборка и необходимые для сборки файлов ОС. | 
 |  | 
| ==== Глобальные/Общие/Приватные файлы заголовков ==== | ==== Глобальные/Общие/Приватные файлы заголовков ==== | 
 |  | 
| Каждый уровень дерева SVN содержит два стандартных каталога: <code>FIX THIS! Сейчас это немного не так!</code> | Каждый уровень дерева исходных текстов содержит два стандартных каталога: <code>FIX THIS! Сейчас это немного не так!</code> | 
 |  | 
| |//shared//   |Содержит код, общий для данного и более глубокого уровней вложенности каталогов | | |//shared//   |Содержит код, общий для данного и более глубокого уровней вложенности каталогов | | 
| |//include//  |Содержит заголовки для всего выше перечисленного | | |//include//  |Содержит заголовки для всего выше перечисленного | | 
 |  | 
| Каждая часть/уровень ОС должен иметь отдельный префикс (какталог верхнего уровня), позволяющий разработчику легко найти часть ОС, к которой заголовочный/библиотечный файл принадлежит. Например, код, общий для всего дерева исходников, должен включать: | Каждая часть/уровень ОС должен иметь отдельный префикс, позволяющий разработчику легко найти часть ОС, к которой заголовочный/библиотечный файл принадлежит. Например, код, общий для всего дерева исходников, должен включать: | 
 |  | 
| <code c>#include <all_shared.h></code> | <code c>#include <all_shared.h></code> | 
|   * Пользуйтесь мейкфайлами из дерева исходников, не изобретайте свои собственные “велосипеды”. |   * Пользуйтесь мейкфайлами из дерева исходников, не изобретайте свои собственные “велосипеды”. | 
|   * На текущий момент разработка osFree происходит в среде OS/2 (как минимум, Warp 4), но в будущем разработка будет производиться в самой osFree ("self-hosting"). |   * На текущий момент разработка osFree происходит в среде OS/2 (как минимум, Warp 4), но в будущем разработка будет производиться в самой osFree ("self-hosting"). | 
|   * Мы используем SVN для совместной разработки. |   * Мы используем Git для совместной разработки. | 
|   * Мы пользуемся Doxygen и Wiki для документирования своей работы. |   * Мы пользуемся Doxygen и Wiki для документирования своей работы. | 
 |  | 
| ==== Присылая патчи с исправлениями (FIX THIS!!!) ==== | ==== Присылая патчи с исправлениями (ИСПРАВИТЬ!!!) ==== | 
 |  | 
|   * Убедитесь, что ваши патчи удовлетворяют правилам, описанным выше. |   * Убедитесь, что ваши патчи удовлетворяют правилам, описанным выше. | 
|   * Убедитесь, что у вас исходники последней версии,чтобы ваши патчи соответствовали текущей головной ветви (trunk).  |   * Убедитесь, что у вас исходники последней версии,чтобы ваши патчи соответствовали текущей головной ветви (master).  | 
|   * Создавайте ваш патч используя cvs diff -u (if you are using CVS) или diff -u original-file changed-file (если вы используетсе архив с исходниками, или просто изменения к целому дереву файлов, используйте diff -r). В последнем случае, исходный код указывайте первым параметром, и измененный -- вторым.  Тогда все ваши изменения будут добавлены в патч с префиксом "+". |   * Создавайте ваш патч используя git diff если вы используете Git) или diff -u original-file changed-file (если вы используетсе архив с исходниками, или просто изменения к целому дереву файлов, используйте diff -r). В последнем случае, исходный код указывайте первым параметром, и измененный -- вторым.  Тогда все ваши изменения будут добавлены в патч с префиксом "+". | 
|   * Удаляйте из патча все несущественные строки. |   * Удаляйте из патча все несущественные строки. | 
|   * Присылайте патчи в виде прикрепленного к письму файла. Не вставляйте его прямо в тело письма. |   * Присылайте патчи в виде прикрепленного к письму файла. Не вставляйте его прямо в тело письма. |