Your transaction is in progress.
Please Wait...
Course Details
KTO KARATAY UNIVERSITY
Trade and Industry Vocational School
Programme of Computer Programming
Course Details
Course Code Course Name Year Period Semester T+A+L Credit ECTS
03841190 Versioning Tools 2 Spring 4 2+1+0 5 5
Course Type Elective
Course Cycle Associate (Short Cycle) (TQF-HE: Level 5 / QF-EHEA: Short Cycle / EQF-LLL: Level 5)
Course Language Turkish
Methods and Techniques 1. Teorik Anlatım: Konular ders kapsamında teorik olarak anlatılır. Öğrenciler programlamanın temel kavramlarını ve algoritmaların mantığını kavrayabilmeleri için konu anlatımları dinler. 2. Uygulamalı Çalışmalar: Öğrenciler, teorik olarak anlatılan konuların uygulamasını yapmak için ders eğitmeni mentorlüğünde çeşitli örneklerle çalışmalar gerçekleştirir. Kazanımlar elde edilmeye çalışılır. 3. Adım Adım Çözümleme: Karşılaşılan problemler adım adım çözülerek her adımın nasıl işlediği açıklanır. Bu yöntemle öğrencilerin konulara daha hakim olması sağlanır. 4.Gerçek Hayat Örnekleri: Konuların daha iyi anlaşılması için gerçek hayattan örnekler ve problem senaryoları sunulur. Böylece öğrenciler öğrendiklerini pratikte nasıl kullanacağını görür. 5. Laboratuvar Föyleri ve Quizler: Haftalık laboratuvar föyleri ve sınav öncesi quizler ile öğrencilerin ilerlemesi değerlendirilir, konuların anlaşılıp anlaşılmadığı takip edilir.
Mode of Delivery Face to Face
Prerequisites Dersin herhangi bir ön koşulu bulunmamaktadır. Tüm öğrencilere temel seviyeden başlanarak eğitim verilmektedir.
Coordinator -
Instructor(s) Lect. Uğur POLAT
Instructor Assistant(s) -
Course Instructor(s)
Name and Surname Room E-Mail Address Internal Meeting Hours
Lect. Uğur POLAT TSMYO-T213 [email protected] 7860 Monday
15.00-16.00
Course Content
1. Introduction to Version Control and Basic Concepts
2. Git and Basic Commands
3. Branching and Merging
4. Version History and Rollback Operations
5. GitHub and Other Remote Repository Systems
6. Advanced Branching and Merging Operations
7. Git Flow and Other Workflows
8. Tagging and Version Management
9. Conflict Management and Conflict Resolution Techniques
10. Backup, Loading and Security Management
11. Project Management and Code Review Process
12. Term Project and Presentations
Objectives of the Course
The aim of this course is to teach students the basics, working principles and application methods of version control tools used in software development processes. Within the scope of the course, students will get to know the features of centralized and distributed version control systems (e.g. Git and SVN), and will learn about topics such as tracking and recording changes made in the version management process, branching and merging processes.

