Pokud nejste jedním obchodem s jedním člověkem, ve kterém nebude spolupracovat žádný tým, zaznamenali jste frustraci, která souvisí se sdílením souborů. Bez ohledu na to, jak moc se snažíte, když více lidí pracuje na jednom projektu bez systému kontroly verzí na místě, věci se chaotické .

Pokud pracujete s vývojáři na vytváření a implementaci webových stránek, sloučení šablon front-end a funkčnosti back-end může být strašidelná černá díra.

Problémy, jako přepisy, ztracené soubory a všudypřítomný fenomén "pracující s předchozí verzí", se neustále objevují . A jakmile byly do vašich šablon vloženy funkce back-end, vy jste se strašlivě dotýkali, že se obávají, že se něco nestane, že vývojář strávil spoustu času v práci.

Kromě toho, i když máte společnou repozitář, kterou všichni trpí od šancí, alespoň jeden člen vašeho týmu zapomněl chytit nejnovější soubory a chystá se vyhodit věci do svých nejnovějších dodatků.

V tomto článku vám poskytnu rychlý přehled Git, vynikajícího systému kontroly verzí .

Verze ovládání - rychlé a špinavé vysvětlení

Verze řízení (také známá jako Revision Control nebo Source Control Management ) je skvělý způsob, jak vyřešit problém s sdílením souborů.

Základní koncepce je následující: pro všechny soubory projektu existuje jedno hlavní úložiště . Členové týmu kontrolují soubory, provádějí změny a poté je znovu kontrolují (nebo je zavazují ). Systém řízení verze (VCS) automaticky zaznamenává, kdo změnil soubory, když byly změněny, a co je s nimi nové nebo jiné.

Také vás požádá, abyste napsali malou poznámku o změně, aby každý na projektu věděl, co jste udělali a proč. Každý soubor pak bude mít historii revizí, takže se můžete snadno vrátit k předchozí verzi libovolného souboru, pokud se něco děje špatně.

Dobrý VCS také umožňuje sloučit změny do stejného souboru . Pokud vy a jiná osoba pracujete lokálně na stejném souboru současně, když tyto soubory stisknete zpět do hlavního úložiště, systém bude sloučit obě sady změn, aby vytvořil nový a plně aktualizovaný soubor. Pokud při sloučení vzniknou konflikty, zvýrazní je pro vás.

Pravděpodobně používáte velmi hrubý VCS, abyste si soubory ponechali rovnou. Pokud jste designér, vypadá to takto:

dpcwqxg_312gvhkh4s6_b

Kontrola verzí návrhu - FAIL

To funguje dobře pro PSD a další velké binární soubory, které se opravdu nepodávají VCS. Existuje však mnohem lepší způsob, jak to spravit, když spravujete zdrojový kód webové stránky.

Výhody při používání systému správy verzí zahrnují:

  • Soubory nelze přepsat
  • K dispozici je společné úložiště, které obsahuje všechny nejnovější soubory
  • Lidé mohou pracovat na stejných souborech současně bez konfliktu
  • Umožňuje v případě potřeby vrátit zpět starší verzi souboru / projektu
  • Vaše vývojáři jsou velmi šťastní

Dokonce i když nebudete spolupracovat s týmem, ovládání verzí může být životaschopným . Zálohování souborů je jedním z nejjednodušších věcí, které můžete udělat, abyste se zachránili před ztrátou práce nebo museli začít znovu.

Myšlenka VCS vypadá zpočátku skličující, zejména proto, že většina dokumentace je napsána vývojáři a pro vývojáře . Ale jakmile provedete tento krok, abyste jej začlenili do svého workflow, zjistíte, že to není tak těžké, jak vypadá.

dpcwqxg_322grqgzjcz_b

Seznamte se s Git

OK, takže teď můžete vidět, proč je systém řízení verzí nezbytný pro váš webový tým. Pokud uděláte trochu Googling, uvidíte, že existuje několik možností, včetně SVN, Mercurial, CVS, Bazaar a Git. Kterýkoli z nich může být dobrým řešením pro vaše potřeby a doporučuji vám, abyste provedli nějaký výzkum před výběrem VCS. V tomto článku se zaměřím na Git , ten, který používám denně. Je to "stoupající hvězda" , která získala popularitu díky silnému fanouškovi Linuxu, GitHub a Rails společenství.

