Genel Bilgi
Kod | BPP257 |
Ad | Sürüm Kontrol Sistemleri |
Dönem | 2024-2025 Eğitim-Öğretim Yılı |
Yarıyıl | 3. Yarıyıl |
Süre (T+U) | 2-0 (T-U) (17 Hafta) |
AKTS | 3 AKTS |
Yerel Kredi | 2 Yerel Kredi |
Eğitim Dil | Türkçe |
Seviye | Ön Lisans Dersi |
Tür | Normal |
Öğretim Şekli | Yüz Yüze Öğretim |
Bilgi Paketi Koordinatörü | Öğr. Gör.Dr. MEHMET İSMAİL SOLMAZ |
Dersin Öğretim Elemanı |
Güncel dönem ders programı henüz yapılmamıştır. |
Dersin Amacı / Hedefi
Bu ders, yazılım geliştirme süreçlerinde temel bir araç olan Git'in etkili kullanımını öğretmeyi hedefler. Katılımcılar, Git'in sunduğu kod geçmişi takibi, sürüm yönetimi, işbirliği ve hata ayıklama gibi avantajlarından yararlanarak modern yazılım geliştirme ortamlarında verimli bir şekilde çalışabileceklerdir. Ders kapsamında Git'in temel ve ileri seviye komutları, GitHub entegrasyonu ve ekip çalışması için en iyi uygulamalar uygulamalı olarak ele alınacaktır.
Dersin İçeriği
Bu ders, yazılım geliştirme süreçlerinde vazgeçilmez olan Git'in temel ve ileri düzey kullanımına odaklanır. Git'in temel kavramları, komutları, iş akışları ve GitHub entegrasyonu ile kod geçmişini takip etme, işbirliği yapma, hata ayıklama ve proje yönetimi becerileri kazandırılır. Teorik bilgilerin yanı sıra uygulamalı alıştırmalar ve projelerle öğrenilenler pekiştirilir.
Dersin Ön Koşulu
Önkoşul yok
Kaynaklar
Ders Sunumları
Notlar
Git Resmi Belgeleri: https://git-scm.com/doc Pro Git: https://git-scm.com/ Git Essentials: https://www.atlassian.com/git/tutorials Git Cheat Sheet: https://www.atlassian.com/git/tutorials/atlassian-git-cheatsheet GitHub Eğitim Merkezi: https://education.github.com/ Git ve GitHub için Başlangıç Rehberi: https://www.atlassian.com/git/tutorials GitHub'da Git Kullanma: https://docs.github.com/en/get-started
Dersin Öğrenme Çıktıları
Sıra | Dersin Öğrenme Çıktıları |
---|---|
ÖÇ01 | Git'in temel kavramlarını (depo, çalışma dizini, sahneleme alanı, commit, branch vb.) açıklar. |
ÖÇ02 | Dağıtılmış versiyon kontrol sisteminin ne olduğunu ve Git'in bu tür bir sistemin nasıl bir örneği olduğunu kavrar. |
ÖÇ03 | Git'in yazılımcı ve yazılım projelerine sağladığı faydaları açıklar. |
ÖÇ04 | Git'i bilgisayarına kurar ve temel komutları (git init, git clone, git add, git commit, git branch, git checkout) kullanır. |
ÖÇ05 | Çalışma dizini ve sahneleme alanı arasındaki farkı açıklar. |
ÖÇ06 | Dosyaları Git deposuna nasıl ekleyeceğini, sileceğini ve değiştireceğini gösterir. |
ÖÇ07 | Git'te yapılan değişiklikleri geri alma ve iptal etme işlemlerini gerçekleştirir. |
ÖÇ08 | Farklı şubelerden gelen değişiklikleri nasıl birleştirebileceğini ve ortaya çıkan çatışmaları nasıl çözebileceğini gösterir. |
ÖÇ09 | Git'te etiketleme ve sürüm oluşturma işlemlerini gerçekleştirir. |
ÖÇ10 | GitHub'ın ne olduğunu ve Git ile nasıl entegre olduğunu açıklar |
ÖÇ11 | GitHub hesabı oluşturur ve bir depo oluşturur. |
ÖÇ12 | Yerel Git deposunu GitHub'a nasıl bağlayacağını gösterir. |
ÖÇ13 | GitHub'da pull istekleri oluşturma ve gözden geçirme işlemlerini gerçekleştirir. |
ÖÇ14 | Bir depoyu nasıl forklayacağını ve forkladığı depodaki değişiklikleri nasıl ana depoya aktaracağını gösterir. |
ÖÇ15 | Git'te karşılaşılabilecek sorunları teşhis eder ve çözümler önerir. |
Program Öğrenme Çıktıları ile İlişkisi
Sıra | Tür | Program Öğrenme Çıktıları | Duzey |
---|---|---|---|
PÖÇ01 | Yetkinlikler - İletişim ve Sosyal Yetkinlik | Sektörel bazda tüm paydaşlarla etkili iletişim kurar. | |
PÖÇ02 | Bilgi - Kuramsal, Olgusal | Bilgisayar yazılımı geliştirmek için gerekli olan, algoritma, sıralı ve eşzamanlı akış mantığını kurabilecek temel bilgilere sahiptir. | |
PÖÇ03 | Yetkinlikler - Alana Özgü Yetkinlik | Mikrodenetleyiciler, gömülü sistemler ve analog/dijital elektronik alanlarında temel düzeyde problemlere yönelik sistemler tasarlar. | |
PÖÇ04 | Yetkinlikler - Alana Özgü Yetkinlik | Bilgi iletişim teknolojileri ile ilgili, mesleğine özgü temel yazılımları kullanır. | 4 |
PÖÇ05 | Yetkinlikler - Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği | Bilgisayar Programcılığı alanındaki yazılımsal ve donanımsal gelişmeleri bağımsız öğrendiklerini uygular. | |
PÖÇ06 | Bilgi - Kuramsal, Olgusal | Bilgisayar Teknolojileri ve Programlama alanında tanımı iyi yapılmış problemlerin çözümü için gerekli olan yöntemleri açıklar. | 1 |
PÖÇ07 | Bilgi - Kuramsal, Olgusal | Web, mobil ve diğer elektronik platformlara özgü yazılım geliştirmek için gerekli temel bilgi düzeyine sahiptir. | |
PÖÇ08 | Beceriler - Bilişsel, Uygulamalı | Masaüstü ve diğer ortamlar için yazılım geliştirir. | 2 |
PÖÇ09 | Yetkinlikler - Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği | Planlanmış bir proje dahilinde, proje geliştirme süreçlerinde, bağımsız veya gruba dahil olarak etkin rol üstlenir. | 5 |
PÖÇ10 | Bilgi - Kuramsal, Olgusal | Proje planlama, geliştirme, uygulama süreçlerini bilir. | 5 |
PÖÇ11 | Yetkinlikler - Alana Özgü Yetkinlik | Bilgisayar ve ağ ortamında veriler ile ilgili saklama, düzenleme, sorgulama, vb. işlemlerini yapar. | 3 |
PÖÇ12 | Yetkinlikler - Alana Özgü Yetkinlik | Öngörülemeyen donanımsal ve yazılımsal sorunları çözme becerisine sahiptir. | |
PÖÇ13 | Beceriler - Bilişsel, Uygulamalı | Çözümlemesi yapılmış ve algoritması hazırlanmış, yazılım bileşenlerini kodlar. | |
PÖÇ14 | Bilgi - Kuramsal, Olgusal | Yazılım geliştirlirken kullanılacak yöntemleri bilir. | 5 |
PÖÇ15 | Yetkinlikler - Öğrenme Yetkinliği | Bilişim teknolojileri alanı ile ilgili güncel yenilik ve gelişmeleri sürekli takip eder. | |
PÖÇ16 | Yetkinlikler - İletişim ve Sosyal Yetkinlik | Bir yabancı dilde sözlü ve yazılı olarak iletişim kurar. | |
PÖÇ17 | Yetkinlikler - İletişim ve Sosyal Yetkinlik | Bilişim teknolojileri mesleğini ile ilgili ahlakı ve etik davranışların gerekliliği olgusuna sahiptir. | |
PÖÇ18 | Yetkinlikler - Alana Özgü Yetkinlik | Alanı ile ilgili, iş güvenliği ilgili gerekli bilince sahiptir. | |
PÖÇ19 | Beceriler - Bilişsel, Uygulamalı | İşletim sistemlerini yönetici özellikleri ile kullanır. | 2 |
PÖÇ20 | Bilgi - Kuramsal, Olgusal | Girişimcilik, kariyer yönetimi, yaşamboyu öğrenme ile ilgili temel bilgilere sahiptir. | |
PÖÇ21 | Yetkinlikler - Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği | Çevre bilincine, çevre duyarlılığına,atık depolama ve güvenliği ile ilgili temel bilgiye sahiptir. |
Haftalık Akış
Hafta | Konu | Ön Hazırlık | Yöntemler |
---|---|---|---|
1 | Git Nedir ve Neden Önemlidir? Dağıtılmış Versiyon Kontrol Sistemleri Nedir? Git'in Temel Kavramları (Depo, Çalışma Dizini, Sahneleme Alanı, Commit, Branch vb.) | Webde Araştırma | Öğretim Yöntemleri: Gösterip Yaptırma |
2 | Git Kurulumu ve Temel Komutlar Çalışma Dizini ve Sahneleme Alanı Arasındaki Farklar Dosyaları Ekleme, Silme ve Değiştirme | Webde Araştırma | Öğretim Yöntemleri: Gösterip Yaptırma |
3 | Git'te Değişiklikleri Geri Alma ve İptal Etme Git'te Değişiklikleri Birleştirme ve Çözme Git'te Etiketleme ve Sürüm Oluşturma | Webde araştırma | Öğretim Yöntemleri: Gösterip Yaptırma |
4 | Git'te Şubeler ve Şube Yönetimi | Webde Araştırma | Öğretim Yöntemleri: Gösterip Yaptırma |
5 | GitHub Nedir ve Neden Kullanılır? GitHub Hesabı Oluşturma ve Bir Depo Oluşturma Yerel Git Deponuzu GitHub'a Bağlama | Webde araştırma | Öğretim Yöntemleri: Gösterip Yaptırma |
6 | GitHub'da Pull İstekleri ve Pull İsteklerinin Gözden Geçirilmesi GitHub'da Forklama ve Birleştirme | Webde araştırma | Öğretim Yöntemleri: Gösterip Yaptırma |
7 | GitHub'da Ekip Çalışması için En İyi Uygulamalar | Webde Araştırma | Öğretim Yöntemleri: Gösterip Yaptırma |
8 | Ara Sınavlar | Konu tekrarı | Ölçme Yöntemleri: Yazılı Sınav |
9 | Git'te Stashing ve Cherry-Picking | Webde Araştırma | Öğretim Yöntemleri: Gösterip Yaptırma |
10 | Git'te Submodüller | Webde araştırma | Öğretim Yöntemleri: Gösterip Yaptırma |
11 | Git'te Büyük Depoları Yönetme | Webde araştırma | Öğretim Yöntemleri: Gösterip Yaptırma |
12 | Git'te GitFlow ve Diğer İş Akışları | Webde araştırma | Öğretim Yöntemleri: Gösterip Yaptırma |
13 | Git'te Gelişmiş Komutlar | Webde araştırma | Öğretim Yöntemleri: Gösterip Yaptırma |
14 | Git'te Sorun Giderme | Webde araştırma | Öğretim Yöntemleri: Gösterip Yaptırma |
15 | Proje Sunumu ve Değerlendirme | Proje hazırlama | Öğretim Yöntemleri: Proje Temelli Öğrenme , Soru-Cevap |
16 | Yarıyıl Sonu Sınavları | Konu tekrarı | Ölçme Yöntemleri: Yazılı Sınav |
17 | Yarıyıl Sonu Sınavları | Konu tekrarı | Ölçme Yöntemleri: Yazılı Sınav |
Öğrenci İş Yükü - AKTS
Çalışmalar | Sayısı | Süresi (Saat) | İş Yükü (Saat) |
---|---|---|---|
Ders ile İlgili Çalışmalar | |||
Ders (Sınav haftaları dahil değildir) | 14 | 2 | 28 |
Sınıf Dışı Ders Çalışma (Ön çalışma, pekiştirme) | 14 | 1 | 14 |
Değerlendirmeler ile İlgili Çalışmalar | |||
Ödev, Proje, Diğer | 1 | 24 | 24 |
Ara Sınavlar (Yazılı, Sözlü, vs.) | 1 | 3 | 3 |
Yarıyıl/Yıl Sonu/Final Sınavı | 1 | 6 | 6 |
Toplam İş Yükü (Saat) | 75 | ||
Toplam İş Yükü / 25 (s) | 3,00 | ||
AKTS | 3 AKTS |