= Добро пожаловать в трекер для сдачи ДЗ по курсу C++ = == Краткое описание того, как пользоваться Subversion == Предположим, что вы получили следующие данные для авторизации в Subversion: - Логин: smal.alexander - Пароль: abracadabra Адрес репозитория будет такой: `http://trac.compscicenter.ru/svn/cpp17/smal.alexander/` (это адрес вашей папки в репозитории). Для того, чтобы загрузить туда своё домашнее задание, совершенно бесполезно открывать соответствующую ссылку в браузере. Для работы с Subversion нужно поставить и использовать клиент. О Subversion и используемых в нём сущностях и понятиях можно прочитать в [http://svnbook.red-bean.com/nightly/ru/index.html данной книге]. - Самый простой способ для Windows пользователей - поставить графический клиент [https://tortoisesvn.net/ TortoiseSVN], с которым всё просто и приятно. Для него доступна [https://tortoisesvn.net/docs/release/TortoiseSVN_ru/index.html документация] на русском языке, в которой описаны [https://tortoisesvn.net/docs/release/TortoiseSVN_ru/tsvn-qs-basics.html основные концепции Subversion], [https://tortoisesvn.net/docs/release/TortoiseSVN_ru/tsvn-dug-checkout.html как сделать выгрузку], [https://tortoisesvn.net/docs/release/TortoiseSVN_ru/tsvn-dug-commit.html как добавить файлы и закоммитить в репозиторий], [https://tortoisesvn.net/docs/release/TortoiseSVN_ru/tsvn-dug-wcstatus.html как понять текущее состояние репозитория]. - Если у Вас не Windows или вы хотите всё делать из консоли, то смело ставьте консольный клиент (например, `sudo apt-get install subversion` на Debian-based дистрибутиве Linux). Для консольного клиента доступно [http://svnbook.red-bean.com/nightly/ru/index.html руководство по использованию] на русском языке, в котором описаны [http://svnbook.red-bean.com/nightly/ru/svn.basic.html фундаментальные понятия], [http://svnbook.red-bean.com/nightly/ru/svn.tour.initial.html как сделать выгрузку], [http://svnbook.red-bean.com/nightly/ru/svn.tour.cycle.html как добавить файлы, закоммитить в репозиторий, понять текущее состояние репозитория]. При помощи клиента нужно выгрузить (Checkout) репозиторий - у Вас создастся папка на компьютере. После этого нужно создать внутри папку для домашнего задания. Положить в неё свои файлы. Добавить (Add) папку к репозиторию. Сделать коммит (Commit) изменений на сервер. ВНИМАНИЕ: не стоит добавлять в репозиторий лишние файлы, такие как бинарные файлы или служебные файлы вашей IDE. Для консольных пользователей последовательность команд должна быть примерно такой: {{{ $ svn checkout http://trac.compscicenter.ru/svn/cpp17/smal.alexander/ --username smal.alexander [ вводите пароль ] $ cd smal.alexander $ mkdir ha1 [ кладёте в ha1 свои .cpp и .hpp файлы + Makefile ] $ svn add ha1 $ svn commit -m "Home assignment #1" [ теперь добавленные файлы доступны на сервере ] [ предположим, теперь нужно исправить ошибку в ha1/main.cpp ] [ вносите исправления в ha1/main.cpp ] $ svn add ha1/main.cpp $ svn commit -m "Fix main function" [ исправления отправлены на сервер ] }}} == Алгоритм сдачи домашнего задания == 1. Проверяете, что ваше решение '''компилируется''', '''работает''' и удовлетворяет описанию конкретного домашнего задания и [https://www.dropbox.com/s/kekzwabds27so7a/rules.pdf?dl=0 общим рекомендациям]. 2. Делаете commit в репозиторий. 3. Создаёте ticket с просьбой о проверке. В поле владельца тикета должно быть '''rutsky,grabovoy.philipp''' (заполнено по умолчанию). В тикете указываете milestone, к которому вы сдаёте, а также тип тикета '''ожидается проверка''' (текущее состояние тикета). 4. Ждёте ответа =) Не забудьте указать свой email в настройках для получения уведомлений. 5. Преподаватель проверяет вашу работу и выписывает замечания в тикете. Если задача зачтена, тикет закрывается со статусом '''задача сдана'''. Конец. Если задача не зачтена и время последней проверки истекло, тикет закрывается со статусом '''задача НЕ зачтена'''. Конец. Если задача не зачтена, но время последней проверки не истекло, у тикета меняется тип на '''ожидаются исправления''' и указывается milestone после которого будет производится проверка. 6. Вы исправляете ошибки и замечания, делаете commit в репозиторий. Если есть вопросы по решению или проверке, их необходимо задать в комментарии к тикету. 7. Когда вы считаете, что ваше решение можно проверять, меняете тип тикета на '''ожидается проверка'''. Переходите к шагу 5. Каждая задача сдаётся в отдельном тикете. Все исправления, вопросы и замечания по одной и той же задаче оформляются в одном и том же тикете. == Starting Points == * TracGuide -- Built-in Documentation * [http://trac.edgewall.org/ The Trac project] -- Trac Open Source Project * [http://trac.edgewall.org/wiki/TracFaq Trac FAQ] -- Frequently Asked Questions * TracSupport -- Trac Support For a complete list of local wiki pages, see TitleIndex.