CINXE.COM

Git - Grafische interfaces

<!DOCTYPE html> <html lang="nl"> <head> <meta charset='utf-8'> <meta content='IE=edge,chrome=1' http-equiv='X-UA-Compatible'> <meta name="viewport" content="width=device-width, initial-scale=1"> <title>Git - Grafische interfaces</title> <link href="/favicon.ico" rel='shortcut icon' type='image/x-icon'> <link rel="stylesheet" href="/application.min.css"> <script src="/js/modernizr.js"></script> <script src="/js/modernize.js"></script> </head> <body id="documentation"> <div class="inner"> <header> <a href="/"><img src="/images/logo@2x.png" width="110" height="46" alt="Git" /></a> <span id="tagline"></span> <script type="text/javascript"> const taglines = [ "fast-version-control", "everything-is-local", "distributed-even-if-your-workflow-isnt", "local-branching-on-the-cheap", "distributed-is-the-new-centralized" ]; var tagline = taglines[Math.floor(Math.random() * taglines.length)]; document.getElementById('tagline').innerHTML = '--' + tagline; </script> <form id="search" action="/search/results"> <input id="search-text" name="search" placeholder="Type / to search entire site…" autocomplete="off" type="text" /> </form> <div id="search-results"></div> </header> </div> <div class="inner"> <div id="content-wrapper"> <div tabindex="1" class="sidebar-btn"></div> <aside class="sidebar" id="sidebar"> <nav> <ul> <li> <a href="/about">About</a> <ul> </ul> </li> <li> <a href="/doc" class="active">Documentation</a> <ul class="expanded"> <li> <a href="/docs">Reference</a> </li> <li> <a href="/book" class="active">Book</a> </li> <li> <a href="/videos">Videos</a> </li> <li> <a href="/doc/ext">External Links</a> </li> </ul> </li> <li> <a href="/downloads">Downloads</a> <ul > <li> <a href="/downloads/guis">GUI Clients</a> </li> <li> <a href="/downloads/logos">Logos</a> </li> </ul> </li> <li> <a href="/community">Community</a> </li> </ul> <hr class="sidebar"> <p> This book is available in <a href="/book/en/v2/Appendix-A:-Git-in-Other-Environments-Graphical-Interfaces">English</a>. </p> <p> Full translation available in <table> <tr><td><a href="/book/az/v2/Appendix-A:-Dig%c9%99r-M%c3%bchitl%c9%99rd%c9%99-Git-Qrafik-interfeysl%c9%99r">azərbaycan dili</a>,</td></tr> <tr><td><a href="/book/bg/v2/%d0%9f%d1%80%d0%b8%d0%bb%d0%be%d0%b6%d0%b5%d0%bd%d0%b8%d0%b5-C:-Git-%d0%ba%d0%be%d0%bc%d0%b0%d0%bd%d0%b4%d0%b8-%d0%9d%d0%b0%d1%81%d1%82%d1%80%d0%be%d0%b9%d0%ba%d0%b8-%d0%b8-%d0%ba%d0%be%d0%bd%d1%84%d0%b8%d0%b3%d1%83%d1%80%d0%b0%d1%86%d0%b8%d1%8f">български език</a>,</td></tr> <tr><td><a href="/book/de/v2/Anhang-A:-Git-in-anderen-Umgebungen-Grafische-Schnittstellen">Deutsch</a>,</td></tr> <tr><td><a href="/book/es/v2/Ap%c3%a9ndice-A:-Git-en-otros-entornos-Interfaces-gr%c3%a1ficas">Español</a>,</td></tr> <tr><td><a href="/book/fr/v2/Annexe-A:-Git-dans-d%e2%80%99autres-environnements-Interfaces-graphiques">Français</a>,</td></tr> <tr><td><a href="/book/gr">Ελληνικά</a>,</td></tr> <tr><td><a href="/book/ja/v2/%e4%bb%98%e9%8c%b2-A:-%e3%81%9d%e3%81%ae%e4%bb%96%e3%81%ae%e7%92%b0%e5%a2%83%e3%81%a7%e3%81%aeGit-%e3%82%b0%e3%83%a9%e3%83%95%e3%82%a3%e3%82%ab%e3%83%ab%e3%82%a4%e3%83%b3%e3%82%bf%e3%83%95%e3%82%a7%e3%83%bc%e3%82%b9">日本語</a>,</td></tr> <tr><td><a href="/book/ko/v2/%eb%b6%80%eb%a1%9d-A:-%eb%8b%a4%ec%96%91%ed%95%9c-%ed%99%98%ea%b2%bd%ec%97%90%ec%84%9c-Git-%ec%82%ac%ec%9a%a9%ed%95%98%ea%b8%b0-GUI">한국어</a>,</td></tr> <tr><td><a href="/book/nl/v2/Bijlage-A:-Git-in-andere-omgevingen-Grafische-interfaces">Nederlands</a>,</td></tr> <tr><td><a href="/book/ru/v2/%d0%9f%d1%80%d0%b8%d0%bb%d0%be%d0%b6%d0%b5%d0%bd%d0%b8%d0%b5-A:-Git-%d0%b2-%d0%b4%d1%80%d1%83%d0%b3%d0%b8%d1%85-%d0%be%d0%ba%d1%80%d1%83%d0%b6%d0%b5%d0%bd%d0%b8%d1%8f%d1%85-%d0%93%d1%80%d0%b0%d1%84%d0%b8%d1%87%d0%b5%d1%81%d0%ba%d0%b8%d0%b5-%d0%b8%d0%bd%d1%82%d0%b5%d1%80%d1%84%d0%b5%d0%b9%d1%81%d1%8b">Русский</a>,</td></tr> <tr><td><a href="/book/sl/v2/Dodatek-A:-Git-v-drugih-okoljih-Grafi%c4%8dni-vmesniki">Slovenščina</a>,</td></tr> <tr><td><a href="/book/tl/v2/Appendix-A:-Git-in-Other-Environments-Grapikal-Interfaces">Tagalog</a>,</td></tr> <tr><td><a href="/book/uk/v2/%d0%94%d0%be%d0%b4%d0%b0%d1%82%d0%be%d0%ba-A:-Git-%d0%b2-%d1%96%d0%bd%d1%88%d0%b8%d1%85-%d1%81%d0%b5%d1%80%d0%b5%d0%b4%d0%be%d0%b2%d0%b8%d1%89%d0%b0%d1%85-%d0%93%d1%80%d0%b0%d1%84%d1%96%d1%87%d0%bd%d1%96-%d1%96%d0%bd%d1%82%d0%b5%d1%80%d1%84%d0%b5%d0%b9%d1%81%d0%b8">Українська</a></td></tr> <tr><td><a href="/book/zh/v2/%e9%99%84%e5%bd%95-A:-%e5%9c%a8%e5%85%b6%e5%ae%83%e7%8e%af%e5%a2%83%e4%b8%ad%e4%bd%bf%e7%94%a8-Git-%e5%9b%be%e5%bd%a2%e7%95%8c%e9%9d%a2">简体中文</a>,</td></tr> </table> </p> <p> Partial translations available in <table> <tr><td><a href="/book/cs/v2/Appendix-A:-Git-in-Other-Environments-Graphical-Interfaces">Čeština</a>,</td></tr> <tr><td><a href="/book/mk/v2/Appendix-A:-Git-%d0%b2%d0%be-%d0%b4%d1%80%d1%83%d0%b3%d0%b8-%d0%be%d0%ba%d0%be%d0%bb%d0%b8%d0%bd%d0%b8-Graphical-Interfaces">Македонски</a>,</td></tr> <tr><td><a href="/book/pl/v2/Appendix-A:-Git-in-Other-Environments-Graphical-Interfaces">Polski</a>,</td></tr> <tr><td><a href="/book/sr/v2/%d0%94%d0%be%d0%b4%d0%b0%d1%82%d0%b0%d0%ba-%d0%90:-%d0%9f%d1%80%d0%be%d0%b3%d1%80%d0%b0%d0%bc-%d0%93%d0%b8%d1%82-%d1%83-%d0%b4%d1%80%d1%83%d0%b3%d0%b8%d0%bc-%d0%be%d0%ba%d1%80%d1%83%d0%b6%d0%b5%d1%9a%d0%b8%d0%bc%d0%b0-%d0%93%d1%80%d0%b0%d1%84%d0%b8%d1%87%d0%ba%d0%b8-%d0%b8%d0%bd%d1%82%d0%b5%d1%80%d1%84%d0%b5%d1%98%d1%81%d0%b8">Српски</a>,</td></tr> <tr><td><a href="/book/uz/v2/Appendix-A:-Git-in-Other-Environments-Graphical-Interfaces">Ўзбекча</a>,</td></tr> <tr><td><a href="/book/zh-tw/v2/%e9%99%84%e9%8c%84-A:-Git-in-Other-Environments-Graphical-Interfaces">繁體中文</a>,</td></tr> </table> </p> <p> Translations started for <table> <tr><td><a href="/book/be/v2/%d0%94%d0%b0%d0%b4%d0%b0%d1%82%d0%b0%d0%ba-A:-Git-in-Other-Environments-Graphical-Interfaces">Беларуская</a>,</td></tr> <tr><td><a href="/book/fa/v2/%d9%be%db%8c%d9%88%d8%b3%d8%aa-A:-Git-in-Other-Environments-Graphical-Interfaces" dir="rtl">فارسی</a>,</td></tr> <tr><td><a href="/book/id/v2/Appendix-A:-Git-in-Other-Environments-Graphical-Interfaces">Indonesian</a>,</td></tr> <tr><td><a href="/book/it/v2/Appendice-A:-Git-in-altri-contesti-Graphical-Interfaces">Italiano</a>,</td></tr> <tr><td><a href="/book/ms/v2/Appendix-A:-Git-in-Other-Environments-Graphical-Interfaces">Bahasa Melayu</a>,</td></tr> <tr><td><a href="/book/pt-br/v2/Appendix-A:-Git-em-Outros-Ambientes-Graphical-Interfaces">Português (Brasil)</a>,</td></tr> <tr><td><a href="/book/pt-pt/v2/Appendix-A:-Git-em-Outros-Ambientes-Graphical-Interfaces">Português (Portugal)</a>,</td></tr> <tr><td><a href="/book/sv/v2/Bilaga-A:-Git-in-Other-Environments-Graphical-Interfaces">Svenska</a>,</td></tr> <tr><td><a href="/book/tr/v2/Ek-b%c3%b6l%c3%bcm-A:-Di%c4%9fer-Ortamlarda-Git-G%c3%b6rsel-Aray%c3%bczler">Türkçe</a>.</td></tr> </table> </p> <hr class="sidebar"/> <p> The source of this book is <a href="https://github.com/progit/progit2-nl">hosted on GitHub.</a></br> Patches, suggestions and comments are welcome. </p> </nav> </aside> <div id="content"> <div id="book-chapters"> <a class="dropdown-trigger" id="book-chapters-trigger" data-panel-id="chapters-dropdown" href="#">Chapters ▾</a> <div class='dropdown-panel' id='chapters-dropdown'> <div class='three-column'> <div class="column-left"> <ol class='book-toc'> <li class='chapter'> <h2>1. <a href="/book/nl/v2/Aan-de-slag-Over-versiebeheer">Aan de slag</a></h2> <ol> <li> 1.1 <a href="/book/nl/v2/Aan-de-slag-Over-versiebeheer">Over versiebeheer</a> </li> <li> 1.2 <a href="/book/nl/v2/Aan-de-slag-Een-kort-historisch-overzicht-van-Git">Een kort historisch overzicht van Git</a> </li> <li> 1.3 <a href="/book/nl/v2/Aan-de-slag-Wat-is-Git%3F">Wat is Git?</a> </li> <li> 1.4 <a href="/book/nl/v2/Aan-de-slag-De-commando-regel">De commando-regel</a> </li> <li> 1.5 <a href="/book/nl/v2/Aan-de-slag-Git-installeren">Git installeren</a> </li> <li> 1.6 <a href="/book/nl/v2/Aan-de-slag-Git-klaarmaken-voor-eerste-gebruik">Git klaarmaken voor eerste gebruik</a> </li> <li> 1.7 <a href="/book/nl/v2/Aan-de-slag-Hulp-krijgen">Hulp krijgen</a> </li> <li> 1.8 <a href="/book/nl/v2/Aan-de-slag-Samenvatting">Samenvatting</a> </li> </ol> </li> <li class='chapter'> <h2>2. <a href="/book/nl/v2/Git-Basics-Een-Git-repository-verkrijgen">Git Basics</a></h2> <ol> <li> 2.1 <a href="/book/nl/v2/Git-Basics-Een-Git-repository-verkrijgen">Een Git repository verkrijgen</a> </li> <li> 2.2 <a href="/book/nl/v2/Git-Basics-Wijzigingen-aan-de-repository-vastleggen">Wijzigingen aan de repository vastleggen</a> </li> <li> 2.3 <a href="/book/nl/v2/Git-Basics-De-commit-geschiedenis-bekijken">De commit geschiedenis bekijken</a> </li> <li> 2.4 <a href="/book/nl/v2/Git-Basics-Dingen-ongedaan-maken">Dingen ongedaan maken</a> </li> <li> 2.5 <a href="/book/nl/v2/Git-Basics-Werken-met-remotes">Werken met remotes</a> </li> <li> 2.6 <a href="/book/nl/v2/Git-Basics-Taggen-Labelen">Taggen (Labelen)</a> </li> <li> 2.7 <a href="/book/nl/v2/Git-Basics-Git-aliassen">Git aliassen</a> </li> <li> 2.8 <a href="/book/nl/v2/Git-Basics-Samenvatting">Samenvatting</a> </li> </ol> </li> <li class='chapter'> <h2>3. <a href="/book/nl/v2/Branchen-in-Git-Branches-in-vogelvlucht">Branchen in Git</a></h2> <ol> <li> 3.1 <a href="/book/nl/v2/Branchen-in-Git-Branches-in-vogelvlucht">Branches in vogelvlucht</a> </li> <li> 3.2 <a href="/book/nl/v2/Branchen-in-Git-Eenvoudig-branchen-en-mergen">Eenvoudig branchen en mergen</a> </li> <li> 3.3 <a href="/book/nl/v2/Branchen-in-Git-Branch-beheer">Branch-beheer</a> </li> <li> 3.4 <a href="/book/nl/v2/Branchen-in-Git-Branch-workflows">Branch workflows</a> </li> <li> 3.5 <a href="/book/nl/v2/Branchen-in-Git-Branches-op-afstand-Remote-branches">Branches op afstand (Remote branches)</a> </li> <li> 3.6 <a href="/book/nl/v2/Branchen-in-Git-Rebasen">Rebasen</a> </li> <li> 3.7 <a href="/book/nl/v2/Branchen-in-Git-Samenvatting">Samenvatting</a> </li> </ol> </li> <li class='chapter'> <h2>4. <a href="/book/nl/v2/Git-op-de-server-De-protocollen">Git op de server</a></h2> <ol> <li> 4.1 <a href="/book/nl/v2/Git-op-de-server-De-protocollen">De protocollen</a> </li> <li> 4.2 <a href="/book/nl/v2/Git-op-de-server-Git-op-een-server-krijgen">Git op een server krijgen</a> </li> <li> 4.3 <a href="/book/nl/v2/Git-op-de-server-Je-publieke-SSH-sleutel-genereren">Je publieke SSH sleutel genereren</a> </li> <li> 4.4 <a href="/book/nl/v2/Git-op-de-server-De-server-opzetten">De server opzetten</a> </li> <li> 4.5 <a href="/book/nl/v2/Git-op-de-server-Git-Daemon">Git Daemon</a> </li> <li> 4.6 <a href="/book/nl/v2/Git-op-de-server-Slimme-HTTP">Slimme HTTP</a> </li> <li> 4.7 <a href="/book/nl/v2/Git-op-de-server-GitWeb">GitWeb</a> </li> <li> 4.8 <a href="/book/nl/v2/Git-op-de-server-GitLab">GitLab</a> </li> <li> 4.9 <a href="/book/nl/v2/Git-op-de-server-Hosting-oplossingen-van-derden">Hosting oplossingen van derden</a> </li> <li> 4.10 <a href="/book/nl/v2/Git-op-de-server-Samenvatting">Samenvatting</a> </li> </ol> </li> <li class='chapter'> <h2>5. <a href="/book/nl/v2/Gedistribueerd-Git-Gedistribueerde-workflows">Gedistribueerd Git</a></h2> <ol> <li> 5.1 <a href="/book/nl/v2/Gedistribueerd-Git-Gedistribueerde-workflows">Gedistribueerde workflows</a> </li> <li> 5.2 <a href="/book/nl/v2/Gedistribueerd-Git-Bijdragen-aan-een-project">Bijdragen aan een project</a> </li> <li> 5.3 <a href="/book/nl/v2/Gedistribueerd-Git-Het-beheren-van-een-project">Het beheren van een project</a> </li> <li> 5.4 <a href="/book/nl/v2/Gedistribueerd-Git-Samenvatting">Samenvatting</a> </li> </ol> </li> </ol> </div> <div class='column-middle'> <ol class='book-toc'> <li class='chapter'> <h2>6. <a href="/book/nl/v2/GitHub-Account-setup-en-configuratie">GitHub</a></h2> <ol> <li> 6.1 <a href="/book/nl/v2/GitHub-Account-setup-en-configuratie">Account setup en configuratie</a> </li> <li> 6.2 <a href="/book/nl/v2/GitHub-Aan-een-project-bijdragen">Aan een project bijdragen</a> </li> <li> 6.3 <a href="/book/nl/v2/GitHub-Een-project-onderhouden">Een project onderhouden</a> </li> <li> 6.4 <a href="/book/nl/v2/GitHub-Een-organisatie-beheren">Een organisatie beheren</a> </li> <li> 6.5 <a href="/book/nl/v2/GitHub-GitHub-Scripten">GitHub Scripten</a> </li> <li> 6.6 <a href="/book/nl/v2/GitHub-Samenvatting">Samenvatting</a> </li> </ol> </li> <li class='chapter'> <h2>7. <a href="/book/nl/v2/Git-Tools-Revisie-Selectie">Git Tools</a></h2> <ol> <li> 7.1 <a href="/book/nl/v2/Git-Tools-Revisie-Selectie">Revisie Selectie</a> </li> <li> 7.2 <a href="/book/nl/v2/Git-Tools-Interactief-stagen">Interactief stagen</a> </li> <li> 7.3 <a href="/book/nl/v2/Git-Tools-Stashen-en-opschonen">Stashen en opschonen</a> </li> <li> 7.4 <a href="/book/nl/v2/Git-Tools-Je-werk-tekenen">Je werk tekenen</a> </li> <li> 7.5 <a href="/book/nl/v2/Git-Tools-Zoeken">Zoeken</a> </li> <li> 7.6 <a href="/book/nl/v2/Git-Tools-Geschiedenis-herschrijven">Geschiedenis herschrijven</a> </li> <li> 7.7 <a href="/book/nl/v2/Git-Tools-Reset-ontrafeld">Reset ontrafeld</a> </li> <li> 7.8 <a href="/book/nl/v2/Git-Tools-Mergen-voor-gevorderden">Mergen voor gevorderden</a> </li> <li> 7.9 <a href="/book/nl/v2/Git-Tools-Rerere">Rerere</a> </li> <li> 7.10 <a href="/book/nl/v2/Git-Tools-Debuggen-met-Git">Debuggen met Git</a> </li> <li> 7.11 <a href="/book/nl/v2/Git-Tools-Submodules">Submodules</a> </li> <li> 7.12 <a href="/book/nl/v2/Git-Tools-Bundelen">Bundelen</a> </li> <li> 7.13 <a href="/book/nl/v2/Git-Tools-Vervangen">Vervangen</a> </li> <li> 7.14 <a href="/book/nl/v2/Git-Tools-Het-opslaan-van-inloggegevens">Het opslaan van inloggegevens</a> </li> <li> 7.15 <a href="/book/nl/v2/Git-Tools-Samenvatting">Samenvatting</a> </li> </ol> </li> <li class='chapter'> <h2>8. <a href="/book/nl/v2/Git-aanpassen-Git-configuratie">Git aanpassen</a></h2> <ol> <li> 8.1 <a href="/book/nl/v2/Git-aanpassen-Git-configuratie">Git configuratie</a> </li> <li> 8.2 <a href="/book/nl/v2/Git-aanpassen-Git-attributen">Git attributen</a> </li> <li> 8.3 <a href="/book/nl/v2/Git-aanpassen-Git-Hooks">Git Hooks</a> </li> <li> 8.4 <a href="/book/nl/v2/Git-aanpassen-Een-voorbeeld-van-Git-afgedwongen-beleid">Een voorbeeld van Git-afgedwongen beleid</a> </li> <li> 8.5 <a href="/book/nl/v2/Git-aanpassen-Samenvatting">Samenvatting</a> </li> </ol> </li> <li class='chapter'> <h2>9. <a href="/book/nl/v2/Git-en-andere-systemen-Git-als-een-client">Git en andere systemen</a></h2> <ol> <li> 9.1 <a href="/book/nl/v2/Git-en-andere-systemen-Git-als-een-client">Git als een client</a> </li> <li> 9.2 <a href="/book/nl/v2/Git-en-andere-systemen-Migreren-naar-Git">Migreren naar Git</a> </li> <li> 9.3 <a href="/book/nl/v2/Git-en-andere-systemen-Samenvatting">Samenvatting</a> </li> </ol> </li> <li class='chapter'> <h2>10. <a href="/book/nl/v2/Git-Binnenwerk-Binnenwerk-en-koetswerk-plumbing-and-porcelain">Git Binnenwerk</a></h2> <ol> <li> 10.1 <a href="/book/nl/v2/Git-Binnenwerk-Binnenwerk-en-koetswerk-plumbing-and-porcelain">Binnenwerk en koetswerk (plumbing and porcelain)</a> </li> <li> 10.2 <a href="/book/nl/v2/Git-Binnenwerk-Git-objecten">Git objecten</a> </li> <li> 10.3 <a href="/book/nl/v2/Git-Binnenwerk-Git-Referenties">Git Referenties</a> </li> <li> 10.4 <a href="/book/nl/v2/Git-Binnenwerk-Packfiles">Packfiles</a> </li> <li> 10.5 <a href="/book/nl/v2/Git-Binnenwerk-De-Refspec">De Refspec</a> </li> <li> 10.6 <a href="/book/nl/v2/Git-Binnenwerk-Uitwisseling-protocollen">Uitwisseling protocollen</a> </li> <li> 10.7 <a href="/book/nl/v2/Git-Binnenwerk-Onderhoud-en-gegevensherstel">Onderhoud en gegevensherstel</a> </li> <li> 10.8 <a href="/book/nl/v2/Git-Binnenwerk-Omgevingsvariabelen">Omgevingsvariabelen</a> </li> <li> 10.9 <a href="/book/nl/v2/Git-Binnenwerk-Samenvatting">Samenvatting</a> </li> </ol> </li> </ol> </div> <div class='column-right'> <ol class='book-toc'> <li class='chapter'> <h2>A1. <a href="/book/nl/v2/Bijlage-A:-Git-in-andere-omgevingen-Grafische-interfaces">Bijlage A: Git in andere omgevingen</a></h2> <ol> <li> A1.1 <a href="/book/nl/v2/Bijlage-A:-Git-in-andere-omgevingen-Grafische-interfaces" class="active">Grafische interfaces</a> </li> <li> A1.2 <a href="/book/nl/v2/Bijlage-A:-Git-in-andere-omgevingen-Git-in-Visual-Studio">Git in Visual Studio</a> </li> <li> A1.3 <a href="/book/nl/v2/Bijlage-A:-Git-in-andere-omgevingen-Git-in-Visual-Studio-Code">Git in Visual Studio Code</a> </li> <li> A1.4 <a href="/book/nl/v2/Bijlage-A:-Git-in-andere-omgevingen-Git-in-Eclipse">Git in Eclipse</a> </li> <li> A1.5 <a href="/book/nl/v2/Bijlage-A:-Git-in-andere-omgevingen-Git-in-Sublime-Text">Git in Sublime Text</a> </li> <li> A1.6 <a href="/book/nl/v2/Bijlage-A:-Git-in-andere-omgevingen-Git-in-Bash">Git in Bash</a> </li> <li> A1.7 <a href="/book/nl/v2/Bijlage-A:-Git-in-andere-omgevingen-Git-in-Zsh">Git in Zsh</a> </li> <li> A1.8 <a href="/book/nl/v2/Bijlage-A:-Git-in-andere-omgevingen-Git-in-PowerShell">Git in PowerShell</a> </li> <li> A1.9 <a href="/book/nl/v2/Bijlage-A:-Git-in-andere-omgevingen-Samenvatting">Samenvatting</a> </li> </ol> </li> <li class='chapter'> <h2>A2. <a href="/book/nl/v2/Bijlage-B:-Git-in-je-applicaties-inbouwen-Commando-regel-Git">Bijlage B: Git in je applicaties inbouwen</a></h2> <ol> <li> A2.1 <a href="/book/nl/v2/Bijlage-B:-Git-in-je-applicaties-inbouwen-Commando-regel-Git">Commando-regel Git</a> </li> <li> A2.2 <a href="/book/nl/v2/Bijlage-B:-Git-in-je-applicaties-inbouwen-Libgit2">Libgit2</a> </li> <li> A2.3 <a href="/book/nl/v2/Bijlage-B:-Git-in-je-applicaties-inbouwen-JGit">JGit</a> </li> <li> A2.4 <a href="/book/nl/v2/Bijlage-B:-Git-in-je-applicaties-inbouwen-go-git">go-git</a> </li> <li> A2.5 <a href="/book/nl/v2/Bijlage-B:-Git-in-je-applicaties-inbouwen-Dulwich">Dulwich</a> </li> </ol> </li> <li class='chapter'> <h2>A3. <a href="/book/nl/v2/Bijlage-C:-Git-Commando%e2%80%99s-Setup-en-configuratie">Bijlage C: Git Commando’s</a></h2> <ol> <li> A3.1 <a href="/book/nl/v2/Bijlage-C:-Git-Commando%e2%80%99s-Setup-en-configuratie">Setup en configuratie</a> </li> <li> A3.2 <a href="/book/nl/v2/Bijlage-C:-Git-Commando%e2%80%99s-Projecten-ophalen-en-maken">Projecten ophalen en maken</a> </li> <li> A3.3 <a href="/book/nl/v2/Bijlage-C:-Git-Commando%e2%80%99s-Basic-Snapshotten">Basic Snapshotten</a> </li> <li> A3.4 <a href="/book/nl/v2/Bijlage-C:-Git-Commando%e2%80%99s-Branchen-en-mergen">Branchen en mergen</a> </li> <li> A3.5 <a href="/book/nl/v2/Bijlage-C:-Git-Commando%e2%80%99s-Projecten-delen-en-bijwerken">Projecten delen en bijwerken</a> </li> <li> A3.6 <a href="/book/nl/v2/Bijlage-C:-Git-Commando%e2%80%99s-Inspectie-en-vergelijking">Inspectie en vergelijking</a> </li> <li> A3.7 <a href="/book/nl/v2/Bijlage-C:-Git-Commando%e2%80%99s-Debuggen">Debuggen</a> </li> <li> A3.8 <a href="/book/nl/v2/Bijlage-C:-Git-Commando%e2%80%99s-Patchen">Patchen</a> </li> <li> A3.9 <a href="/book/nl/v2/Bijlage-C:-Git-Commando%e2%80%99s-Email">Email</a> </li> <li> A3.10 <a href="/book/nl/v2/Bijlage-C:-Git-Commando%e2%80%99s-Externe-systemen">Externe systemen</a> </li> <li> A3.11 <a href="/book/nl/v2/Bijlage-C:-Git-Commando%e2%80%99s-Beheer">Beheer</a> </li> <li> A3.12 <a href="/book/nl/v2/Bijlage-C:-Git-Commando%e2%80%99s-Binnenwerk-commando%e2%80%99s-plumbing-commando%e2%80%99s">Binnenwerk commando’s (plumbing commando’s)</a> </li> </ol> </li> </ol> </div> </div> </div> <span class="light" id="edition"> 2nd Edition </span> </div> <div id="main" data-pagefind-filter="category:book" data-pagefind-meta="category:Book" data-pagefind-weight="0.05" data-pagefind-body class="book edition2"> <h1>A1.1 Bijlage A: Git in andere omgevingen - Grafische interfaces</h1> <div> <p>Als je het hele boek gelezen hebt, zal je erg veel geleerd hebben over het gebruik van Git op de commando regel. Je kunt met lokale bestanden werken, je repository verbinden met andere via een netwerk, en op een effectieve manier werken met anderen. Maar daarmee houdt het verhaal niet op; Git wordt normaalgesproken gebruikt als onderdeel van een groter ecosysteem, en het werkstation is niet altijd de beste manier om ermee te werken. We zullen nu een kijkje nemen naar andere soorten omgevingen waar Git nuttig kan zijn, en hoe andere applicaties (inclusief de jouwe) zij aan zij samenwerken met Git.</p> <h2 id="_grafische_interfaces">Grafische interfaces</h2> <div class="paragraph"> <p> De natuurlijke omgeving van Git is het werkstation. Nieuwe mogelijkheden verschijnen daar het eerst, en alleen op de commandoregel is de volle kracht van Git volledig tot je beschikking. Maar platte tekst is niet de beste keuze voor alle taken; soms heb je gewoon een meer visuele representatie nodig, en sommige gebruikers voelen zich veel meer op hun gemak bij een <em>point-and-click</em> interface.</p> </div> <div class="paragraph"> <p>Het is belangrijk op te merken dat verschillende interfaces zijn toegesneden op andere workflows. Sommige clients laten slechts een verzameling zorgvuldig uitgekozen onderdelen van Git zien, dit om een specifieke manier van werken te ondersteunen die de auteurs ervan beschouwen als effectief. Vanuit dat oogpunt gezien zijn geen van deze gereedschappen “beter” te noemen dan een ander, ze zijn gewoonweg beter in staat om hun specifieke doel te dienen. Merk ook dat er niets is wat deze grafische clients kunnen doen wat niet vanaf de commando-regel te doen zou zijn; de commando-regel is nog steeds de plaats waar je de meeste mogelijkheden en controle hebt als je met je repositories werkt.</p> </div> <div class="sect3"> <h3 id="_gitk_en_git_gui"> <code>gitk</code> en <code>git-gui</code> </h3> <div class="paragraph"> <p> Als je Git installeert, krijg je de visuele gereedschappen erbij, zijnde <code>gitk</code> en <code>git-gui</code>.</p> </div> <div class="paragraph"> <p><code>gitk</code> is een gereedschap waarmee je de geschiedenis grafisch kan bekijken. Zie het als een krachtige grafische schil over <code>git log</code> en <code>git grep</code>. Dit is het gereedschap die je gebruikt als je iets probeert te vinden wat in het verleden heeft plaatsgevinden, of de historie van je project probeert te laten zien.</p> </div> <div class="paragraph"> <p>Gitk is het eenvoudigste aan te roepen vanaf de commando-regel. Gewoon <code>cd</code> gebruiken om een Git repository in te gaan en dan dit typen:</p> </div> <div class="listingblock"> <div class="content"> <pre class="highlight"><code class="language-console" data-lang="console">$ gitk [git log options]</code></pre> </div> </div> <div class="paragraph"> <p>Gitk accepteert veel opties van de commando-regel, de meeste daarvan worden doorgegeven aan de onderliggende <code>git log</code> actie. Een van de meest nuttige hiervan is de <code>--all</code> vlag, die gitk vertelt om commits te laten zien die vanuit <em>elke</em> ref bereikbaar zijn, niet alleen HEAD. De interface van Gitk ziet er zo uit:</p> </div> <div class="imageblock"> <div class="content"> <img src="/book/nl/v2/images/gitk.png" alt="De `gitk` historie viewer."> </div> <div class="title">Figuur 153. De <code>gitk</code> historie viewer.</div> </div> <div class="paragraph"> <p>Bovenaan is iets wat eruit ziet als de uitvoer van <code>git log --graph</code>; elke stip staat voor een commit, de lijntjes stellen ouderrelaties voor, en refs worden getoond als gekleurde vierkantjes. De gele stip stelt HEAD voor, en de rode stippen stellen wijzigingen voor die nog een commit moeten worden. Onderaan is een voorstelling van de geselecteerde commit; de commentaren en patch staan links en een samenvatting staat rechts. Hiertussen staat een verzameling van mogelijkheden om in de geschiedenis te zoeken.</p> </div> <div class="paragraph"> <p><code>git-gui</code> daarentegen is primair een gereedschap om commits samen te stellen. Ook dit is het eenvoudigste om aan te roepen van de commando-regel:</p> </div> <div class="listingblock"> <div class="content"> <pre class="highlight"><code class="language-console" data-lang="console">$ git gui</code></pre> </div> </div> <div class="paragraph"> <p>En het ziet er ongeveer zo uit:</p> </div> <div class="imageblock"> <div class="content"> <img src="/book/nl/v2/images/git-gui.png" alt="Het `git-gui` commit gereedschap."> </div> <div class="title">Figuur 154. Het <code>git-gui</code> commit gereedschap.</div> </div> <div class="paragraph"> <p>Links staat de index; wijzigingen die nog niet zijn gestaged staan bovenaan, wijzigingen die zijn gestaged staan onderaan. Je kunt volledige bestanden tussen deze twee stadia verplaatsen door op hun icoontjes te klikken, of je selecteert een bestand voor bekijken door op de naam te klikken.</p> </div> <div class="paragraph"> <p>Rechtsboven wordt de diff getoond, hier worden de veranderingen getoond voor het bestand dat op dat moment is geselecteerd. Je kunt individuele hunks stagen (of individuele regels) door in dit gebied rechts te klikken.</p> </div> <div class="paragraph"> <p>Rechtsonder is het gedeelte waar het bericht en acties kunnen worden ingetypt. Tik je bericht in de tekst-box en klik op “Commit” om iets vergelijkbaars te doen als <code>git commit</code>. Je kunt er ook voor kiezen om de laatste commit te amenderen door de “Amend” radio knop te klikken, wat het “Staged Changes” gedeelte vult met de inhoud van de laatste commit. Daarna kan je eenvoudigweg bepaalde wijzigingen kunt stagen of unstagen, het commit bericht wijzigen en weer “Commit” klikken om de oude commit te vervangen met een nieuwe.</p> </div> <div class="paragraph"> <p><code>gitk</code> en <code>git-gui</code> zijn voorbeelden van taak-georiënteerde gereedschappen. Elk van deze is toegesneden op een specifieke doel (respectievelijk geschiedenis bekijken en commits maken), en zaken die niet nodig zijn voor die taak zijn weggelaten.</p> </div> </div> <div class="sect3"> <h3 id="_github_voor_macos_en_windows">GitHub voor macOS en Windows</h3> <div class="paragraph"> <p> GitHub heeft twee workflow-georiënteerde clients gemaakt: een voor Windows en een voor macOS. Deze clients zijn goede voorbeelden van workflow-georiënteerde gereedschappen - inplaats van <em>alle</em> functionaliteit van Git beschikbaar te stellen, hebben ze zich gericht op een beperkte set van algemeen gebruikte functies die goed samenwerken. Ze zien er zo uit:</p> </div> <div class="imageblock"> <div class="content"> <img src="/book/nl/v2/images/github_mac.png" alt="GitHub voor macOS."> </div> <div class="title">Figuur 155. GitHub voor macOS.</div> </div> <div class="imageblock"> <div class="content"> <img src="/book/nl/v2/images/github_win.png" alt="GitHub voor Windows."> </div> <div class="title">Figuur 156. GitHub voor Windows.</div> </div> <div class="paragraph"> <p>Ze zijn ontworpen om zoveel mogelijk op dezelfde manier er uit te zien en te werken, dus we zullen ze in dit hoofdstuk als een enkel product behandelen. We zullen hier geen gedetailleerde behandeling geven van deze gereedschappen (ze hebben hun eigen documentatie), maar een snel overzicht van de “changes” view (waar je het meeste van je tijd zult besteden) is op zijn plaats.</p> </div> <div class="ulist"> <ul> <li> <p>Links staat de lijst van repositories die de client volgt (trackt); je kunt een repository toevoegen (hetzij door het te klonen of door deze lokaal toe te voegen) door het “+” icoon te klikken die boven dit gebied staat.</p> </li> <li> <p>In het midden is een commit-invoer gebied, dit stelt je in staat om een commit bericht in te voeren, en de bestanden die hierin mee moeten te selecteren. (In Windows is de commit historie hier direct onder getoond; op macOS is het een aparte tab.)</p> </li> <li> <p>Rechts is een diff view, waar wordt getoond wat er in je werk directory is gewijzigd, of welke wijzigingen er in de geselecteerde commit zitten.</p> </li> <li> <p>Het laatste waar je op kunt letten is de “Sync” knop rechtsboven, wat de belangrijkste manier is waarmee je over het netwerk communiceert.</p> </li> </ul> </div> <div class="admonitionblock note"> <table> <tr> <td class="icon"> <div class="title">Noot</div> </td> <td class="content"> <div class="paragraph"> <p>Je hebt geen GitHub account nodig om deze middelen te gebruiken. Alhoewel ze zijn ontworpen om de service van GitHub en aangeraden workflows in de aandacht te brengen, werken ze prima met elke willekeurige ander repository, en zullen netwerk operaties met alle Git hosts uitvoeren.</p> </div> </td> </tr> </table> </div> <div class="sect4"> <h4 id="_installatie_2">Installatie</h4> <div class="paragraph"> <p>GitHub voor Windows kan worden gedownload van <a href="https://windows.github.com" class="bare">https://windows.github.com</a>, en GitHub voor macOS van <a href="https://mac.github.com" class="bare">https://mac.github.com</a>. Als de applicatie voor het eerst wordt aangeroepen, voeren ze je door alle instellingen die nodig zijn om Git te laten werken, zoals het invoeren van je naam en email adres, en beide stellen verstandige standaard instellingen voor, voor veel gebruikte configuratie opties, zoals caches voor inloggegevens en CRLF gedrag.</p> </div> <div class="paragraph"> <p>Beide zijn “overwinteraars” (“evergreen”) – updates worden gedownload en geïnstalleerd terwijl de applicaties in gebruik zijn. Bij deze installatie zit ook een versie van Git ingesloten, wat betekent dat je je waarschijnlijk geen zorgen hoeft te maken om het ooit handmatig te hoeven updaten. Op Windows heeft de client een shortcut om PowerShell aan te roepen met Posh-git, waar we later in dit hoofdstuk meer over zullen vertellen.</p> </div> <div class="paragraph"> <p>De volgende stap is om de applicatie een aantal repositories te geven om mee te werken. De client toont je een lijst met repositories waar je toegang toe hebt op GitHub, en je kunt ze in één stap klonen. ALs je al een lokale repository hebt, kan je de directory hiervan vanuit de Finder of Windows Explorer in de GitHub client slepen, en het zal in de lijst van repositories aan de linkerkant worden opgenomen.</p> </div> </div> <div class="sect4"> <h4 id="_aangeraden_workflow">Aangeraden workflow</h4> <div class="paragraph"> <p>Als het eenmaal is geïnstalleerd en geconfigureerd, kan je de GitHub client voor veel reguliere Git taken gebruiken. De tool is gemaakt met de workflow die “GitHub Flow” heet in gedachten. We behandelen dit in meer detail in <a href="/book/nl/v2/ch00/ch06-github_flow">De GitHub flow</a>, maar de achterliggende gedachte is dat (a) je naar een branch gaat committen, en (b) dat je vrij regelmatig met een remote repository zult gaan synchroniseren.</p> </div> <div class="paragraph"> <p>Branch beheer is een van de gebieden waar deze twee tools afwijken. Op macOS, is er een knop bovenaan in de window voor het maken van een nieuwe branch:</p> </div> <div class="imageblock"> <div class="content"> <img src="/book/nl/v2/images/branch_widget_mac.png" alt="``Create Branch'' knop op macOS."> </div> <div class="title">Figuur 157. “Create Branch” knop op macOS.</div> </div> <div class="paragraph"> <p>In Windows wordt dit gedaan door de naam van de nieuwe branch in de branch-switching widget in te typen:</p> </div> <div class="imageblock"> <div class="content"> <img src="/book/nl/v2/images/branch_widget_win.png" alt="Een branch aanmaken in Windows."> </div> <div class="title">Figuur 158. Een branch aanmaken in Windows.</div> </div> <div class="paragraph"> <p>Als je branch eenmaal is aangemaakt, is het maken van nieuwe commits min of meer rechttoe-rechtaan. Maak een aantal wijzigingen in je werk directory, en als je naar de GitHub client window gaat, zal het je laten zien welke bestanden zijn veranderd. Vul een commit bericht in, selecteer de bestanden die je erin wilt plaatsen, en klik op de “Commit” knop (ctrl-enter of ⌘-enter).</p> </div> <div class="paragraph"> <p>De belangrijkste manier waarmee je met andere repositories samenwerkt via het netwerk is via de “Synch” functie. Git heeft intern verschillende operaties voor pushen, fetchen, mergen en rebasen, maar de GitHub clients vatten die allemaal samen in een multi-stap functie. Hier is wat er gebeurt als je de Sync-knop klikt:</p> </div> <div class="olist arabic"> <ol class="arabic"> <li> <p><code>git pull --rebase</code>. Als dit mislukt omdat er een merge conflict is, val dan terug op <code>git pull --no-rebase</code>.</p> </li> <li> <p><code>git push</code>.</p> </li> </ol> </div> <div class="paragraph"> <p>Dit is de meeste gebruikelijke volgorde van netwerk commando’s als je op deze manier werkt, dus als je ze in een commando samenvoegt bespaart het je veel tijd.</p> </div> </div> <div class="sect4"> <h4 id="_samenvatting_13">Samenvatting</h4> <div class="paragraph"> <p>Deze gereedschappen zijn zeer geschikt voor de workflows waarvoor ze zijn ontworpen. Ontwikkelaars zowel als niet-ontwikkelaars kunnen op deze manier binnen een paar minuten met elkaar samenwerken op een project, en veel van de <em>best practices</em> voor dit soort van workflows zijn in de gereedschappen ingebakken. Echter, als je workflow hiervan afwijkt, of als je meer controle wilt over hoe en welke netwerk operaties er gedaan worden, raden we je een andere client of de commando-regel aan.</p> </div> </div> </div> <div class="sect3"> <h3 id="_andere_guis">Andere GUIs</h3> <div class="paragraph"> <p>Er zijn een aantal andere grafische Git clients, en ze variëren van gespecialiseerde gereedschappen gemaakt voor één specifiek doel tot aan applicaties die probereen alles wat Git kan beschikbaar te stellen. De officiële Git website heeft een onderhouden lijst van de meest populaire clients op <a href="https://git-scm.com/downloads/guis" class="bare">https://git-scm.com/downloads/guis</a>. Een uitgebreidere lijst is beschikbaar op de Git wiki, op <a href="https://git.wiki.kernel.org/index.php/Interfaces,_frontends,_and_tools#Graphical_Interfaces" class="bare">https://git.wiki.kernel.org/index.php/Interfaces,_frontends,_and_tools#Graphical_Interfaces</a>.</p> </div> </div> <div id="nav"><a href="/book/nl/v2/Git-Binnenwerk-Samenvatting">prev</a> | <a href="/book/nl/v2/Bijlage-A:-Git-in-andere-omgevingen-Git-in-Visual-Studio">next</a></div> </div> </div> </div> </div> <footer> <div class="site-source"> <a href="/site">About this site</a><br> Patches, suggestions, and comments are welcome. </div> <div class="sfc-member"> Git is a member of <a href="/sfc">Software Freedom Conservancy</a> </div> </footer> <a href="#top" class="no-js scrollToTop" id="scrollToTop" data-label="Scroll to top"> <img src="/images/icons/chevron-up@2x.png" width="20" height="20" alt="scroll-to-top"/> </a> <script src="/js/jquery-1.7.1.min.js"></script> <script src="/js/jquery-ui-1.8.18.custom.min.js"></script> <script src="/js/jquery.defaultvalue.js"></script> <script src="/js/session.min.js"></script> <script src="/js/application.min.js"></script> </div> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10