# 🇬🇧 08 — Commits and history A commit is one saved step: what changed, who changed it, when, and why. ## Writing a good message ``` add VLAN configuration notes fix wrong gateway address in readme remove unused packet capture ``` - One line, present tense, no full stop. - Say *what* the change does, not "update" or "fix stuff". - Longer explanation? Put it in the description box below the summary. ## Committing well - **One idea per commit.** Two unrelated changes are two commits. - **Commit often.** Small steps are easy to review and easy to undo. - **Never commit passwords, keys or tokens.** Removing them later does not remove them from history — you have to change the secret itself. ## Reading history | Where | What you get | |-------|--------------| | **History** button on a folder or file | Every commit that touched it | | A commit's page | The full diff: red removed, green added | | **Blame** on a file | Which commit last changed each line | | **Activity** tab | Contribution graph over time | ## Undoing - **One commit was wrong** → open the commit, press **Revert**. This creates a new commit that undoes it; nothing is erased. - **A file was wrong** → open its history, view the good version, copy the content back and commit. - **A commit is not pushed yet** (working from your computer) → `git commit --amend` to fix the last one before sharing it. ## Comparing Add `/compare/main...my-branch` to a repository URL, or use the **Compare** button, to see every difference between two branches or tags. --- # 🇹🇷 08 — İşlemeler ve geçmiş İşleme, kaydedilmiş tek bir adımdır: ne değişti, kim değiştirdi, ne zaman ve neden. ## İyi mesaj yazma ``` VLAN yapılandırma notları eklendi readme'deki yanlış ağ geçidi düzeltildi kullanılmayan paket kaydı kaldırıldı ``` - Tek satır, nokta yok. - Değişikliğin *ne yaptığını* söyleyin; "güncelleme" ya da "düzeltmeler" demeyin. - Daha uzun anlatım gerekiyorsa özetin altındaki açıklama kutusuna yazın. ## İyi işleme alışkanlıkları - **Her işlemede tek fikir.** İlgisiz iki değişiklik, iki işlemedir. - **Sık işleyin.** Küçük adımlar hem kolay incelenir hem kolay geri alınır. - **Parola, anahtar veya jetonu asla işlemeyin.** Sonradan silmek onları geçmişten kaldırmaz — sırrın kendisini değiştirmeniz gerekir. ## Geçmişi okuma | Nerede | Ne verir | |--------|----------| | Klasör veya dosyadaki **Geçmiş** düğmesi | Ona dokunan tüm işlemeler | | Bir işlemenin sayfası | Tam fark: kırmızı silinen, yeşil eklenen | | Dosyadaki **Blame** | Her satırı en son hangi işlemenin değiştirdiği | | **Aktivite** sekmesi | Zaman içindeki katkı grafiği | ## Geri alma - **Bir işleme yanlıştı** → işlemeyi açıp **Geri Al**'a basın. Onu iptal eden yeni bir işleme oluşur; hiçbir şey silinmez. - **Bir dosya yanlıştı** → geçmişini açın, doğru sürümü görüntüleyin, içeriği geri kopyalayıp işleyin. - **İşleme henüz gönderilmediyse** (bilgisayarınızdan çalışıyorsanız) → paylaşmadan önce `git commit --amend` ile sonuncuyu düzeltin. ## Karşılaştırma Depo adresine `/compare/main...dalim` ekleyin ya da **Karşılaştır** düğmesini kullanın; iki dal veya etiket arasındaki tüm farkı görürsünüz.