Git

Hogyan térhetek vissza egy korábbi kötelezettségvállalásra a Git-ben?

Hogyan térhetek vissza egy korábbi kötelezettségvállalásra a Git-ben?
A „git revert” parancs elképesztően hasznos műveletet hajt végre a Git környezetben. Időnként visszavonja az egyszer végrehajtott változtatásokat anélkül, hogy valóban eltávolítaná ezeket a módosításokat a „git naplóból”, hogy a jövőben bármikor újra elvégezhesse azokat, amikor csak akarja. A „git revert” parancs pontosan lehetővé teszi ezt. Ez azt jelenti, hogy bármely korábbi elkötelezettség hatását egyszerűen semmissé vagy semmissé teheti anélkül, hogy valóban eltávolítaná azt a Git-előzményekből. Ezért ennek a cikknek az a célja, hogy megtanítsa, hogyan térhet vissza egy korábbi elkötelezettségre a Gitben az Ubuntu 20-ban.04.

Módszer a Git korábbi elkötelezettségére való visszatéréshez az Ubuntu 20-ban.04:

Megmagyarázza neked az előző kötelezettségvállalás visszaállításának módszerét a Gitben az Ubuntu 20-ban.04, megterveztünk egy példapéldát. Ebben a forgatókönyvben először egy már létező abc nevű fájlt módosítunk.txt. Stash1 nevű tesztprojekt-tárunkban van két másik fájl is.txt és Stash2.txt, amelyet korábban nem követtünk el. Tehát ezeket a változásokat egyszerre hajtjuk végre. Ezután megpróbálunk visszatérni egy korábbi állapotba i.e. olyan állapot, amelyben egyik sem a Stash1 fájlt tartalmazza.txt és Stash2.A txt nem létezett, és az abc fájl sem.txt módosult. A forgatókönyv további részletezése érdekében szeretnénk végigvezetni a következő lépéseken:

1. lépés: Váltás a Git Project Directory-ra:

Először megyünk abba a könyvtárba, ahol a Git projekt adattárunk található, az alábbiak szerint:

cd / home / kbuzdar / simplegit-progit

Miután ez a parancs végrehajtásra kerül, megváltoztatja a terminál alapértelmezett elérési útját, amint az a következő képen látható:

2. lépés: Sorolja fel a Git Project Directory tartalmát:

Most felsoroljuk a tesztprojekt-tárunk tartalmát, hogy lássuk, mely fájlok vannak már. A Git projekt adattárunk tartalma felsorolható az alább megadott paranccsal:

ls

A Git projekt adattárunk tartalma a következő képen látható:

3. lépés: Nyissa meg és módosítsa a Git Project Directory bármely fájlját:

Kiválasztottuk az abc fájlt.txt a Git projekt lerakatunkból módosítás céljából. Most megnyitjuk ezt a fájlt a nano szerkesztővel az alább látható módon:

sudo nano abc.txt

Ebben a fájlban van véletlenszerű szöveg, amelyet a következő kép mutat:

Ezt a szöveget úgy módosítjuk, hogy „nem” -t adunk hozzá, amint az az alábbi képen látható. A módosítás elvégzése után egyszerűen kilépünk a nano szerkesztőből, miközben mentjük az abc fájlt.txt.

4. lépés: A Git Project-tárház újradializálása:

Az összes kívánt módosítás elvégzése után újra kell inicializálnunk a Git projekt adattárunkat a következő parancs segítségével:

git init

A parancs végrehajtása után a Git újra inicializálja, miközben megjeleníti a terminálon az alábbi képen látható üzenetet:

5. lépés: Adja hozzá a módosításokat a Git Project-tárházhoz:

Most hozzá kell adnunk a módosításokat a Git projekt lerakatunkhoz a következő parancs végrehajtásával:

git add.

A parancs sikeres végrehajtása nem jelenít meg semmit az Ubuntu 20-on.04 terminál.

6. lépés: Végezze el az újonnan végrehajtott változtatásokat a Git Project adattárában:

Miután hozzáadta a módosításokat a Git projekt lerakatunkhoz, ezeket a változásokat a következő paranccsal hajtjuk végre:

git kötelezettség -m „Megjelenítendő üzenet”

Itt megváltoztathatja a „Megjelenítendő üzenet” beállítást azzal a tényleges üzenettel, amelyet meg akar jeleníteni a parancs végrehajtása közben.

Amikor ez a parancs végrehajtásra kerül, akkor észreveszi, hogy a két fájlunk, amelyeket korábban el nem végeztünk i.e. Pillanat1.txt és Stash2.txt lesz elkötelezve.

7. lépés: Ellenőrizze a Git Commit előzményeket:

Most ellenőrizni fogjuk a Git elkötelezettség előzményeit, hogy megnézzük, hogy az utolsó elkötelezettségünket naplózta-e vagy sem. A Git elkövetési előzmények a következő paranccsal ellenőrizhetők:

git napló - szép = oneline

Az alábbi képen látható Git elkötelezettség előzményekből könnyen láthatja, hogy a Fej az utolsó elkötelezettségünkre mutat i.e. az a tranzakció, amelyben a Stash1 fájlokat elkövettük.txt, Stash2.txt és abc.txt (módosítás után). Ezenkívül megjegyezzük az elkötelezettség tranzakcióazonosítóját az elkötelezettség előzményeiből, hogy a következő lépésben visszaállíthassuk, miközben felhasználjuk ezt az azonosítót.

8. lépés: Végezze el a „git revert” műveletet:

Legutóbbi tranzakciónk tranzakcióazonosítójának első öt karaktere 220ac. Ezekkel a karakterekkel fogjuk hivatkozni erre az elkötelezettségre. Most visszavonjuk ezt az elkötelezettséget a következő parancs segítségével:

git revert 220ac

Amikor ez a parancs végrehajtásra kerül, a nano szerkesztőben megjelenik egy üzenet, miszerint a 220ac tranzakcióazonosítóval végzett tranzakciót visszaállítják az alábbi képen látható módon:

Az üzenet megjelenése után nyomja meg a Ctrl + X billentyűkombinációt, hogy a terminál pontos állapotát láthassa, amint az a következő képen látható. Ez az állapot megmondja, hogy a korábban végrehajtott változtatások i.e. az abc módosítása.txt és a Stash1 hozzáadása.txt és Stash2.txt visszaállt. Ez azt is jelenti, hogy most az abc fájlunk.A txt az előző állapotban lesz, i.e. az eredeti tartalmát módosítás nélkül képviseli. Sőt, a fájlok Stash1.txt és Stash2.A txt törlődik.

9. lépés: Még egyszer ellenőrizze a Git Commit előzményeket:

Most még egyszer ellenőrizzük a Git elkötelezettségét, hogy lássuk a jelenlegi helyzetet. Ha a visszavonási műveletet sikeresen végrehajtották, akkor projektünk vezetője erre a visszavonási tranzakcióra mutat, amint az az alábbi képen látható:

10. lépés: Ellenőrizze, hogy a „git revert” parancs sikeresen működött-e vagy sem:

Bár már láttuk, hogy a projektvezetőnk jelenleg a visszavonási tranzakcióra mutat, ami elegendő annak jelzésére, hogy a „git revert” parancs megfelelően működött. A Git állapot ellenőrzésével azonban továbbra is biztosíthatjuk. Itt láthatjuk, hogy nem lesz több olyan fájl, amelyet kötelezően lekötne, mint azokat, amelyek korábban voltak i.e. A Stash1 és Stash2 fájlokat már törölte a visszaállítási művelet. Ezért a következő képen látható módon nem kell több új fájlt lekötni:

Megpróbálhatjuk felsorolni a Git projekt adattárunk tartalmát is, hogy megerősítsük a Stash1 fájlok törlését.txt és Stash2.txt az alábbi képen látható módon. Itt érdemes megjegyezni, hogy a Stash1 fájlok.txt és Stash2.A txt-t a visszaállítási műveletünk csak azért törölte, mert a 220ac tranzakcióazonosítóval rendelkező tranzakció végrehajtása előtt nem létezett ez a két fájl. Éppen ezért a kötelezettség visszavonásának eredményeként ezek a fájlok már nem léteznek. Ha azonban még egyszer végrehajtja a visszaállítási műveletet ezen a visszaállítási tranzakción, akkor i.e. megpróbálja semmissé tenni az imént végrehajtott visszaállítási művelet hatását, akkor újra láthatja ezt a két fájlt.

Végül ellenőrizhetjük az abc fájlt is.A txt még egyszer megnézi, hogy visszatért-e eredeti tartalmához, vagy sem. Egyszerűen újra megnyitjuk ezt a fájlt a nano szerkesztővel, és a következő képen észreveheti, hogy a fájl korábbi módosítása visszaállt.

Következtetés:

Az ebben a cikkben bemutatott részletes forgatókönyv áttekintésével remélhetőleg használhatja a „git revert” parancsot az Ubuntu 20-ban.04 nagyon hatékony módon. Ez a parancs megszünteti bármely korábbi tranzakció hatását, miközben megőrzi annak bejegyzését a „git naplóban”, így bármikor kényelmesen visszatérhet az adott tranzakcióhoz. Más szavakkal azt mondhatjuk, hogy a „git revert” parancs olyan tranzakciót hajt végre, amely pontosan inverz egy korábban végrehajtott parancsra (az előző kötelezettség törlése nélkül). Pontosan ezért sikerül visszavonni a hatását.

Csata a Wesnothért 1.13.6 Megjelent a fejlesztés
Csata a Wesnothért 1.13.A múlt hónapban megjelent 6 a hatodik fejlesztési kiadás az 1-ben.13.x sorozat, és számos fejlesztést hajt végre, nevezetesen ...
A League of Legends telepítése az Ubuntu 14-re.04
Ha rajongsz a League of Legendsért, akkor ez egy lehetőség arra, hogy teszteld a League of Legends játékot. Ne feledje, hogy a LOL a PlayOnLinux rends...
Telepítse a legújabb OpenRA stratégiai játékot az Ubuntu Linux rendszerre
Az OpenRA egy ingyenes / ingyenes valós idejű stratégiai játékmotor, amely újjáépíti a korai Westwood játékokat, mint például a klasszikus Command & C...