Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 43 reacties
Submitter: Avalaxy

GitHub heeft een grafische ontwikkeltool vrijgegeven voor ontwikkelaars die in een Windows-omgeving werken. GitHub for Windows geeft via de gui toegang tot een aantal opensource-git-tools en moet de toegang tot GitHub vergemakkelijken.

De ontwikkeltool GitHub for Windows maakt het volgens de ontwikkelaars eenvoudig om repositories te openen of te klonen. Alle codewijzigingen, commits geheten, kunnen ook vanuit de gui worden bekeken, veranderd, gekopieerd of verwijderd. Ook kan de ontwikkelaar kiezen uit diverse shells, waaronder Git Bash en de PowerShell van Microsoft.

GitHub for Windows GitHub for Windows GitHub for Windows

GitHub for Windows heeft een automatisch updatemechanisme en maakt onder de motorkap gebruik van diverse opensource-git-tools, waaronder libgit2, ReactiveUI en de GitHub API v3. De ontwikkeltool, die geheel gratis is te gebruiken voor zowel gesloten projecten als opensourceprojecten, draait op Windows XP, Vista en 7, terwijl het volgens de ontwikkelaars ook op de pre-releases van Windows 8 kan draaien.

Moderatie-faq Wijzig weergave

Reacties (43)

Ik ben wel benieuwd hoe deze tool het doet vergeleken met TurtoiseSVN, dat wat mij betreft een van de beste UI's is die ik heb gezien. Voor git gebruik ik eigenlijk alleen gitk onder linux, en verder de commandline. Maar dat is voor mensen die niet van commandlines houden wat minder prettig.
Ik ben wel benieuwd hoe deze tool het doet vergeleken met TurtoiseSVN
TortoiseSVN is een hele goede client, voor subversion. Dat komt ook omdat subversion erg plat werkt, je hebt wijzigingingen die je wilt vastleggen. Nu kun je voor Git ook zo beginnen, alleen mis de dan de show, of het overzicht als collega's gevorderder zijn met git.

Voor git werkt deze interface niet echt, omdat de git het mogelijk maakt heel makkelijk te branchen en mergen, en dat ook aanmoedigt. Een goede interface voor git heeft als primaire weergave daarom juist de boomstructuur van branches in beeld.

Op het werk hebben mijn collega's veel moeite gehad om Git te snappen toen ze achter de TortoiseGit interface zaten. De gehele branching is zo ver verborgen, terwijl dat een integraal onderdeel van Git is. Met snapte gewoon het wisselen van branches, committen, stashen, rebasen op origin, pull/pushen, en mergen niet. Met een andere interface (toen GitExtensions) snapte iedereen het vrij snel ineens wel.

Ofwel, je beste git client zou juist niet op TortoiseSVN moeten lijken. ;)
Iets als GitExtensions werkt redelijk lekker op Windows - ook al is het deels een rommeltje - en ik hoop dan ook dat deze client van GitHub nog meer verbeteringen met zich mee brengt :)

en als je verbeterpunten voor GitExtensions ziet (die zijn er legio): het is gewoon een VS2010/C# project wat je op GitHub kunt clonen.. Hoe makkelijk wil je het hebben :D

[Reactie gewijzigd door YaPP op 22 mei 2012 23:57]

Tortoise vind ik zelf eigenlijk helemaal niet zo goed. Ik gebruik het voor Git, maar de integratie in Explorer is verre van optimaal. Alle commando's staan in één lang submenu in het contextmenu, en dat is verre van prettig werken. Ik zou liever een goede, gespecialiseerde GUI hebben, maar die heb ik nog niet gevonden. GitGUI voldoet daarbij zeker niet overigens.
Mijn ervaring is dat command line sneller werkt als je er eenmaal aan gewend bent, voor mergen en branchen gebruik ik smartgit. Die heeft geen explorer-integratie, maar dat mis ik totaal niet.
git-cola heeft een aantal aardige features, gebruik het onder linux samen met de command line en soms gitk.
Een leuk idee het enige dat ik nog steeds erg mis is een optie om grafisch te zien welke developer welke versie van welke file heeft uitgechecked en hoe de verschillende versies van files en projecten zich tot elkaar verhouden.

