Kövület | |
---|---|
Típusú | elosztott verziókezelő rendszer [d] |
Fejlesztő | Richard Hipp [d] |
Beírva | C [1] és SQL [2] |
Operációs rendszer | platformközi |
Első kiadás | 2006 |
legújabb verzió | 2.12.1 (2020. augusztus 20.) |
Olvasható fájlformátumok | SQLite adatbázis fájlformátum [d] és Fossil repository adatbázis [d] |
Generált fájlformátumok | SQLite adatbázis fájlformátum [d] és Fossil repository adatbázis [d] |
Engedély | 2 szakaszos BSD-licenc [3] [4] |
Weboldal | fossil-scm.org _ |
Médiafájlok a Wikimedia Commons oldalon |
A Fossil egy elosztott verziókezelő rendszer , amelyet Richard Hipp fejlesztett ki . Richard Hipp az SQLite adatbázis fő fejlesztője is , amelyet a Fossil az összes információ tárházaként használ.
Minden funkció egyetlen végrehajtható fájlban van megvalósítva (fossil vagy fossil.exe). A fájlméret két megabájttól (Mac 10.x x86) és négy megabájtig (Windows) terjed a különböző buildek esetében. Nincs szükség telepítési eljárásra, csak másolja a fájlt a számítógépén lévő mappába, amely a PATH változón keresztül érhető el . Ezenkívül a Fossil nem igényel semmilyen külső függőséget: A Fossil hatékony használatához NEM KELL CVS, gzip, diff, rsync, Python, Perl, Tcl, Java, apache, PostgreSQL, MySQL, SQLite, patch vagy bármilyen hasonló alkalmazás .
A Fossil érdekes tulajdonsága, hogy bár elosztott verziójú tárolórendszerről van szó, mint például a GIT vagy a Mercurial , lehetővé teszi a felhasználó számára, hogy olyan központi adattárral dolgozzon, mint a CVS vagy az SVN . Ez a funkció az automatikus szinkronizálási módnak köszönhetően valósul meg : a helyi adattárban végrehajtott változtatások sikeres véglegesítése ( commit ) után a szerkesztések automatikusan visszaküldésre ( push ) arra a szerverre kerülnek, amelyről a tárat klónozták vagy utoljára szinkronizálták. Hasonlóképpen, a helyi fájlok frissítésekor ( frissítés ) a Fossil először lekéri ( pull ) a legújabb változtatásokat a szerverről a helyi tárhelyre, majd frissíti a felhasználó fájljait. Az automatikus szinkronizálás alapértelmezés szerint engedélyezve: a szerzők szerint a kollaboratív fejlesztés ebben a módban gördülékenyebben megy, elkerülve az értelmetlen elágazásokat/összevonásokat, és a fejlesztőket a saját, inkompatibilis ágaik helyett a kód ugyanazon verziójában tartják.
A Fossil automatikusan ellenőrzi az összes adattár integritását és konzisztenciáját. A repository megbízhatósága az SQLite3 DBMS információtárolóként való használatán alapul, amely képes biztosítani a végrehajtható műveletek atomitását.
A verzióvezérlő rendszer funkcionalitása mellett ez a projekt egy hibakövető , szerkesztő és wikioldalak tárházának funkcióit is tartalmazza a projekttel való kényelmesebb munka érdekében. Ebben a projektben egy egyszerű HTTP szerver is megvalósul. Valójában az adattárral végzett minden munka a HTTP protokollon keresztül történik .
A Fossil webes felülettel rendelkezik, amelyet a felhasználó rugalmasan konfigurálhat. Az összes interfész-beállítást a tárolófájl is tárolja. A beépített HTTP szerver támogatja a külső CGI alkalmazásokkal való munkavégzés protokollját , ennek köszönhetően a mellékelt interfész funkcionalitása jelentősen bővíthető.
A Fossil webszerver lehetővé teszi a projektdokumentáció megjelenítését - a rendszer a megfelelő projektkönyvtár fájljait jeleníti meg a böngészőben, figyelembe véve a szerkesztés verzióját. A Fossil felismeri a fő fájltípusokat (.css, .gif, .htm, .html, .jpg, .jpeg, .png, .txt). Ezenkívül a speciális típusú szövegfájlokat külön kezeljük: .wiki (a Wiki jelölés egy változata ) és .md ( Markdown ). A dokumentációs fájlok szerkesztése magában a rendszerben nem biztosított, ez a projekttől függően előnyként és hátrányként is tekinthető.
Így egy Fossil alkalmazás elegendő egy komplett rendszer kialakításához a projekttel való munkavégzéshez: tároló, hibakövető, egyedi weboldal a tár megtekintésére az aktuális projektképek letöltésével, dokumentáció, wiki oldalak előzetes moderálás lehetőségével, stb. Konkrétan a fossil-scm.org oldal és a Fossil projekt tárháza készül rajta.
Az új projekt létrehozása az init paranccsal történik , amely inicializál egy üres tárolót:
fosszilis init <tárhelyfájlnév>Ha egy meglévő projekttel szeretne dolgozni, létre kell hoznia egy helyi másolatot a tárhelyről a klón paranccsal :
fosszilis klón <URL a meglévő tárhelyhez> <tárfájlnév>Például a következő sor létrehozza az SQLite projekttár klónját:
fosszilis klón http://www.sqlite.org/src/sqlite.fossilA Fossil támogatja a GIT adattárak importját és exportját . Egy meglévő GIT -projektből származó adatok importálásához futtassa a következő parancsokat:
cd <git könyvtár> git fast-export --all | fosszilis import --git <lerakatfájlnév>A tár létrehozása vagy klónozása után a fájlokat a projekt munkamappájába kell helyeznie. Ehhez hozzon létre egy könyvtárat, lépjen be, és futtassa a megnyitás parancsot :
fossil open <repository filename>A helyi adattár konfigurálása webböngészőn keresztül történik :
fossil ui <tárhelyfájlnév>A lerakatfájl neve elhagyható, ha a parancsot a projektfán belülről hajtja végre. Alapértelmezés szerint a Fossil nem igényel bejelentkezést, ha a kapcsolat a visszacsatolási felületen (127.0.0.1) keresztül megy.
Új fájlok hozzáadásához vagy régiek eltávolításához használja a parancsokat
kövület hozzáadása <fájlnév>... fossil rm <fájlnév>...A fájlrendszer és a tárhellyel való automatikus szinkronizáláshoz létezik az addremove parancs . Eltávolítja a hiányzó helyi fájlokat a tárolóból, és hozzáadja a tárhoz azokat, amelyek még nincsenek ott, de jelen vannak a projektfában.
Ha el szeretné menteni a módosításokat a tárolóban (beleértve az add , rm , addremove parancsokat is), végre kell hajtani a commit parancsot .
fosszilis commitA parancs beírása után automatikusan elindul az operációs rendszer szabványos szövegszerkesztője a véglegesítési megjegyzés szerkesztéséhez. Alapértelmezés szerint a commit parancsot egy push parancs követi, amely a módosításokat a távoli tárolóba küldi. Ez a viselkedés a következő paranccsal módosítható:
fosszilis beállítás automatikus szinkronizálás kikapcsolvaHa az automatikus szinkronizálás le van tiltva, a felhasználónak magának kell szinkronizálnia a helyi tárolóját a távoli tárolóval, hogy a többi fejlesztő lássa a javításait.
fossil push <URL a repository> fossil pull <URL a repository> fosszilis szinkronizálás <URL a tárhelyhez>A Push adatokat küld egy távoli kiszolgálónak, a pull lekéri a legfrissebb módosításokat, a szinkronizálási leküldéseket és a lehívásokat .
Miután a többi fejlesztőtől származó módosításokat lehívta a kiszolgálóról a pull paranccsal , hívja meg az update parancsot, és az update paranccsal alkalmazza a változtatásokat a projektfájl fára .
fosszilis frissítés VERSIONAhol a VERSION lehet egy ág neve, egy címke, egy adott változat azonosítójának (műtermékének) rövidítése vagy egy időbélyeg. Ha nincs megadva verzió, akkor a legfrissebb módosítások kerülnek alkalmazásra.
A fosszilis tárolóhelyeket a Roy Keene által fenntartott Chisel site szabadon üzemelteti . A fosszilis tárolókat is a SourceForge tárolja [2]
Verzióvezérlő rendszerek ( kategória ) | |
---|---|
Csak helyi | |
Kliens-szerver | |
Megosztott | |
Hibakövető rendszerek ( összehasonlítás ) | ||||||
---|---|---|---|---|---|---|
Kliens-szerver |
| |||||
Megosztott |
| |||||
Tárhely |
| |||||
Privát hosting | ||||||
|