Git Checkout
Son güncelleme
git checkout, deponuz içinde gezinmek için kullanılan klasik komuttur - dal değiştirme, -b ile dal oluşturma, belirli bir commit'e geçme veya bir dosyayı geri yükleme. Çok iş yapar, bu yüzden Git'in daha yeni sürümleri görevlerini git switch (dallar) ve git restore (dosyalar) olarak ikiye ayırdı. Her iki biçim de hâlâ çalışır.
Bunları terminal playground'da deneyin - tarayıcınızda gerçek bir kabuk, kuracak hiçbir şey yok.
Söz dizimi
| Command | What it does |
|---|---|
git checkout main | Var olan bir dala geç |
git checkout -b feature | Yeni bir dal oluştur ve ona geç |
git checkout <hash> | Belirli bir commit'e geç (ayrık HEAD) |
git checkout -- file.txt | Bir dosyadaki değişiklikleri at (geri yükle) |
git checkout main -- file.txt | Bir dosyayı başka bir daldan geri yükle |
checkout vs switch vs restore
| Task | Old (checkout) | Modern |
|---|---|---|
| Dal değiştir | git checkout main | git switch main |
| Oluştur + geç | git checkout -b x | git switch -c x |
| Dosya değişikliklerini at | git checkout -- f | git restore f |
Git checkout SSS
git checkout ne yapar?
Sizi depo içinde hareket ettirir. En sık dal değiştirir (
git checkout main), ancak bir dal da oluşturabilir (-b), belirli bir commit'e geçebilir veya bir dosyayı önceki bir sürüme geri yükleyebilir. Birkaç farklı görevi yerine getirdiği için modern Git, bunları ayırmak amacıyla git switch ve git restore komutlarını tanıttı.git checkout ile git switch arasındaki fark nedir?
git switch, yalnızca dal değiştiren (ve -c ile dal oluşturan) daha yeni, odaklı bir komuttur - daha açık ve yanlış kullanması daha zordur. git checkout ise bunun yanı sıra dosyaları geri yükler ve commit'lere geçer. Dal işleri için git switch main ile git checkout main eşdeğerdir; ekibinizin tercih ettiğini kullanın.Belirli bir commit'e nasıl geçerim?
git checkout <hash> komutunu çalıştırın. Bu sizi "ayrık HEAD" durumuna sokar - o commit'i görüntülüyorsunuz ama herhangi bir dalda değilsiniz. Oradaki çalışmayı korumak için bir dal oluşturun: git switch -c newbranch. Geri dönmek için git switch main ile tekrar bir dala geçin.checkout ile bir dosyadaki değişiklikleri nasıl atarım?
O dosyadaki commit'lenmemiş değişiklikleri atmak ve son commit'lenen sürümü geri yüklemek için
git checkout -- file.txt komutunu çalıştırın. Modern Git'te daha açık eşdeğeri git restore file.txt'dir. Her ikisi de düzenlemelerinizi atar, bu yüzden onlara ihtiyacınız olmadığından emin olun.Bunu çevrimiçi olarak deneyebilir miyim?
Evet.
git checkout komutunu tarayıcınızdaki gerçek bir kabukta çalıştırmak için terminal playground'u açın - kuracak hiçbir şey yok. Coddy'nin ücretsiz interaktif Git kursu da dal oluşturmayı ve dal değiştirmeyi adım adım ele alır.