Ubuntu 20'de Git'te Önceki Bir Taahhüde Geri Dönme Yöntemi.04:
Git'te Ubuntu 20'de önceki bir işleme geri dönme yöntemini size açıklamak için.04, örnek bir senaryo tasarladık. Bu senaryoda, önce abc adlı zaten var olan bir dosyayı değiştireceğiz.Txt. Ayrıca, Stash1 adlı test proje depomuzda iki dosyamız daha var.txt ve Stash2.Daha önce taahhüt etmediğimiz txt. Yani, tüm bu değişiklikleri bir kerede taahhüt edeceğiz. Sonra bir önceki duruma dönmeye çalışacağız i.e. Stash1 dosyalarının da olmadığı bir durum.txt ve Stash2.txt ne de abc dosyası var.robots.txt değiştirildi. Bu senaryoyu daha fazla detaylandırmak için aşağıdaki adımlarda size yol göstermek istiyoruz:
Adım # 1: Git Proje Dizininize geçin:
Öncelikle Git proje depomuzun bulunduğu dizine aşağıda gösterildiği şekilde gideceğiz:
cd /home/kbuzdar/simplegit-progit
Bu komut yürütüldüğünde, aşağıdaki resimde gösterildiği gibi terminalinizin varsayılan yolunu değiştirecektir:
Adım # 2: Git Proje Dizininizin İçeriğini listeleyin:
Şimdi, hangi dosyaların zaten orada olduğunu görmek için test proje havuzumuzun içeriğini listeleyeceğiz. Git proje havuzumuzun içeriği aşağıda belirtilen komut kullanılarak listelenebilir:
ls
Git proje depomuzun içeriği aşağıdaki resimde gösterilmektedir:
Adım # 3: Git Proje Dizininizdeki herhangi bir Dosyayı Açın ve Değiştirin:
abc dosyasını seçtik.Değişiklik için Git proje depomuzdan robots.txt. Şimdi bu dosyayı nano düzenleyici ile aşağıda gösterildiği şekilde açacağız:
sudo nano abc.Txt
Bu dosyanın içinde aşağıdaki resimde gösterildiği gibi rastgele bir metin var:
Bu metni, aşağıdaki resimde gösterildiği gibi içine “değil” ekleyerek değiştireceğiz. Bu değişikliği yaptıktan sonra abc dosyamızı kaydederken nano düzenleyiciden çıkacağız.Txt.
Adım # 4: Git Proje Deponuzu yeniden başlatın:
İstenen tüm değişiklikleri yaptıktan sonra aşağıdaki komut yardımıyla Git proje depomuzu yeniden başlatmamız gerekiyor:
git init
Bu komutu yürüttükten sonra Git, terminalinizde aşağıdaki resimde gösterilen mesajı görüntülerken yeniden başlatılacaktır:
Adım # 5: Değişiklikleri Git Proje Deponuza Ekleyin:
Şimdi, aşağıdaki komutu yürüterek değişiklikleri Git proje depomuza eklememiz gerekiyor:
git ekle.
Bu komutun başarılı bir şekilde yürütülmesi Ubuntu 20'mizde hiçbir şey göstermeyecektir.04 terminali.
Adım #6: Git Proje Deponuzda Yeni Yapılan Değişiklikleri Yapın:
Değişiklikleri Git proje depomuza ekledikten sonra aşağıdaki komutla bu değişiklikleri gerçekleştireceğiz:
git commit -m “Görüntülenecek Mesaj”Burada, bu komut yürütülürken görüntülenmesini istediğiniz asıl mesajla “Görüntülenecek Mesaj” ı değiştirebilirsiniz.
Bu komut yürütüldüğünde, daha önce bağlanmamış olan iki dosyamızın i.e. zula1.txt ve Stash2.txt taahhüt edilecek.
Adım # 7: Git İşlem Geçmişini Kontrol Edin:
Şimdi son taahhüdümüzün günlüğe kaydedilip kaydedilmediğini görmek için Git taahhüt geçmişini kontrol edeceğiz. Git taahhüt geçmişi aşağıdaki komutla kontrol edilebilir:
git log --pretty=oneline
Aşağıdaki resimde gösterilen Git taahhüt geçmişinden, Head'in son taahhüdümüze işaret ettiğini kolayca görebilirsiniz.e. Stash1 dosyalarını taahhüt ettiğimiz işlem.txt, Stash2.txt ve abc.txt (değişiklikten sonra). Ayrıca, bu taahhüdün işlem kimliğini, bu kimliği kullanırken bir sonraki adımda geri alabilmemiz için taahhüt geçmişinden not edeceğiz.
Adım # 8: “git revert” İşlemini gerçekleştirin:
Son işlemimizin işlem kimliğinin ilk beş karakteri 220ac'dir. Bu karakterler, bu taahhüde atıfta bulunmak için kullanılacaktır. Şimdi bu taahhüdü aşağıdaki komutun yardımıyla geri alacağız:
git 220ac geri dön
Bu komut yürütüldüğünde, nano düzenleyicide 220ac işlem kimliğine sahip işleminizin aşağıdaki resimde gösterildiği gibi geri alınacağına dair bir mesaj görüntüleyecektir:
Aşağıdaki resimde gösterildiği gibi terminalinizin tam durumunu görebilmeniz için bu mesajı gördükten sonra Ctrl+X tuşlarına basmanız gerekmektedir. Bu durum bize daha önce yapılan değişikliklerin i.e. abc'nin değiştirilmesi.txt ve Stash1 eklenmesi.txt ve Stash2.txt geri alındı. Bu aynı zamanda artık dosyamızın abc olduğu anlamına gelir.txt önceki duruma geri dönecek i.e. orijinal içeriğini değiştirilmeden temsil edecektir. Ayrıca, Stash1 dosyaları.txt ve Stash2.txt silinmiş olacak.
Adım # 9: Git Taahhüt Geçmişini bir kez daha kontrol edin:
Şimdi mevcut durumu görmek için Git taahhüt geçmişimizi bir kez daha kontrol edeceğiz. Geri alma işlemi başarılı bir şekilde gerçekleştirildiyse, projemizin Başkanı aşağıdaki resimde vurgulandığı gibi bu geri alma işlemine işaret edecektir:
Adım # 10: “git revert” Komutunun başarılı bir şekilde çalışıp çalışmadığını doğrulayın:
Her ne kadar, Head projemizin şu anda "git revert" komutunun düzgün çalıştığını belirtmek için yeterli olan revert işlemine işaret ettiğini gördük. Ancak yine de Git durumunu kontrol ederek bunu sağlayabiliriz. Burada, daha önce orada olanlar gibi işlenecek başka dosya olmayacağını görebileceğiz.e. Stash1 ve Stash2, geri alma işlemi tarafından zaten silindi. Bu nedenle, aşağıdaki resimde gösterildiği gibi kaydedilecek yeni dosya olmayacak:
Ayrıca, Stash1 dosyalarının silinmesini onaylamak için Git proje depomuzun içeriğini listelemeye çalışabiliriz.txt ve Stash2.txt aşağıdaki resimde gösterildiği gibi. Burada dikkat edilmesi gereken bir nokta, Stash1 dosyalarının.txt ve Stash2.Robots.txt, geri alma işlemimiz tarafından silindi, çünkü 220ac işlem kimliğine sahip işlemi gerçekleştirmeden önce, bu iki dosyanın varlığı yoktu. Bu nedenle, bu taahhüdün geri alınması sonucunda bu dosyalar artık mevcut olmayacak. Ancak bu geri alma işleminde geri alma işlemini bir kez daha yapacaksanız i.e. az önce yaptığınız geri alma işleminin etkisini yok etmeye çalışacaksınız, ardından bu iki dosyayı tekrar görebileceksiniz.
Son olarak abc dosyamızı da kontrol edebiliriz.orijinal içeriğiyle geri gelip gelmediğini görmek için robots.txt dosyasını bir kez daha. Bu dosyayı nano düzenleyici ile tekrar açacağız ve aşağıdaki görüntüden bu dosyada daha önce yaptığımız değişikliğin geri alındığını fark edeceksiniz.
Sonuç:
Bu makalede size sunulan ayrıntılı senaryoyu inceleyerek Ubuntu 20'de "git revert" komutunu kullanabileceksiniz.04 çok etkili bir şekilde. Bu komut, "git log" içindeki girişini korurken önceki herhangi bir işlemin etkisini iptal eder, böylece herhangi bir zamanda o işleme rahatlıkla geri dönebilirsiniz. Yani “git revert” komutunun daha önce yapılmış bir komutun tam tersi olan bir işlemi (bir önceki commit’i silmeden) gerçekleştirdiğini söyleyebiliriz. İşte bu yüzden etkisini iptal etmeyi başarır.