-
Notifications
You must be signed in to change notification settings - Fork 1
Git Guide To Success
This is intended to be a living document and useful git insights you can add to this document to help future developers in the team.
Git is not the same as Github, Git is a version control software and does not rely on Github to exist, Github serves as an online platform to share software with fellow developers online and host git repositories on a server. Git can exist locally on your machine or in a server environment. Version control software is a way for developers to be able to work collaboratively on code without having to worry about causing errors with working code and losing history of past changes. I know that version control software can be a headache especially for new users who are not familiar with many of these concepts, but I can promise you this will save your time and effort in the long run.
I can remember a time when I was working with a fellow engineer whose background wasn't in software development who had been writing code in MATLAB for a aerodynamic engine simulation, in lieu of using git to keep track of changes and versions of working code, we were using email because git seemed complex. That was difficult because when you have various files that are changing keeping everything updated by looking at the latest emails and if you need to revert to an older version good luck finding old emails especially if they haven't been deleted. As you can see using a version control software saves time and long-term issues that may arise.
When working with Git its important to understand the actions you are taking because it's easy to make a mountain out of a small problem you encounter with Git. Feel free to reach out to colleagues whenever your uncertain or stuck to prevent issues. Sometimes issues can take up to 3 or more hours to resolve if you don't know what happened, so stay calm and take your time and make sure you understand your actions.
You can install git on your target platform from here https://git-scm.com/downloads. Depending on the operating system you are using I would suggest looking up on Youtube or your search engine “how to install git on ” for a nice guided video on how to install the current version of git to your system.
- Github Desktop is a simple software tool that helps give users a simple tool to do basic git operations and manage their code that has been cloned on their machine
- Tower is a more powerful tool that students can use for free that offers more advanced visualization and capabilities for managing software repositories.
When you encounter merge events you'll need a good diff tool to help identify the changes you want to keep and changes you want to remove. Here are some free tools that you can configure in your git settings to have work.
- Kdiff3
- Beyond Compare
- Adrian Osorio (Undergraduate Student in CSE)