Rational had daar een erg handige interface voor die handig is om te zien welke developer zich zelf in de problemen aan het werken is door met een oude library te werken dan wel in een fork van een fork aan een nieuwe fork begonnen is (vaak niet echt verstandig ;))
Ik heb zo nu en dan developers kunnen helpen door hen te wijzen op een verouderde library dan wel een erg enthousiast gerforkde versie van een tool.
Dit heeft weinig zin voor een persoon dan wel een kleine groep mensen maar als je met een groep van 20 of 40 man wekt kan het erg belangrijk zijn om bij te houden wie waar aan werkt en welke onverlaat nu de nightly build weer heeft laten falen door een checkin te doen van een oudere versie van een file (ugh) Ooit een tijdje als build manager mogen fungeren voor een team van ~40 man en dan is zo'n simpel overzicht waar je snel kunt zien welke bestands versies zijn uitgechecked door wie en waar een fork gemaakt is etc.

Hoe dan ook een Windows client was wel nodig al is het maar omdat er toch nog redelijk wat mensen gebruik maken van dit platform.
Omdat Git gedistribueerd is, is het natuurlijk nooit mogelijk om te zien wie welke versie 'uitgechecked' heeft...
Grappig idee, maar zo werkt git niet. Git is gedistribueerd. Als je een checkout doet met git, dan maak je een complete kloon van het project. Dat is inclusief alle branches en elke commit die ooit geweest is. Daarna kan je compleet offline werken, zelfs committen, branches maken. Er is dus geen manier om te zien wie welke versie heeft. En dat is ook de kracht van git. Dit maakt het forken en patchen heel veel makkelijker.
het enige dat ik nog steeds erg mis is een optie om grafisch te zien welke developer welke versie van welke file heeft uitgechecked
Zoals al opgemerkt werd zit dit bewust niet in git, omdat het model anders is.

Git is heel goed individueel te gebruiken, maar het is juist ontworpen voor projecten van 1000-2000 man. (en niet 20-40 ;)). Het is namelijk gemaakt door Linus Torvalds, die ook aan de Linux kernel werkt. Stel je voor dat hij steeds moet oppassen wie aan welke file werkt? :P

In plaats daarvan hebben ze er voor gezorgt dat Git bijna altijd de wijzigingen kan mergen. Als iemand een bestand hernoemd, en ik mijn wijzigingen daar bovenop rebase, kan git dit nog steeds volgen. Alles wordt gewoon netjes in het hernoemde bestand toegepast. :o Als we beide een bestand hebben aangepast, weet Git ook van welke basis we beide zij gestart, en kan daarmee een hele hoop merges al doen. Het kan zelfs commit voor commit naspelen om een betere merge te krijgen.

Ofwel, je geliefde feature zit er niet in. In plaats daarvan kun je je laten verrassen door de alternatieven die waarschijnlijk zelfs beter werken :)


---

