logikus kiterjesztése . A Gitről szóló cikkben leírtam, hogyan kell a Git-tel dolgozni a parancssorban. Ma megmutatom, hogyan kell mindezt megtenni az IntelliJ IDEA-ban. Fejlesztői utam elején a parancssort használtam, és úgy gondoltam, hogy ehhez nincs szükségem grafikus felhasználói felületre. Végül is minden világos volt, ahogy volt... De ez egészen addig a pillanatig volt, amikor elkezdtem használni a Git-et az IntelliJ IDEA-ban... Kezdettől fogva azt akarom mondani, hogy a személyes tapasztalataimat írom le. Az IntelliJ IDEA bármely adott problémája többféleképpen is megoldható. Ha tudsz jobb módszert, mint amit a cikkben leírok, írd meg kommentben, és megbeszéljük.
Szükséges bemenetek:
- Olvassa el, kövesse és értse meg a Gitről szóló cikkemet . Ez segít abban, hogy minden be legyen állítva és használatra kész.
- Telepítse az IntelliJ IDEA-t.
- Szánjon egy óra személyes időt a teljes mesteri képesség eléréséhez.
Klónozza a projektet helyben
Itt két lehetőség van:- Ha már van GitHub-fiókja, és szeretne valamit később leküldeni, jobb, ha elágazza a projektet, és klónozza a saját példányát.
- Klónozza a tárhelyemet, és csináljon mindent helyben, anélkül, hogy az egészet a szerverre küldhetné. Végül is ez az én tárhelyem :)
-
Másolja ki a projekt címét:
![Mennyben készült meccs: Git és IntelliJ IDEA - 2]()
-
Nyissa meg az IntelliJ IDEA alkalmazást, és válassza a "Get from Version Control" lehetőséget:
![Mennyben készült meccs: Git és IntelliJ IDEA - 3]()
-
Másolja és illessze be a projekt címét:
![Mennyben készült meccs: Git és IntelliJ IDEA - 4]()
-
A rendszer felkéri egy IntelliJ IDEA projekt létrehozására. Az ajánlat elfogadása:
![Mennyben készült meccs: Git és IntelliJ IDEA - 5]()
-
Mivel nincs összeállítási rendszer, és ez meghaladja e cikk kereteit, a Projekt létrehozása meglévő forrásokból lehetőséget választjuk :
![Mennyben készült meccs: Git és IntelliJ IDEA - 6]()
-
Ezután ezt a gyönyörű képernyőt fogja látni:
Most, hogy rájöttünk a klónozásra, körülnézhet.
Első pillantás az IntelliJ IDEA-ra Git felhasználói felületként
Vessen egy pillantást a klónozott projektre: már most rengeteg információhoz juthat a verziókezelő rendszerről. Először is a Verzióvezérlő ablaktáblát találjuk a bal alsó sarokban. Itt megtalálja az összes helyi változtatást, és megkapja a véglegesítések listáját (a „git log”-hoz hasonlóan). Térjünk át a Log tárgyalására . Van egy bizonyos vizualizáció, amely segít megérteni, hogy pontosan hogyan haladt a fejlesztés. Például láthatja, hogy egy új ág jött létre a txt véglegesítéshez hozzáadott fejléccel , amelyet aztán egyesítettek a fő ággal. Ha rákattint egy véglegesítésre, a jobb sarokban láthatja a véglegesítéssel kapcsolatos összes információt: annak összes változását és metaadatait.
Ezen kívül láthatja a tényleges változásokat. Azt is látjuk, hogy ott egy konfliktus megoldódott. Az IDEA ezt is remekül mutatja be. Ha duplán kattintunk a véglegesítés során megváltozott fájlra, látni fogjuk, hogyan oldódott meg az ütközés: Megjegyezzük,
hogy a bal és a jobb oldalon ugyanannak a fájlnak a két verziója van, amelyeket egybe kellett egyesíteni. És középen megvan a végső összevont eredmény. Ha egy projektnek sok elágazása, véglegesítése és felhasználója van, külön-külön kell keresnie ág, felhasználó és dátum szerint:
Az utolsó dolog, amit el akarok magyarázni a kezdés előtt, az az, hogy hogyan érthetjük meg, melyik ágban vagyunk. egy perc, hogy rájöjjek... Megtaláltad? Felad? :D A jobb alsó sarokban van egy Git: master feliratú gomb. Ami a „Git:” után következik, az az aktuális ág. Ha rákattint a gombra, sok hasznos dolgot tehet: átválthat másik ágra, létrehozhat újat, átnevez egy meglévőt stb.
Adattárral végzett munka
Hasznos gyorsbillentyűk
A jövőbeni munkához emlékeznie kell néhány nagyon hasznos gyorsbillentyűre:- CTRL+T – Szerezze be a legújabb módosításokat a távoli adattárból (git pull).
- CTRL+K — Végrehajtás létrehozása / az összes jelenlegi módosítás megtekintése. Ez magában foglalja mind a nyomon nem követett, mind a módosított fájlokat (lásd a gitről szóló cikkemet, amely ezt elmagyarázza) (git commit).
- CTRL+SHIFT+K – Ez a parancs a távoli adattárba történő módosítások leküldésére. Minden helyileg létrehozott és még nem a távoli tárolóban lévő commit le lesz küldve (git push).
- ALT+CTRL+Z – Visszagörgetés egy adott fájlban a helyi lerakatban létrehozott utolsó véglegesítés állapotára. Ha a teljes projektet kiválasztja a bal felső sarokban, visszaállíthatja az összes fájl módosításait.
Mit akarunk?
A munka elvégzéséhez el kell sajátítanunk egy mindenhol használt alapforgatókönyvet. A cél az új funkciók megvalósítása egy külön ágban, majd egy távoli tárolóba való leküldése (ekkor a fő ághoz is létre kell hoznia egy lehívási kérelmet, de ez túlmutat jelen cikk hatókörén). Mi szükséges ehhez?-
Szerezze be az összes aktuális változást a fő ágban (például "mester").
-
Ebből a fő ágból hozzon létre egy külön ágat a munkájához.
-
Alkalmazza az új funkciót.
-
Lépjen a fő fiókba, és ellenőrizze, nem történt-e új változás a munka során. Ha nem, akkor minden rendben van. De ha változások történtek, akkor a következőt tesszük: menjünk a működő ágra, és alapozzuk át a változtatásokat a fő ágról a miénkre. Ha minden jól megy, akkor nagyszerű. De teljesen lehetséges, hogy lesznek konfliktusok. Amint megtörténik, ezek egyszerűen megoldhatók előre, anélkül, hogy időt veszítenénk a távoli tárolóban.
Kíváncsi vagy, miért kell ezt megtenned? Jó modorú, és megakadályozza, hogy konfliktusok forduljanak elő, miután az ágat a helyi adattárba tolja (persze van lehetőség, hogy konfliktusok továbbra is előfordulnak, de ez sokkal kisebb lesz).
- Tolja a módosításokat a távoli adattárba.
Változtatásokat kér a távoli szerverről?
Hozzáadtam egy leírást a README-hoz egy új véglegesítéssel, és szeretném megkapni ezeket a változtatásokat. Ha mind a helyi, mind a távoli tárolóban történtek módosítások, akkor választhatunk az összevonás és az újrabázis között. Az egyesülés mellett döntünk. Írja be a CTRL+T billentyűkombinációt :
Most láthatja, hogyan változott a README, azaz a távoli tárolóból húzták be a változtatásokat, és a jobb alsó sarokban láthatja a szerverről érkező változtatások összes részletét.
Hozzon létre egy új ágat a mester alapján
Itt minden egyszerű.-
Lépjen a jobb alsó sarokban, és kattintson a Git: master elemre . Válassza az + Új ág lehetőséget .
![Mennyben készült meccs: Git és IntelliJ IDEA - 15]()
Hagyja bejelölve a Checkout ág jelölőnégyzetét, és írja be az új fiók nevét. Számomra ez a readme-javító lesz .
A Git: master ezután átvált Git: readme-improver -re .
Szimuláljunk párhuzamos munkát
Ahhoz, hogy konfliktusok jelenjenek meg, valakinek létre kell hoznia őket :D A README-t egy új committal fogom szerkeszteni a böngészőn keresztül, így szimulálva a párhuzamos munkát. Mintha valaki változtatásokat végzett volna ugyanabban a fájlban, miközben én dolgoztam rajta. Az eredmény konfliktus lesz. A 10. sorból eltávolítom a „fully” szót.Valósítsa meg funkcionalitásunkat
A mi feladatunk a README megváltoztatása és leírás hozzáadása az új cikkhez. Vagyis a Gitben végzett munka az IntelliJ IDEA-n keresztül megy. Add hozzá ezt:
A változtatások megtörténtek. Most létrehozhatunk egy commit. Nyomd le a CTRL+K billentyűkombinációt , ami a következőket adja:
A commit létrehozása előtt alaposan meg kell vizsgálnunk, mit kínál ez az ablak. Piros nyilakat adtam hozzá, hogy megmutassam, hol kell keresni. Sok érdekes dolog van itt. A Commit Message részben a véglegesítéshez kapcsolódó szöveget írunk. Ezután a létrehozásához a Commit gombra kell kattintanunk. Még mindig nem jöttem rá, hogyan kell ezt gyorsbillentyűvel megtenni. Ha valaki megtudja a módját, kérem, írja meg nekem – ez nagyon boldoggá tenne. Azt írjuk, hogy a README megváltozott, és létrehozzuk a véglegesítést. A bal alsó sarokban egy figyelmeztetés jelenik meg a véglegesítés nevével:
Ellenőrizze, hogy megváltozott-e a fő ág
Feladatunkat teljesítettük. Működik. Teszteket írtunk. Minden rendben. De mielőtt továbbítanánk a szerverre, még ellenőriznünk kell, hogy közben történt-e változás a fő ágban. Hogyan történhetett ez meg? Nagyon könnyen: valaki utánad kap egy feladatot, és az a valaki gyorsabban fejezi be, mint ahogy te befejezed. Tehát a mester ágra kell mennünk. Ehhez azt kell tennünk, ami az alábbi képernyőképen látható a jobb alsó sarokban:
A fő ágban nyomja meg a CTRL+T billentyűkombinációt , hogy a legfrissebb módosításokat lekérje a távoli szerverről. Ha megnézi a változásokat, könnyen láthatja, mi történt:
A „fully” szót eltávolították. Lehet, hogy valaki marketinges úgy döntött, hogy ezt nem szabad így írni, és feladatot adott a fejlesztőknek, hogy frissítsék. Mostantól rendelkezésünkre áll a főág legújabb verziójának helyi példánya. Menjen vissza a readme-improverhez . Most át kell alapoznunk a változtatásokat a fő ágról a miénkre. Ezt tesszük:
Ha mindent helyesen csinált, és követett velem, az eredmény ütközést mutat a README fájlban:
Itt is sok információt kell megértenünk és felszívnunk. Itt látható azon fájlok listája (esetünkben egy fájl), amelyek ütközésben vannak. Három lehetőség közül választhatunk:
- fogadja el a sajátját – csak a readme-improver módosításait fogadja el.
- fogadd el az övéket – csak a mestertől fogadj el változtatásokat.
- összevonás – válassza ki maga, mit szeretne megtartani, és mit dob el.
Itt láthatjuk, hogy három részből áll:
- Ezek a readme-improver változásai.
- Az összevont eredmény. Egyelőre az, ami a változások előtt létezett.
- A változások a fő ágból.
Tessék! Az első konfliktusunkat az IntelliJ IDEA révén oldottuk meg :D
Tolja a módosításokat a távoli szerverre
A következő lépés a módosítások elküldése a távoli kiszolgálóra, és lekérési kérelem létrehozása. Ehhez egyszerűen nyomja meg a CTRL+SHIFT+K billentyűkombinációt . Ezután a következőt kapjuk:
A bal oldalon lesz egy lista azokról a véglegesítésekről, amelyek nem kerültek a távoli tárolóba. A jobb oldalon az összes megváltozott fájl látható. És ez az! Nyomd meg a Push-t és megtapasztalod a boldogságot :) Ha a push sikeres, akkor a jobb alsó sarokban egy ilyen értesítést fogsz látni:
Bónusz rész
Eleinte nem akartam ehhez a cikkhez hozzáadni a pull request létrehozását, de enélkül nem teljesen teljes. Tehát menjünk egy GitHub-tárhelyre (természetesen a tiéd :)), és látjuk, hogy a GitHub már tudja, mit akarunk:
Kattintson az Összehasonlítás és kérés lekérése elemre . Ezután kattintson a Lekérési kérelem létrehozása elemre . Mivel a konfliktusokat előre megoldottuk, most a pull kérelem létrehozásakor azonnal összevonhatjuk:
És ezúttal csak ennyit szerettem volna elmondani. Természetesen csak egy kicsit nyitottam ki neked az ajtót, és mutattam egy kis részt. A többiről akkor fog tanulni, amikor szüksége van rá. Megszoktam, hogy megkérlek, kövess engem a GitHubon, ahol közzéteszem a munkám során használt különféle technológiákat érintő projektjeimet. A közelmúltban személyes sikert értem el: az egyik projektemet több mint száz fejlesztő csillagozta. Hihetetlen az öröm érzése, ha tudod, hogy amit tettél, azt valaki más használja. És jó célra használja.





Most, hogy rájöttünk a klónozásra, körülnézhet.
GO TO FULL VERSION