My Tools: Git and Github

Another blogpost in my series about the tools I use. This one is about version control, and more specifically Git and the Github service.

Git

When I started with PHP and version control, CVS was the main VCS to use. Not just because it was the best (this is actually not a fact), but mostly because all the hosting services out there supported it, most specifically, SourceForge did. It worked in terms of version control, but it was not that easy to use. So when Subversion came around and became the major version control tool in the PHP world, this was a welcome change. I've used it for years and I've loved it and hated it at times.

Then some years ago, this new VCS started making it's rounds in the PHP community. Git quickly became the talk of the town and when project after project started switching to Git, it was time to have a good look at it. The main difference was clear: Git was a distributed VCS as opposed to the centralized VCS'es I was used to at the time. And while this was mostly an advantage for (distributed) teams of developers, even when working on a project by yourself it was quite useful.

One of the immediately advantages I saw was the fact that you can commit and thereby create a history while disconnected from the Internet. Since I travel quite a bit and don't always have a data connection available, this is an awesome feature for me. Now I didn't have to save up my commits until I got to a connection, and it was much easier for me to adhere to the atomic commits best practice.

There are definitely many more advantages to me though. The easy branching for instance, making it much easier for me to work on functionality and then merge it back when done. This makes it much easier to work on different functionality in parallel as well, and even also do bugfixes in the meantime.

And of course the team functionality. You only have to look at, for instance, the Symfony2 repository to see how easy it becomes to contribute to an open source project. And it's no different for private projects. Additionally, if you set up your processes correctly, there is much more quality control, making the code of a higher quality.

Github

I think Github contributed a lot to the success of Git in the PHP world. I've heard a lot of stories from people I trust that Mercurial is actually a much better, easier dVCS than Git. However, at the point where dVCSes started to become popular amongst PHP developers, Github actually made the difference. The collaboration features Github adds to the Git base enhances Git to a level where collaboration and contribution becomes so easy it would be stupid not to contribute and collaborate. Pull requests, the ease of setting up private repositories, easy integration with other tools, clear and well-maintained documentation, it all helps.

I personally use Github for most of my projects these days. Whether it is private projects I do either for myself or my company or it is public projects, Github is my main hub for VCS-hosting these days.


Add comment

Comments

gravatar www.isevenenergy.com.br: Github is a great tool for people who works with PHP.
March 20, 2013
gravatar headphones hoodie: "crossfade lp has quickly become the #1 lifestyle dj headphone and ranked 4.5-5 stars at retailers through innovation and build quality," says val kolton, v-moda ceo and dj. it offers normal shooting mode that captures video at up to full hd 1080p at 60 frames per second. no static, hisses, or pops. the ear cups are very comfortable and can be used for a long time without any strain on the ears.
May 15, 2013
gravatar fertilizer pack: packaging and cost: liquid fertilizer qt.(item # 953251). lilac, viburnum, yew, spruce, boxwood, hydrangea, sumac, roses, azalea, rhododendron, ninebark, weigela, potentilla, spirea. updated video of my pet largemouth bass at feeding time. don't forget the starter fertilizer when you plant your lawn! bauerle, w.; short, t.; mora, e.; hoffman, s.; nantais, t.
May 17, 2013
gravatar cd player outdoor: the 2000 tahoe z71 uses a multi-point fuel injection system and its gas tank has a 30 gallons capacity. however:- i installed axialis cd player, and the spin up speed was much lower, but the s/w was trial version only. would you like to comment? create a free account! watch more videos from obitosorry.
May 29, 2013
gravatar headphones to watch tv: being physically active is an essential part of any healthy lifestyle. and i enter and there is a multifaceted kaleidoscope to entertain me. after all, this is a device that you almost always have with you and it’s one which is simple and quick to use. - headphone output volume control. additional modules may be added to the 5360 ip phone to enhance its functionality.
June 6, 2013

Php5_zce_logo

Tags

1337 2008 2010 2011 4developers access modifiers accessibility AdaLovelaceDay09 advent agavi agile alfred amsterdam amsterdamphp apache api apple article articles atk atkMetaNode audioscrobbler autoloading automation azure backwards compatibility barcelona barcodes bash bbc bbq beatstad belgium best practices bittorrent blogging blogs boards of canada book books bughuntday bundle caching cake cal evans calendar career cat cerf certificate cfp cilex clear cms cologne common sense communities community components composer conference conferences contest continuous integration contribute contribution crisis css curl custom d-day data migration datetime DbFinderPlugin decorator decorators deployment deps devdays development directoryindex directoryiterator docblox doctrine doctrine2 documentation download dpc dpc09 dpc10 dpc11 DPC2008 dreamhost drupal dv7 eclipse ed editors efficiency enterprise errors event events expertise ezcomponents facebook filter-branch filteriterator finland flickr fork framework frameworks free ticket freelance freeze frontend fun game games geoip germany getting real git github globiterator gnome-do google google calendar googletalk graceful degradation hack hackers hidden gem hiphop howto hp HR html http i386 ibuildings icann ide ideasofmarch idm imovie inclusivity indy ingewikkeld integration international php conference internet interview ipad IPC ipc ipc08 ipc10 ipc11se iterators iterm2 javascript jenkins jenkins-php job job openings jobeet john peel joomla joomladays kiva kubuntu launcher launchy left on the web libcurl libraries library lighttpd lime linktuesday linux live london loudblog m2ts mac magazines malware mambo manchester marjolein mediterra meeting meme meta methodology micro-financing microframework microsoft migration movie music mysql namespace namespaces netbeans netherlands newsfire nllgg northeastphp nos odmarco open source opinion ORM osx paradiso paris partnership pavilion pear pecl performance personal pfc10 pfc11 pfcongres pfcongrez pfz pfz.nl photo php PHP php5.3 phpabstract phpazure phpBB phpbb phpbelgium phpbenelux phpbnl10 phpday phpdoc phpdocumentor phpgg phpitalia phpnw phpnw08 phpnw11 phpnw12 phpstorm phptek phptek09 phpuk2009 phpUnderControl phpunit php|architect php|tek podcast politics portability postcrossing presentation presentations private projects protected prototype PSR-0 public python qa qr codes re2c recruiting refactoring review rewrite ruby on rails san francisco schedule scifi script security sensio seven things sexism sfdaycgn sflive2011 shell scripting silex simplexml slides smfony software sogeti solar sound speakers spl ssh standard standards star trek static steer strings stylesheets subversion symfony symfony live symfony2 Symfony2 symfonycamp symfonyday symfonylive symfonyUnderControlPlugin talk talks tech techademy technology techportal tek09 telecommuting terratec terrorism testfest testing textmate textpattern the right tool timeout tips tld todo tomas tools training twig uncon unet usability usergroup validation vhost video vim vinyl virus warp webinar weblogging webservices wiki windows winphp women wordpress work workshop world world of warcraft wpi writing wunderlist xml xpath xsd yara year youtube zc11 ZCE zemanta zend zend framework zend server zend studio zendcon Zend_Form zite
© 2004 - 2013 Stefan Koopmanschap + Powered by Symfony, photos powered by Flickr, links powered by Delicious, Shanghai smilies by Iconbuffet. Feeds: rss / atom. Left on the Web v4.4.0.1