En als je het echt wilt weten, je kunt iedere publieke cloon toevoegen als "remote" aan je git repository. Je krijgt dan nog steeds dezelfde boomstructuur (omdat de commit-id's overal hetzelfde zijn), maar met labels erbij waar welke repository staat toen je die binnenhaalde. Met een "git fetch" kun je dat steeds up to date houden.

[Reactie gewijzigd door YaPP op 22 mei 2012 23:37]

Dat het op W8 kan draaien valt er aan af te zien. Helemaal Metro die UI.

Ziet er mooi uit, en dat ze ook powershell supporten is helemaal leuk.
Dat het volgens de Metro-stijl is vormgegeven heeft er niets mee te maken of het op Windows 8 draait. Het is namelijk een 'gewone' desktop applicatie, niet een Metro Style App (gebouwd op WinRT, draait ook op ARM, etc.) zoals die nieuw zijn in Windows 8.
Inderdaad, net zoals Zune.
Dat is de Cosmopolitan theme voor WPF. Gratis te verkrijgen. Google maar eens.
Werkt op zich wel goed.

Eens kijken of ik het ga gebruik i.p.v. Aptana Studio 3 (deze heeft namelijk soms wat moeite met grotere projecten).

Ook fijn dat gebruik van GitHub.com niet verplicht is.
Kun je ook bijv. Bitbucket.org hosted repos gebruiken dan?
Ik zie nu dat het gebruik van andere hosts wel beperkt is, je kan niet even makkelijk een pull doen. Jammer
Prachtig, ga ik dadelijk eens uittesten.

Hopelijk biedt het een aardig alternatief voor TortoiseGIT, die vind ik toch maar onhandig bij momenten.

Werkt deze tool ook voor algemene git-respositories? Dat is niet echt duidelijk uit het artikel, ik vermoed van wel, maar toch...
Voor Mac OS X is er al een tijdje een GitHub client (ook van GitHub zelf).
Ik ben zelf totaal geen fan van Powershell, ik gebruik juist altijd de Git bash van de standaard Git-installatie als shell, omdat die een aantal unix-commando's ondersteunt.
Slim natuurlijk om zo mensen aan GitHub te locken.

Ziet er leuk uit maar TortoiseGit is al perfect, kun je alles mee wat op de commandline ook kan en mijn mede programmeurs zijn over het algemeen niet zo mooi dat ik er foto's van hoef te zien :p
Ze locken geen mensen aan Github, je kunt hem namelijk ook prima gebruiken met bijvoorbeeld BitBucket :) Is geen enkele moeite voor nodig, op mijn laptop hoefde ik zelfs niet eens in te loggen op BitBucket, hij kon direct synchroniseren en comitten.
Het is geen lock aan GitHub.

GitHub heeft er veel meer belang bij dat Git voor iedereen makkelijk te gebruiken is. Daar winnen ze veel meer mee, en ze merken gewoon dat het gebrek aan een goede client de groei tegenhoud. Wat goed is voor git in het algemeen, pakt waarschijnlijk ook goed uit voor GitHub. Zo hebben ze ook betere tutorials gemaakt, mensen in dienst om Git te verbeteren, en onlangs al een Mac client uitgebrach. Het is iets ruimer bekeken allemaal.

Bovendien, als je kijkt naar de groei van GitHub vs iets anders, zie je dat momenteel de meeste activiteit op GitHub plaatsvind. (zie het maar als "facebook", wat ook met kop boven de rest uitsteekt). GitHub heeft echt geen probleem of strategie nodig om "mensen te locken". :)

Als voorbeeldje; onlangs is Django naar GitHub verhuist (zie http://www.holovaty.com/writing/django-github/) . Eerder had Django zowel op GitHub als Bitbucket een officiele mirror staan. Dit waren de gebruiksstatistieken van beide:
Github (django/django-old)
-----------
Watchers: 4,030
Forks: 753

Bitbucket
----------
Followers: 266
Forks: 39
Ofwel, er zijn maar weinig tegenargumenten te vinden voor die keuze. ;)

[Reactie gewijzigd door YaPP op 22 mei 2012 23:49]

draait op Windows XP, Vista en 7, terwijl het volgens de ontwikkelaars ook op de pre-releases van Windows 8 kan draaien.
De screenshots lijken anders op Windows 8
Ze zeggen toch ook dat het daar op kan draaien? Ik snap je opmerking niet.
Ik las het dat ze niet wisten als het op W8 ging draaien. Excuses als men dit niet zo bedoelde.
De screenshots lijken helemaal niet op Windows 8. Neem bijvoorbeeld de zune software. Precies dezelfde stijl. Maar draait ook gewoon op oudere versies van Windows. Van de screenshot kan je het dus eigelijk niet afzien.
De UI van een programma zelf zegt natuurlijk niets over het OS.
Wow, werkt super!
Onder die indruk was ik ook. TurtoiseGIT was toch niet echt stabiel en het cache process had nog wel eens kuren.

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True