An excellent choice for version control!
August 02, 2018

An excellent choice for version control!

Maike Holthuijzen | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User

Overall Satisfaction with GitHub

All the members of my research team, who are members of various departments, use GitHub for version control. Besides version control for code, we also use GitHub to write collaborative papers and store important code from previous research projects. Developing code as a team is incredibly difficult without good version control software. Fortunately, GitHub facilitates this process by making it easy to reconcile conflicting versions of code or reports. Furthermore, 'branching' makes it easy for several people to work on different sections of a project without affecting the main project. The changes made on 'branches' can later be merged back into the overall project. Since most of the members of my research team are in different buildings within our organization and in different states, GitHub also allows us to all work remotely on code as a team. GitHub avoids the inefficiencies that result from emailing reports to team members and having to merge track changes. Finally, GitHub acts like a back-up tool, which is incredibly useful. GitHub makes it easy to revert back to a previous version of a project, because it saves the changes that are made by team members on a timeline. Overall, GitHub has made our code development much more efficient and saves us a lot of time and hassle!
  • The GitHub feature I like most is that it keeps track of all changes made to a project. Prior to using GitHub, I would write code, delete parts of it and rewrite it...only to realize a few weeks later that I should have kept the original version. With GitHub, I can always go back to a previous version.
  • Although GitHub has a bit of a steep learning curve, it is relatively easy even for beginners to get started. The GitHub website has clear directions for creating a repo, setting up an account and the basics of the GitHub workflow. I found these tutorials very helpful when I started using GitHub.
  • I like that GitHub has options in terms of user interface. Currently, I use GitHub via the command line, but there are also GUIs that make GitHub accessible to beginners as well.
  • Recent versions of MATLAB, R, and PyCharm (plus others) include options to link to a GitHub repository.
  • GitHub is not easy to learn for beginners. It took me about a year to really feel comfortable with it. For those who are not experienced programmers, GitHub can be difficult to get used to.
  • Although I appreciate that GitHub allows merging of different versions, merging two conflicting versions can be quite difficult. The default merge tool in GitHub is vimdiff, which I found incredibly unintuitive. I installed a different tool, Meld, which I like much better.
  • One of the best things about GitHub is that it is free. However, with a free account, you can only create public repositories (anyone can access your repository). You can create private repos in GitHub, but they are not free.
  • Github has increased our rate of code development, increasing our publishing rate. This helps bring attention to the research we are doing and ultimately brings in more funding for further research.
  • Because GitHub makes my team more efficient, we are able to put more hours into code development / report writing rather than agonizing over different versions of code created without version control software.
  • We use a paid version of GitHub, because we work through private repositories, but the increase in productivity, efficiency, and research progress is definitely worth the price.
GitHub is the best tool I've come across for collaborative code development (although it is also great for working on solo code development!). Working with many people on code is usually cumbersome, but with GitHub, it is relatively painless! Because GitHub is free, GitHub is a great choice when money is tight (but again, the free version of GitHub only allows the creation of public repositories). If money is not an issue, however, you can create private repositories for a $7 a month. Because GitHub is rather difficult to learn, I would recommend it to those who have an interest or previous experience in coding and computer science.