Students will also learn to manage processes such as code sharing, rollback and conflict resolution by collaborating within the team, and to effectively keep project history under control. At the end of the course, students will be able to create a professional workflow in software development processes by using version control tools in their projects in a safe and orderly manner. This course aims to provide students with a basic competency to be an effective team member in modern software development projects.
Contribution of the Course to Field Teaching
Basic Vocational Courses
Specialization / Field Courses X
Support Courses
Transferable Skills Courses X
Humanities, Communication and Management Skills Courses
Relationships between Course Learning Outcomes and Program Outcomes
Relationship Levels
Lowest Low Medium High Highest
1 2 3 4 5
# Program Learning Outcomes Level
P4 Effectively uses information technologies (software, programs, animations, etc.) related to her/his profession. 5
P1 He/she has basic, current and applied information about his/her profession. 5
P3 He/She follows current developments and practices in his profession and uses them effectively. 5
P5 Has the ability to independently evaluate professional problems and issues with an analytical and critical approach and propose solutions. 4
P6 Can present his/her thoughts effectively through written and verbal communication at the level of knowledge and skills and expresses them in an understandable manner. 3
P9 It has social, scientific, cultural and ethical values in the stages of collecting data related to its field, applying it and announcing the results. 3
P11 Creates algorithms and data structures and performs mathematical calculations. 4
P14 Tests software and fixes bugs. 5
Course Learning Outcomes
Upon the successful completion of this course, students will be able to:
No Learning Outcomes Outcome Relationship Measurement Method **
O1 Knows how to develop algorithms and creates a data structure suitable for the algorithm. P.4.1 1,4,7
O2 Have knowledge about current programming languages. P.4.5 1,4,7
O3 Knows how to use the internet and do research. P.1.2 1,6,7
O4 Can perform basic mathematical analyses related to his/her profession. P.1.3 1,6,7
O5 Must know and use current software development platforms. P.3.2 1,7
O6 Analyzes complex problems and develops solution strategies P.3.4 1,7
O7 Have basic analysis knowledge. P.3.5 1,7
O8 Tests software and fixes bugs. P.5.1 1,4,7
O9 Knows analytical, effective research and solution techniques to identify problems. P.5.2 1,4,7
O10 Evaluates alternative solutions and selects the most appropriate one. P.5.3 1,4,7
O11 Knows how to develop algorithms and creates a data structure appropriate to the algorithm. P.11.1 1,5,6,7
O12 Knows and uses current Information Technology platforms. P.11.2 1,5,6,7
O13 Has knowledge of current programming languages. P.11.3 1,5,6,7
O14 Has knowledge in the field of Digital Systems. P.11.7 1,5,6,7
O15 Tests software and fixes bugs. P.14.1 1,5,6,7
** Written Exam: 1, Oral Exam: 2, Homework: 3, Lab./Exam: 4, Seminar/Presentation: 5, Term Paper: 6, Application: 7
Weekly Detailed Course Contents
Week Topics
1 Introduction to Version Control and Basic Concepts
2 Git and Basic Commands
3 Branching and Merging
4 Version History and Rollbacks
5 GitHub and Other Remote Repository Systems
6 Advanced Branching and Merging Operations
7 Pre-Exam Quiz and General Review
8 Mid-term Exam
9 Git Flow and Other Workflows
10 Tagging and Version Management
11 Conflict Management and Conflict Resolution Techniques
12 Backup, Installation and Security Management
13 Project Management and Code Review Process
14 Term Project and Presentations
15 Pre-Exam Quiz and General Review
16 Final Exam
Textbook or Material
Resources Jon Loeliger ve Matthew McCullough, "Version Control with Git", 2nd Edition
Evaluation Method and Passing Criteria
In-Term Studies Quantity Percentage
Attendance - -
Laboratory - -
Practice - -
Field Study - -
Course Specific Internship (If Any) - -
Homework - -
Presentation - -
Projects 1 20 (%)
Seminar - -
Quiz 2 10 (%)
Listening - -
Midterms 1 30 (%)
Final Exam 1 40 (%)
Total 100 (%)
ECTS / Working Load Table
Quantity Duration Total Work Load
Course Week Number and Time 16 2 32
Out-of-Class Study Time (Pre-study, Library, Reinforcement) 14 4 56
Midterms 1 6 6
Quiz 2 2 4
Homework 0 0 0
Practice 0 0 0
Laboratory 0 0 0
Project 1 32 32
Workshop 0 0 0
Presentation/Seminar Preparation 1 4 4
Fieldwork 0 0 0
Final Exam 1 16 16
Other 0 0 0
Total Work Load: 150
Total Work Load / 30 5
Course ECTS Credits: 5
Course - Learning Outcomes Matrix
Relationship Levels
Lowest Low Medium High Highest
1 2 3 4 5
# Learning Outcomes P1 P3 P4 P5 P11 P14
O1 Knows how to use the internet and do research. 5 - - - - -
O2 Can perform basic mathematical analyses related to his/her profession. 4 - - - - -
O3 Must know and use current software development platforms. - 5 - - - -
O4 Analyzes complex problems and develops solution strategies - 5 - - - -
O5 Have basic analysis knowledge. - 5 - - - -
O6 Knows how to develop algorithms and creates a data structure suitable for the algorithm. - - 5 - - -
O7 Have knowledge about current programming languages. - - 5 - - -
O8 Tests software and fixes bugs. - - - 3 - -
O9 Knows analytical, effective research and solution techniques to identify problems. - - - 5 - -
O10 Evaluates alternative solutions and selects the most appropriate one. - - - 5 - -
O11 Knows how to develop algorithms and creates a data structure appropriate to the algorithm. - - - - 5 -
O12 Knows and uses current Information Technology platforms. - - - - 4 -
O13 Has knowledge of current programming languages. - - - - 5 -
O14 Has knowledge in the field of Digital Systems. - - - - 5 -
O15 Tests software and fixes bugs. - - - - - 5