Git je bezplatný systém pro správu verzí s otevřeným zdrojovým kódem, který původně vytvořil Linus Torvalds pro Linux kernal vývoj. Linus je velmi chytrý člověk; když se chystá vyřešit nějaký problém, nehrozí. Jeden z velkých diferenciačních faktorů Git je, že na rozdíl od SVN a CVS je to a distribuovaný systém řízení verzí . To znamená, že každý uživatel má úplnou kopii dat úložiště uložených místně na svém počítači. Co je tak skvělé? Pár věcí:

    • Všechno je lokální , takže můžete pracovat offline
    • Neexistuje jediný bod selhání . Nespoléhá se na jeden centrální server, který by mohl zhroucit a vypálit, přičemž s ním bude mít jediný úložiště pro váš projekt.
    • Protože nemusí komunikovat s centrálním serverem neustále, procesy běží mnohem rychleji

      Git má poněkud tvrdší křivku učení než SVN , ale obchodování stojí za to. Jen si přemýšlejte o tom, jak váš tvůrčí přátelé budou působit, když jim řeknete, že používáte novou horkotu, která je Git! Vážně, nemyslím si, že křivka učení je tak strmá. SVN byla pro mne stejně samozřejmou záležitostí, a když jsem ji použil, narazil jsem na další každodenní problémy.

      Instalace Git není zábava a hry. Měl jsem štěstí, že mám znalého vývojáře ochotného pomoci, ale je zde spousta zdrojů, které vás mohou dostat přes to. Bude fungovat na PC, Mac nebo Linux boxu, i když instalace pro Linux a OSX je mnohem jednodušší než pro Windows.

      Můžete si stáhnout nejnovější verzi Git tady Jakmile máte soubory, zkuste to rychlý průvodce abyste mohli začít s instalací. Pro uživatele systému Windows je tento postup podrobný vizuální průvodce by měla být užitečná. Uživatelé Mac, zkuste tuto příručku nalézt GitHub

      Začínáme

      Jakmile máte nainstalovaný Git, můžete vytvořit repozitář . Chcete-li stávající složku přepnout do úložiště Git, použijte následující příkazy v okně Terminál nebo příkazový řádek:

      cd path/to/projectgit initgit add .git commit

      To, co Git říkáte, je:

      • Inicializujte tento adresář
      • Přidat vše do něj - všechny soubory a podadresáře
      • Zavést nebo uložit všechny aktuální změny v úložišti

      Pokud nenávidíte příkazový řádek, můžete to také provést pomocí grafického rozhraní Git . Není to nejkrásnější věc, kterou jste kdy viděli, ale je to tam, když ji potřebujete.

      Záběr obrazovky grafického uživatelského rozhraní Git

      Sample Git Workflow

      V současné době používám Git na počítači Mac pro práci s webovou aplikací s více webovými vývojáři. Máme "velkolepou" verzi kódu, do které zasíláme naše soubory, a každý z nich provádí lokální kopii. V daný den můj pracovní postup vypadá takto:

      dpcwqxg_323gnhgbwg3_b

      1. Zapálit Terminál . Spusťte svou lokální databázi mysql (takže aplikace, kterou budeme vytvářet, můžeme spustit lokálně na svém počítači).
      2. Použijte Terminál pro zjištění nejnovějších změn pomocí příkazu "git pull" . Tím se dostanu ke všem změnám provedeným jinými členy týmu a zkontrolovali jsme ho v našem hlavním repozitáři.
      3. Otevřete projekt v aplikaci TextMate a proveďte změny.
      4. Přijmout změny a přidat poznámky . Toto se provádí pouze místně. Spáchám často, pravděpodobně desetkrát nebo vícekrát denně. To mi pomáhá udržet krok.
      5. Zmístěte změny do hlavního úložiště pomocí funkce "git push" . Nyní ostatní členové týmu se mohou podívat a vidět mé změny. Měli byste to udělat alespoň jednou denně nebo po jakémkoli významném přidání.

      Všechny tyto akce lze provést jednoduše přes okno Terminálu , ale jsem vizuální dívka. Z tohoto důvodu používám GitX , Git gui pro OSX , abych udělal své závazky. Stále tlačím a přetahuji Terminál, ale GitX mi usnadňuje organizovat své závazky a zabalit si hlavu kolem toho, co dělám.

      GitX Screenshot
      V horní části upozorňuje na změnu souborů. V levém dolním rohu je váš seznam nezastavěných změn . Chcete-li je odevzdat, přetáhněte jeden nebo více souborů do oblasti "Staged Changes" vpravo, zadejte zprávu a klepněte na tlačítko Commit.

      Pokud se vrátím do stromového zobrazení, zjistím, co bylo uloženo do úložiště. Pokud by soubory nebyly aktuální s hlavními soubory, zelená a modrá značka nahoře by nebyla synchronizována. GitNub nabízí podobné rozhraní ve stylu Mac.

      GitX Screenshot
      Je to také skvělý Balík TextMate dostupný. S ním můžete tlačit, vytáhnout, zavázat a další, aniž byste opustili TextMate. Je to velmi efektivní.

      TextMate s balíkem Git Bundle nainstalován

      Další informace

      Git Cheat Sheet

      Git Cheat Sheet od Zacka Rusina

      Výše: Zack Rusin Git Cheat List

      Jsem stále nováček na Git sám, takže jsem jen poškrábal povrch, co můžete dělat s tím, ale já jsem určitě viděl světlo, pokud jde o verzi verzi, a jsem rád, že jsem konečně dostal na .

      Chcete-li se dozvědět více o používání nástroje Git, podívejte se na tyto skvělé zdroje:

      Intros do Git

      Seznámení s Git
      Wikipedia vstup na Git
      Proč Git je lepší než X
      Linus Torvald TED promluví o Gitovi
      Prohlídka Git: Základy
      Git Ready

      Cheat Sheets / Tipy

      37 Signály Git Resources
      Git pro Lazy
      Uživatelská příručka Git
      Tipy Git Git
      GitHub Git Cheat List
      Git Magic

      Vstupuje do verze správy

      Kontrola verzí pro návrháře
      Vizuální průvodce pro řízení verzí
      Položka Wikipedia na Revision Control
      Výběr systému řízení distribuovaných verzí
      I Wonder Co toto tlačítko má (A List Apart)


      Napsal výhradně pro WDD Mindy Wagner. Je webdesignerkou ve společnosti Viget Labs a pracuje v tisku i web designu již více než 8 let. Je držitelem diplomové práce v oblasti elektronických médií a komunikace z polytechnického institutu Rensselaer.

      Používáte Git nebo jiný software pro ovládání verzí? Podělte se o své zkušenosti s námi!