Source Control
Kíváncsi vagyok, hány elektronika nem használható verziókezelő rendszerek tervezése során. Jómagam annyira, amíg próbáltam. Most minden projekt kezdek tárolójának létrehozásával.

Mi ez?
Tehát egy verziókezelő rendszer (VCS) - ez egy olyan program, amely lehetővé teszi, hogy mentse az egész történelem a fejlődés a projekt.
Miért is?
Ez - igen közvetlenül mega-kényelmes eszköz fejlesztése. Ez úgy történik, hogy írtál, én írtam a programot, és végül megtörte valami. Ha a program a forrás ellenőrzés, akkor könnyen visszaállítható egy korábbi változata a projekt, és mi változott, én egy csomó mentett időt.
Például az utóbbi időben már csökkenni kezdett a sebességhatárt a projektben az FPGA. Szó szerint 5 perc alatt talált egy változata, ahol még nem esett, és megállapította az ok
Ha a projekt fut több ember nélküli SUV dolgozni egyáltalán szinte lehetetlen - a káosz kezdődik, minden ezzel valami más, és nem világos, hogy ki és mi történik. VCS kényelmesen, hogy ki mit csinált, a változtatások, amelyeket mások sokkal kevésbé meglepő.
Ezen kívül vannak olyan egzotikus alkalmazásokat. Például változtatások ezen az oldalon, a szervernek küldött egy verziókövető rendszer.
Melyiket válasszam?
verziókövető rendszerek olyan sok. Személy szerint engem illet, én választottam Mercurial. A kiváló rendszer, amely azt javasoljuk, hogy minden - a gyors, cross-platform, kiváló grafikus kliens. Egy nagyon erős érv az, hogy létezzen bitbucket oldalon. Soha nem bántam meg a választást.
Emellett Mercurial, most elég gyakori, és git svn. Git gyakoribb bizonyos linux'ovskoy csoportosulás, svn - a vállalati környezetben. Próbáltam használni őket (de nem túl hosszú), de semmi, mibe kerül nem láttam dobott higanyos.
Van egy weboldal bitbucket.org. lehetőség van arra, hogy tárolja a projektek. Figyelemre méltó az a tény, hogy van, ellentétben a GitHub, akkor szabad létrehozni egy zárt tároló (repository - egy hely, ahol a projektek vannak tárolva). Meg kell fizetni, és csak azokat a projekteket, amelyek zárt és több mint dolgozott több mint 5 fő. Ebben az esetben a meghosszabbítható legfeljebb 8 küldésével meghívásokat. Azt még nem haladta meg ezt a határt. Ezen kívül van egy wiki és hibakövetőn általában minden, ami szükséges a fejlesztési projektekben.

Amikor elkezdtem dolgozni vele, csak a helyszínen támogatja a Mercurial (részben azért, mert ez az, én választottam higanyos), de most már lehet létrehozni és git-tárolóból. Amellett, hogy bitbucket akkor kötelező a domain. Itt például, az én verzióm: hg.bsvi.ru
Hogyan kezdjük el?
Először meg kell töltse le a kliens. Használom TortoiseHg. Úgy gondolom, hogy a telepítés nem probléma.
A telepítés után, egy jó ötlet, hogy az alapértelmezett felhasználói nevet. Ehhez meg kell szerkeszteni a fájlt a C: /Users/BSVi/mercurial.ini kell hozzá egy sort
Természetesen bsvi kell cserélni a nevét.
Most már készen állunk, hogy hozzon létre egy projektet, és elkezd csinálni valamit. Ehhez kattintson bitbucket.org «létrehozása adattár»:

Ott írja a cím, leírás, válassza ki a nyelvet. Felveheti a wiki és hibajelentőjén.

Most kattintson a gombra «klón» és másolja, hogy úgy tűnt:

További műveletek attól függenek, hogy használ fájlkezelő. Én személy szerint messze. Csak a másolt sort a parancssorba:
Ha ispoluete vezető (um), a Total Commander, vagy valami ilyesmi, akkor meg kell, hogy kattintson a jobb egérgombbal, és válaszd:

Ott, a forrás mezőt be kell helyeznünk az utat, persze, nem hg clone:

Meg kell adnia a jelszót, és próbára-repo könyvtár, amely valójában, és lesz a projektben.
Hozzá néhány fájlt
Ha már van egy ideje a projekt, akkor lehet másolni egy könyvtárba. Ugyanolyanok vagyunk, kiképzési célokra, hozzon létre egy fájlt main.c tartalommal, mint ez:
Most már a véglegesítés. Commit - ez megváltoztatja a projekthez. Ehhez mi fut a hg munkapad. Én csak írni a parancssorba THG, meg kell nyomnia a PKM-> Hg Workbench eksploreroobraznyh fájlkezelõk.
Előtte a fájl lesz a kérdőjel (azaz, hogy nem adunk a projekt). Mi tesz egy pipa mellé, és írjon egy leírást, mi történt:

Természetesen, akkor a gombra kattintva «elkövetni».
Minden változás történt a tervezetet. Itt meg kell jegyeznünk, hogy a változások vnecheny csak a helyi számítógépen (vagyis még mindig nem jelenik meg a szerver). Annak érdekében, hogy utalja át a módosításokat a kiszolgálón, akkor meg kell nyomni a «push-», itt van:

Persze, hogy álljon változások a szerver, a jelszó szükséges.
megváltoztatja a fájlok
Most nézzük meg az egyik legfontosabb darabja a verziókezelő rendszerek - követés verzióit tartalmazzák. Mi hozzá a programunk kimenetét a képernyőre:
Térjünk át a hg munkapad. Amikor dolgozik egy projekten, még csak nem is közel van (erről-on), nyomja meg az F5 frissíteni a fájlok listáját. Most látjuk, mi változott az elmúlt elkövetni:

És ez - egy nagyon hatékony eszköz. Általában során hibakeresés fájlokat úgy tűnik, egy csomó más hulladék. Kacsa itt, nézi, hogy mit fog elkövetni egy nagyon jó tisztítja törmeléket a projektben.
És mi köze a szemetet?
Amikor dolgozik egy projekten van egy csomó szemetet - például az objektum fájlok, fájlok, amelyeket a IDE generál, néhány ideiglenes fájlokat, és így tovább. Bármi, ami nem tartozik a projekt, jó lenne el kell távolítani a tárolóból. Erre a célra .hgignore fájlt (igen, egy ponttal elején a neve).
Add felesleges fájlokat a projekthez. Én például teremtett main.obj:

Ha most frissíteni a fájlok listáját, akkor természetesen hg munkapad kéri adni ezt a fájlt a projekthez:

Most hozzunk létre egy fájlt, és írd .hgigonre ott, hogy mi egyáltalán nem akarunk kiterjesztésű fájlok obj:
Ha frissíti a fájlok listáját, amely elvész obj fájlokat, de .hgignore fájlt, amit elkövetni:

Hogyan visszaállíthatja a változásokat?
Mi visszaállítani a program az állam előtt volt látható. Egyszerűen válassza kötelezettséget kívánt visszaállíthatja és kattintson a gombra itt:

Hasonlóképpen, sok ugyanaz lehet tekerni egy fájlban.

következtetés
Ez minden szempontból - legalábbis ismerete verziókövető rendszerek, amely lehetővé teszi, hogy mentse a történelem, a fejlesztési projekt. Természetesen van sok más lehetőség, amiről azt fogja mondani később.
Sokan azt hiszik, hogy egy verziókövető rendszer csak akkor kell használni, ha tervezése valami nagy tömeg, de ez - nem annyira :) Még ha dolgozik egy projekten egyedül, egy verziókövető rendszer sokat segít ki.
Például itt van egy screenshot az én UTC (aka fejlesztem magam), a legnehezebb a hg munkapad:
