<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.3 20210610//EN" "JATS-journalpublishing1-3.dtd">
<article article-type="research-article" dtd-version="1.3" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="ru"><front><journal-meta><journal-id journal-id-type="publisher-id">infojournal</journal-id><journal-title-group><journal-title xml:lang="ru">Информатика и образование</journal-title><trans-title-group xml:lang="en"><trans-title>Informatics and education</trans-title></trans-title-group></journal-title-group><issn pub-type="ppub">0234-0453</issn><issn pub-type="epub">2658-7769</issn><publisher><publisher-name>Publishing House Education and Informatics</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="doi">10.32517/0234-0453-2021-36-4-36-46</article-id><article-id custom-type="elpub" pub-id-type="custom">infojournal-679</article-id><article-categories><subj-group subj-group-type="heading"><subject>Research Article</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="ru"><subject>ИНФОРМАТИЗАЦИЯ ОБРАЗОВАНИЯ</subject></subj-group><subj-group subj-group-type="section-heading" xml:lang="en"><subject>INFORMATIZATION OF EDUCATION</subject></subj-group></article-categories><title-group><article-title>Инструменты для организации взаимодействия преподавателей и студентов с использованием систем контроля версий</article-title><trans-title-group xml:lang="en"><trans-title>Tools for organizing teachers-students interaction using version control systems</trans-title></trans-title-group></title-group><contrib-group><contrib contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0000-0002-0054-9138</contrib-id><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Протасевич</surname><given-names>Ю. А.</given-names></name><name name-style="western" xml:lang="en"><surname>Protasevich</surname><given-names>Yu. A.</given-names></name></name-alternatives><bio xml:lang="ru"><p>Протасевич Юлия Алексеевна - магистрант кафедры программной инженерии, Институт прикладной математики и компьютерных наук.</p><p>634050, Томск, пр-т Ленина, д. 36</p></bio><bio xml:lang="en"><p>Yuliya A. Protasevich, a master student at the Software Engineering Department, Institute of Applied Mathematics and Computer Science.</p><p>634050, Tomsk, prospekt Lenina, 36</p></bio><email xlink:type="simple">protasevich.yuliya@gmail.com</email><xref ref-type="aff" rid="aff-1"/></contrib><contrib contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0000-0002-8170-4290</contrib-id><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Змеев</surname><given-names>О. А.</given-names></name><name name-style="western" xml:lang="en"><surname>Zmeev</surname><given-names>O. A.</given-names></name></name-alternatives><bio xml:lang="ru"><p>Змеев Олег Алексеевич - доктор физико-математических наук, профессор, профессор кафедры программной инженерии, Институт прикладной математики и компьютерных наук.</p><p>634050, Томск, пр-т Ленина, д. 36</p></bio><bio xml:lang="en"><p>Oleg A. Zmeev, Doctor of Sciences (Physics and Mathematics), Professor, Professor at the Software Engineering Department, Institute of Applied Mathematics and Computer Science.</p><p>634050, Tomsk, prospekt Lenina, 36</p></bio><email xlink:type="simple">ozmeyev@gmail.com</email><xref ref-type="aff" rid="aff-1"/></contrib><contrib contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0000-0001-7992-1205</contrib-id><name-alternatives><name name-style="eastern" xml:lang="ru"><surname>Соколов</surname><given-names>Д. А.</given-names></name><name name-style="western" xml:lang="en"><surname>Sokolov</surname><given-names>D. A.</given-names></name></name-alternatives><bio xml:lang="ru"><p>Соколов Данила Александрович - начальник управления цифровых решений.</p><p>634050, Томск, пр-т Ленина, д. 36</p></bio><bio xml:lang="en"><p>Danila A. Sokolov, Head of the Digital Solutions Department.</p><p>634050, Tomsk, prospekt Lenina, 36</p></bio><email xlink:type="simple">danila.sokolov@accounts.tsu.ru</email><xref ref-type="aff" rid="aff-1"/></contrib></contrib-group><aff-alternatives id="aff-1"><aff xml:lang="ru"><institution>Национальный исследовательский Томский государственный университет</institution><country>Россия</country></aff><aff xml:lang="en"><institution>National Research Tomsk State University</institution><country>Russian Federation</country></aff></aff-alternatives><pub-date pub-type="collection"><year>2021</year></pub-date><pub-date pub-type="epub"><day>27</day><month>06</month><year>2021</year></pub-date><volume>0</volume><issue>4</issue><fpage>36</fpage><lpage>46</lpage><permissions><copyright-statement>Copyright &amp;#x00A9; Протасевич Ю.А., Змеев О.А., Соколов Д.А., 2021</copyright-statement><copyright-year>2021</copyright-year><copyright-holder xml:lang="ru">Протасевич Ю.А., Змеев О.А., Соколов Д.А.</copyright-holder><copyright-holder xml:lang="en">Protasevich Y.A., Zmeev O.A., Sokolov D.A.</copyright-holder><license xml:lang="ru" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>Данная работа распространяется под лицензией Creative Commons Attribution 4.0.</license-p></license><license xml:lang="en" license-type="creative-commons-attribution" xlink:href="https://creativecommons.org/licenses/by/4.0/" xlink:type="simple"><license-p>This work is licensed under a Creative Commons Attribution 4.0 License.</license-p></license></permissions><self-uri xlink:href="https://info.infojournal.ru/jour/article/view/679">https://info.infojournal.ru/jour/article/view/679</self-uri><abstract><p>В статье описывается подход к организации взаимодействия преподавателя и студентов на курсах по программированию при использовании системы контроля версий Git. Производится сравнительный анализ различных систем управления Git-репозиториями с целью определения наиболее подходящей для образовательных нужд и доступной системы. На основе опыта различных учебных учреждений, применяющих системы контроля версий на своих курсах, были определены положительные стороны и недостатки использования данных систем при обучении. Учитывая существующие проблемы, было разработано решение на основе системы GitLab. В рамках этого решения предложен способ организации работы преподавателя и студентов в дисциплинах, в которых применяются системы контроля версий. Данный подход предполагает использование GitLab в совокупности с разработанной системой, которая является менеджером по управлению Git-репозиториями и предназначена облегчить работу преподавателя и администратора, автоматизируя выполняемые ими задачи. Основной целью статьи является подробное описание этого подхода: системы ограничения прав участников образовательного процесса, организация и функциональные возможности GitLab, список решаемых задач для каждого участника. Также в статье описана организация работы в созданной системе, показаны ее основные сущности и их взаимосвязи, приведен обзор возможностей, которые предоставляет система.</p></abstract><trans-abstract xml:lang="en"><p>The article describes an approach to organizing the teacher-students interaction in programming courses using the Git version control system. In order to select the most suitable and affordable system for educational needs a comparative analysis of different Git repository management systems was carried out. Based on the experience of various educational institutions that use version control systems in their courses, the advantages and disadvantages of using these systems in teaching were identified. Taking into account the existing problems, a software solution was developed based on the GitLab system. As part of this solution, a method is proposed for organizing the work of a teacher and students in disciplines that use version control systems. This approach implies using both GitLab and additional system, which serves as a manager for Git repositories and is designed to facilitate the work of the teacher and administrator by automating the tasks they perform. The main purpose of the article is a detailed description of this approach: limiting permissions to both teachers and students, GitLab organization and functionality, a list of use cases for each user. The article also presents common workflows of the additional system, its main entities and their relationships and an overview of the features that the system provides.</p></trans-abstract><kwd-group xml:lang="ru"><kwd>автоматизация процесса обучения</kwd><kwd>системы контроля версий</kwd><kwd>Git</kwd><kwd>GitLab</kwd></kwd-group><kwd-group xml:lang="en"><kwd>learning process automation</kwd><kwd>version control systems</kwd><kwd>Git</kwd><kwd>GitLab</kwd></kwd-group></article-meta></front><back><ref-list><title>References</title><ref id="cit1"><label>1</label><citation-alternatives><mixed-citation xml:lang="ru">Алексеевский П. И. Применение средств управления версиями для коллективной работы студентов над проектом компьютерной игры // Педагогическое образование в России. 2012. № 6. С. 51-54. http://journals.uspu.ru/attachments/article/307/Педагогическое%20образование_6_2012_ст.%2009.pdf</mixed-citation><mixed-citation xml:lang="en">Alekseevsky P. I. Primenenie sredstv upravleniya versiyami dlya kollektivnoj raboty studentov nad proektom komp’yuternoj igry [Using version control systems for students’ collaborative work on the computer game development]. Pedagogicheskoe obrazovanie v Rossii — Pedagogical Education in Russia, 2012, no. 6, p. 51-54. (In Russian.) Available at: http://journals.uspu.ru/attachments/article/307/Педагогическое%20образование_6_2012_ст.%2009.pdf</mixed-citation></citation-alternatives></ref><ref id="cit2"><label>2</label><citation-alternatives><mixed-citation xml:lang="ru">git. https://git-scm.com</mixed-citation><mixed-citation xml:lang="en">git. Available at: https://git-scm.com</mixed-citation></citation-alternatives></ref><ref id="cit3"><label>3</label><citation-alternatives><mixed-citation xml:lang="ru">Chacon S., Straub B. Pro Git. NYC: Apress, 2014. 440 p. https://git-scm.com/book/en/v2</mixed-citation><mixed-citation xml:lang="en">Chacon S., Straub B. Pro Git. NYC, Apress, 2014. 440 p. Available at: https://git-scm.com/book/en/v2</mixed-citation></citation-alternatives></ref><ref id="cit4"><label>4</label><citation-alternatives><mixed-citation xml:lang="ru">GitHub. https://github.com</mixed-citation><mixed-citation xml:lang="en">GitHub. Available at: https://github.com</mixed-citation></citation-alternatives></ref><ref id="cit5"><label>5</label><citation-alternatives><mixed-citation xml:lang="ru">GitLab. https://about.gitlab.com</mixed-citation><mixed-citation xml:lang="en">GitLab. Available at: https://about.gitlab.com</mixed-citation></citation-alternatives></ref><ref id="cit6"><label>6</label><citation-alternatives><mixed-citation xml:lang="ru">Bitbucket. https://bitbucket.org</mixed-citation><mixed-citation xml:lang="en">Bitbucket. Available at: https://bitbucket.org</mixed-citation></citation-alternatives></ref><ref id="cit7"><label>7</label><citation-alternatives><mixed-citation xml:lang="ru">Omnibus GitLab Docs. https://docs.gitlab.com/omnibus/</mixed-citation><mixed-citation xml:lang="en">Omnibus GitLab Docs. Available at: https://docs.gitlab.com/omnibus/</mixed-citation></citation-alternatives></ref><ref id="cit8"><label>8</label><citation-alternatives><mixed-citation xml:lang="ru">Kelleher J. Employing git in the classroom // 2014 World Congress on Computer Applications and Information Systems (WCCAIS). IEEE, 2014. P. 1-4. DOI: 10.1109/WCCAIS.2014.6916568</mixed-citation><mixed-citation xml:lang="en">Kelleher J. Employing git in the classroom. 2014 World Congress on Computer Applications and Information Systems (WCCAIS). IEEE, 2014, p. 1-4. DOI: 10.1109/WC-CAIS.2014.6916568</mixed-citation></citation-alternatives></ref><ref id="cit9"><label>9</label><citation-alternatives><mixed-citation xml:lang="ru">Feliciano J., Storey M.-A., Zagalsky A. Student experiences using GitHub in software engineering courses: a case study // ICSE ‘16: Proc. 38th Int. Conf. on Software Engineering Companion. IEEE, 2016. P. 422-431. DOI: 10.1145/2889160.2889195</mixed-citation><mixed-citation xml:lang="en">Feliciano J., Storey M.-A., Zagalsky A. Student experiences using GitHub in software engineering courses: a case study. ICSE ‘16: Proc. 38th Int. Conf. on Software Engineering Companion. IEEE, 2016, p. 422-431. DOI: 10.1145/2889160.2889195</mixed-citation></citation-alternatives></ref><ref id="cit10"><label>10</label><citation-alternatives><mixed-citation xml:lang="ru">Binas M. Version Control System in CS1 course: Practical experience // 2013 IEEE 11th Int. Conf. on Emerging eLearning Technologies and Applications (ICETA). IEEE, 2013. P. 23-28. DOI: 10.1109/ICETA.2013.6674398</mixed-citation><mixed-citation xml:lang="en">Binas M. Version Control System in CS1 course: Practical experience. 2013 IEEE 11th Int. Conf. on Emerging eLearning Technologies and Applications (ICETA). IEEE, 2013, p. 23-28. DOI: 10.1109/ICETA.2013.6674398</mixed-citation></citation-alternatives></ref><ref id="cit11"><label>11</label><citation-alternatives><mixed-citation xml:lang="ru">Francese R, Gravino C, Risi M., Scanniello G. On the experience of using Git-Hub in the context of an academic course for the development of apps for smart devices // The 21st Int. Conf. on Distributed Multimedia Systems. 2015. P. 292-299.</mixed-citation><mixed-citation xml:lang="en">Francese R., Gravino C., Risi M., Scanniello G. On the experience of using Git-Hub in the context of an academic course for the development of apps for smart devices. The lavrskaya rabota po napravleniyu podgotovki: 09.03.04 — Programmnaya inzheneriya [Development of a system for automating the management of Git repositories based on the GitLab system for use in the learning process: graduate bachelor’s work in the field of training: 03/09/04 — Software engineering]. Tomsk, 2019. (In Russian.) Available at: http://vital.lib.tsu.ru/vital/access/manager/Repository/vital:908921st Int. Conf. on Distributed Multimedia Systems. 2015, p. 292-299.</mixed-citation></citation-alternatives></ref><ref id="cit12"><label>12</label><citation-alternatives><mixed-citation xml:lang="ru">Reid K. L., Wilson G. V. Learning by doing: Introducing version control as a way to manage student assignments // SIGCSE ‘05: Proc. 36th ACM technical symposium on Computer science education. ACM, 2005. P. 272-276.</mixed-citation><mixed-citation xml:lang="en">Reid K. L., Wilson G. V. Learning by doing: Introducing version control as a way to manage student assignments. SIGCSE ‘05: Proc. 36th ACM technical symposium on Computer science education. ACM, 2005, p. 272-276.</mixed-citation></citation-alternatives></ref><ref id="cit13"><label>13</label><citation-alternatives><mixed-citation xml:lang="ru">Lawrance J., Jung S, Wiseman C. Git on the cloud in the classroom // SIGCSE ‘13: Proc. 44th ACM technical symposium on Computer science education. ACM, 2013. P. 639-644. DOI: 10.1145/2445196.2445386</mixed-citation><mixed-citation xml:lang="en">Lawrance J., Jung S., Wiseman C. Git on the cloud in the classroom. SIGCSE ‘13: Proc. 44th ACM technical symposium on Computer science education. ACM, 2013, p. 639-644. DOI: 10.1145/2445196.2445386</mixed-citation></citation-alternatives></ref><ref id="cit14"><label>14</label><citation-alternatives><mixed-citation xml:lang="ru">Clifton C., Kaczmarczyk L. C., Mrozek M. Subverting the fundamentals sequence: using version control to enhance course management // ACM SIGCSE Bulletin. 2007. Vol. 39. Is. 1. P. 86-90. DOI: 10.1145/1227504.1227344</mixed-citation><mixed-citation xml:lang="en">Clifton C., Kaczmarczyk L. C., Mrozek M. Subverting the fundamentals sequence: using version control to enhance course management. ACM SIGCSE Bulletin, 2007, vol. 39, is. 1, p. 86-90. DOI: 10.1145/1227504.1227344</mixed-citation></citation-alternatives></ref><ref id="cit15"><label>15</label><citation-alternatives><mixed-citation xml:lang="ru">Zagalsky A., Feliciano J., Storey M.-A., Zhao Y., Wang W. The emergence of GitHub as a collaborative platform for education // CSCW ‘15: Proc. 18th ACM Conf. on Computer Supported Cooperative Work &amp; Social Computing. ACM, 2015. P. 1906-1917. DOI: 10.1145/2675133.2675284</mixed-citation><mixed-citation xml:lang="en">Zagalsky A., Feliciano J., Storey M.-A., Zhao Y., Wang W. The emergence of GitHub as a collaborative platform for education. CSCW ‘15: Proc. 18th ACM Conf. on Computer Supported Cooperative Work &amp; Social Computing. ACM, 2015, p. 1906-1917. DOI: 10.1145/2675133.2675284</mixed-citation></citation-alternatives></ref><ref id="cit16"><label>16</label><citation-alternatives><mixed-citation xml:lang="ru">Valdivia R. G. B. Collaborative learning using git with GitLab in students of the engineering programming course // Proc. of the Int. Congress on Educational and Technology in Sciences. 2019. P. 92-101. http://ceur-ws.org/Vol-2555/paper8.pdf</mixed-citation><mixed-citation xml:lang="en">Valdivia R. G. B. Collaborative learning using git with GitLab in students of the engineering programming course. Proc. of the Int. Congress on Educational and Technology in Sciences. 2019, p. 92-101. Available at: http://ceur-ws.org/Vol-2555/paper8.pdf</mixed-citation></citation-alternatives></ref><ref id="cit17"><label>17</label><citation-alternatives><mixed-citation xml:lang="ru">Сидякин И. М. Применение системы контроля версий GitLab для обучения программированию // Наука и образование: научное издание МГТУ им. Н.Э. Баумана. 2016. № 10. С. 168-179. http://technomag.edu.ru/doc/848154.html</mixed-citation><mixed-citation xml:lang="en">Sidyakin I. M. Primenenie sistemy kontrolya versij GitLab dlya obucheniya programmirovaniyu [Using the Git-Lab version control system to teach programming]. Nauka i obrazovanie: nauchnoe izdanie MGTU im. N.EH. Baumana — Science &amp; Education: Scientific Edition of Bauman MSTU, 2016, no. 10, p. 168-179. (In Russian.) Available at: http://technomag.edu.ru/doc/848154.html</mixed-citation></citation-alternatives></ref><ref id="cit18"><label>18</label><citation-alternatives><mixed-citation xml:lang="ru">Протасевич Ю. А. Разработка системы для автоматизации управления Git-репозиториями на базе системы GitLab для использования в процессе обучения: выпускная бакалаврская работа по направлению подготовки: 09.03.04 — Программная инженерия. Томск, 2019. http://vital.lib.tsu.ru/vital/access/manager/Repository/vital:9089</mixed-citation><mixed-citation xml:lang="en">Protasevich Yu. A. Razrabotka sistemy dlya avtomatizatsii upravleniya Git-repozitoriyami na baze sistemy GitLab dlya ispol’zovaniya v protsesse obucheniya: vypusknaya baka-</mixed-citation></citation-alternatives></ref><ref id="cit19"><label>19</label><citation-alternatives><mixed-citation xml:lang="ru">API Docs // GitLab. https://docs.gitlab.com/ee/api/</mixed-citation><mixed-citation xml:lang="en">API Docs GitLab. Available at: https://docs.gitlab.com/ee/api/</mixed-citation></citation-alternatives></ref><ref id="cit20"><label>20</label><citation-alternatives><mixed-citation xml:lang="ru">libgit2sharp. https://github.com/libgit2/libgit2sharp</mixed-citation><mixed-citation xml:lang="en">libgit2sharp. Available at: https://github.com/lib-git2/libgit2sharp</mixed-citation></citation-alternatives></ref></ref-list><fn-group><fn fn-type="conflict"><p>The authors declare that there are no conflicts of interest present.</p></fn></fn-group></back></article>
