![Cennette yapılmış bir eşleşme: Git ve IntelliJ IDEA - 1](https://cdn.codegym.cc/images/article/984d09f2-954b-4477-8439-de0b53537e6a/800.jpeg)
Gerekli girişler:
- Git hakkındaki makalemi okuyun, takip edin ve anlayın . Bu, her şeyin kurulu ve kullanıma hazır olduğundan emin olmanıza yardımcı olacaktır.
- IntelliJ IDEA'yı kurun.
- Tam ustalık elde etmek için bir saatlik kişisel zaman ayırın.
Projeyi yerel olarak klonlayın
Burada iki seçenek vardır:- Halihazırda bir GitHub hesabınız varsa ve daha sonra bir şeyi zorlamak istiyorsanız, projeyi çatallamak ve kendi kopyanızı klonlamak daha iyidir.
- Depomu klonlayın ve her şeyi sunucuya itme yeteneği olmadan her şeyi yerel olarak yapın. Sonuçta burası benim arşivim :)
-
Proje adresini kopyalayın:
-
IntelliJ IDEA'yı açın ve "Sürüm Kontrolünden Al"ı seçin:
-
Proje adresini kopyalayıp yapıştırın:
-
Bir IntelliJ IDEA projesi oluşturmanız istenecektir. Teklifi kabul et:
-
Derleme sistemi olmadığından ve bu, bu makalenin kapsamı dışında olduğundan, Mevcut kaynaklardan proje oluştur'u seçiyoruz :
-
Sonra bu güzel ekranı göreceksiniz:
Artık klonlamayı çözdüğümüze göre, etrafa bir göz atabilirsiniz.
Git kullanıcı arabirimi olarak IntelliJ IDEA'ya ilk bakış
Klonlanan projeye daha yakından bakın: sürüm kontrol sistemi hakkında zaten birçok bilgi edinebilirsiniz. İlk olarak, sol alt köşede Sürüm Kontrol bölmesine sahibiz . Burada tüm yerel değişiklikleri bulabilir ve taahhütlerin bir listesini alabilirsiniz ("git log"a benzer). Log tartışmasına geçelim . Geliştirmenin tam olarak nasıl ilerlediğini anlamamıza yardımcı olan belirli bir görselleştirme var. Örneğin, txt commit'e eklenmiş bir başlıkla yeni bir dalın oluşturulduğunu ve bunun daha sonra ana dalda birleştirildiğini görebilirsiniz . Bir taahhüdü tıklarsanız, sağ köşede taahhütle ilgili tüm bilgileri görebilirsiniz: tüm değişiklikleri ve meta verileri.![Cennet gibi bir eşleşme: Git ve IntelliJ IDEA - 8](https://cdn.codegym.cc/images/article/b386ff85-a7a7-4ba5-937e-081af1b03a07/1024.jpeg)
![Cennette yapılmış bir eşleşme: Git ve IntelliJ IDEA - 9](https://cdn.codegym.cc/images/article/d7553c32-3ebe-4ae4-bbe8-cb7e4010bfd2/1024.jpeg)
![Cennet gibi bir eşleşme: Git ve IntelliJ IDEA - 10](https://cdn.codegym.cc/images/article/5b7c43da-f06d-4c72-99fa-7569654fec3e/1024.jpeg)
![Cennet gibi bir eşleşme: Git ve IntelliJ IDEA - 11](https://cdn.codegym.cc/images/article/5d9bd7d3-d162-430e-acbe-d0702c8c241f/1024.jpeg)
Bir depo ile çalışma
Yararlı kısayol tuşları
Gelecekteki çalışmalar için birkaç çok yararlı kısayol tuşunu hatırlamanız gerekir:- CTRL+T — Uzak havuzdan en son değişiklikleri alın (git çekme).
- CTRL+K — Bir taahhüt oluştur / mevcut tüm değişiklikleri gör. Bu, hem izlenmeyen hem de değiştirilen dosyaları içerir (bunu açıklayan git hakkındaki makaleme bakın) (git commit).
- CTRL+SHIFT+K — Bu, değişiklikleri uzak havuza gönderme komutudur. Yerel olarak oluşturulan ve henüz uzak depoda olmayan tüm taahhütler gönderilir (git push).
- ALT+CTRL+Z — Belirli bir dosyadaki değişiklikleri, yerel depoda oluşturulan son işlemin durumuna geri alın. Sol üst köşede tüm projeyi seçerseniz, tüm dosyalardaki değişiklikleri geri alabilirsiniz.
![Cennet gibi bir eşleşme: Git ve IntelliJ IDEA - 12](https://cdn.codegym.cc/images/article/a80e6367-7319-4cd3-8cbd-2e4237c77ed5/512.jpeg)
Ne istiyoruz?
İşi bitirmek için her yerde kullanılan temel bir senaryoda ustalaşmamız gerekiyor. Amaç, yeni işlevselliği ayrı bir dalda uygulamak ve ardından onu uzak bir depoya iletmektir (daha sonra ana şubeye bir çekme isteği de oluşturmanız gerekir, ancak bu, bu makalenin kapsamı dışındadır). Bunu yapmak için ne gerekli?-
Ana daldaki tüm mevcut değişiklikleri alın (örneğin, "master").
-
Bu ana şubeden işiniz için ayrı bir şube oluşturun.
-
Yeni işlevselliği uygulayın.
-
Ana şubeye gidin ve biz çalışırken herhangi bir yeni değişiklik olup olmadığını kontrol edin. Değilse, o zaman her şey yolunda. Ancak değişiklikler varsa, o zaman aşağıdakileri yaparız: çalışan şubeye gidin ve değişiklikleri ana şubeden bizimkine yeniden temellendirin. Her şey yolunda giderse, o zaman harika. Ancak çatışmaların olması tamamen mümkündür. Olduğu gibi, uzak depoda zaman kaybetmeden önceden çözülebilirler.
Bunu neden yapmanız gerektiğini merak ediyor musunuz? Bu iyi bir davranıştır ve şubenizi yerel depoya gönderdikten sonra çatışmaların oluşmasını önler (tabii ki çatışmaların yine de olma olasılığı vardır, ancak çok daha küçük hale gelir).
- Değişikliklerinizi uzak depoya aktarın.
Değişiklikler uzak sunucudan alınsın mı?
README'ye yeni bir taahhütle bir açıklama ekledim ve bu değişiklikleri almak istiyorum. Hem yerel depoda hem de uzak depoda değişiklikler yapıldıysa, birleştirme ve yeniden temellendirme arasında seçim yapmaya davet ediliriz. birleştirmeyi seçiyoruz. CTRL+T girin :![Cennette yapılmış bir eşleşme: Git ve IntelliJ IDEA - 13](https://cdn.codegym.cc/images/article/390ca798-748b-4e40-ac0c-d16e71901401/1024.jpeg)
![Cennette yapılmış bir eşleşme: Git ve IntelliJ IDEA - 14](https://cdn.codegym.cc/images/article/5664a1ee-37ba-4a00-b1c8-4be0b2537926/1024.jpeg)
Master'a dayalı yeni bir şube oluştur
Burada her şey basit.-
Sağ alt köşeye gidin ve Git: master'ı tıklayın . + Yeni Şube öğesini seçin .
Checkout şubesi onay kutusunu seçili bırakın ve yeni şubenin adını girin. Benim için readme-improver olacak .
![Cennette yapılmış bir eşleşme: Git ve IntelliJ IDEA - 16](https://cdn.codegym.cc/images/article/2673da01-d6ef-44af-81ca-fffe66d9d494/512.jpeg)
Git: master daha sonra Git: readme-improver olarak değişecektir .
Paralel çalışmayı simüle edelim
Çatışmaların ortaya çıkması için, birisinin onları yaratması gerekir :D BENİOKU'yu tarayıcı aracılığıyla yeni bir taahhütle düzenleyeceğim, böylece paralel çalışmayı simüle edeceğim. Sanki ben üzerinde çalışırken biri aynı dosyada değişiklik yapmış gibi. Sonuç bir çatışma olacaktır. 10. satırdan "fully" kelimesini kaldıracağım.İşlevlerimizi uygulayın
Görevimiz BENİOKU'yu değiştirmek ve yeni makaleye bir açıklama eklemek. Yani Git'teki çalışma IntelliJ IDEA'dan geçer. Bunu ekleyin:![Cennette yapılmış bir eşleşme: Git ve IntelliJ IDEA - 17](https://cdn.codegym.cc/images/article/517cfb7e-ab04-4278-94f5-3035d3e70d08/1024.jpeg)
![Cennette yapılmış bir eşleşme: Git ve IntelliJ IDEA - 18](https://cdn.codegym.cc/images/article/ef2c4ca9-ba1c-493f-995f-2a001ecf6480/800.jpeg)
![Cennette yapılmış bir eşleşme: Git ve IntelliJ IDEA - 19](https://cdn.codegym.cc/images/article/68d15321-653c-4530-a28d-0c67c62c4b89/512.jpeg)
Ana dalın değişip değişmediğini kontrol edin
Görevimizi tamamladık. İşe yarıyor. Testler yazdık. Herşey yolunda. Ancak sunucuya göndermeden önce, bu arada ana dalda herhangi bir değişiklik olup olmadığını kontrol etmemiz gerekiyor. Bu nasıl olabilir? Oldukça kolay: Birisi sizden sonra bir görev alıyor ve bu kişi görevi sizin tamamlamanızdan daha hızlı bitiriyor. Yani master şubeye gitmemiz gerekiyor. Bunu yapmak için aşağıdaki ekran görüntüsünde sağ alt köşede gösterileni yapmamız gerekiyor:![Cennet gibi bir eşleşme: Git ve IntelliJ IDEA - 20](https://cdn.codegym.cc/images/article/c7601973-1627-4d9b-a430-601272166442/512.jpeg)
![Cennet gibi bir eşleşme: Git ve IntelliJ IDEA - 21](https://cdn.codegym.cc/images/article/3f63ad3d-0310-4e03-850a-0d26f1f6ccde/1024.jpeg)
![Cennet gibi bir eşleşme: Git ve IntelliJ IDEA - 22](https://cdn.codegym.cc/images/article/dd3f929f-1774-4a7c-a57a-5a8be1749992/512.jpeg)
![Cennette yapılmış bir eşleşme: Git ve IntelliJ IDEA - 23](https://cdn.codegym.cc/images/article/918e1192-0ec0-4d05-9553-1061a491aa38/800.jpeg)
- sizinkini kabul edin — yalnızca beni oku geliştiriciden gelen değişiklikleri kabul edin.
- onlarınkini kabul et — yalnızca anadan gelen değişiklikleri kabul et.
- birleştir — neyi saklamak ve neyi atmak istediğinizi kendiniz seçin.
![Cennette yapılmış bir eşleşme: Git ve IntelliJ IDEA - 24](https://cdn.codegym.cc/images/article/098abe65-1229-42c2-9bde-f5725614ac9a/1080.jpeg)
- Bunlar, beni oku iyileştirmeden gelen değişikliklerdir.
- Birleştirilmiş sonuç. Şimdilik, değişikliklerden önce var olan şey bu.
- Ana daldaki değişiklikler.
![Cennette yapılmış bir eşleşme: Git ve IntelliJ IDEA - 25](https://cdn.codegym.cc/images/article/b4e09c25-234a-4d6e-a520-b5325949eca3/512.jpeg)
Değişiklikleri uzak sunucuya gönder
Bir sonraki adım, değişiklikleri uzak sunucuya iletmek ve bir çekme isteği oluşturmaktır. Bunu yapmak için CTRL+SHIFT+K tuşlarına basmanız yeterlidir . Ardından şunu elde ederiz:![Cennet gibi bir eşleşme: Git ve IntelliJ IDEA - 26](https://cdn.codegym.cc/images/article/835c3cba-9de8-45fc-9636-917053de00bd/800.jpeg)
![Cennette yapılan bir eşleşme: Git ve IntelliJ IDEA - 27](https://cdn.codegym.cc/images/article/5e5bc018-1f66-463f-bf74-dbc10f86d044/512.jpeg)
Bonus kısım
İlk başta, bu makaleye bir çekme isteği oluşturulmasını eklemek istemedim, ancak onsuz tam olarak tamamlanmış sayılmaz. Öyleyse, bir GitHub deposuna gidelim (elbette sizin olan :)) ve GitHub'ın zaten ne istediğimizi bildiğini görüyoruz:![Cennet gibi bir eşleşme: Git ve IntelliJ IDEA - 28](https://cdn.codegym.cc/images/article/9acbd619-3c8d-4015-ac7e-2ebdfd331977/1024.jpeg)
![Cennette yapılmış bir eşleşme: Git ve IntelliJ IDEA - 29](https://cdn.codegym.cc/images/article/22c8a7b5-47b0-4765-95c5-97d7aa6d6474/1024.jpeg)
GO TO FULL VERSION