Git Version Control
Git is a distributed version control system that tracks changes in any set of computer files, usually used for coordinating work among programmers who are collaboratively developing source code during software development. It is a block-chain of changes. You typically install Git on your local machine.
Github is an online web version of Git that has become the defacto place to push your local changes to.
Git was originally authored by Linus Torvalds in 2005 for development of the Linux kernel, with other kernel developers contributing to its initial development. Git is designed to handle everything from small to very large projects with speed and efficiency. It is easy to learn and has a tiny footprint with lightning-fast performance. Git is widely used by developers worldwide for a range of applications, including deep learning and machine learning, signal processing and communications, image and video processing, control systems, test and measurement, computational finance, and computational biology.
Git must be the most powerful, simplest method to track your changes to any file you create. Git works best with simple text editors, like Notepad++, VS Code, or any IDE.
Purpose
Knowing Git is a requirement for any programming job, much like Calculus is a requirement for engineering jobs. But you don't need to be a developer to use it. It's not a programming language. Have you ever created a Word document, and you saved versions of that file with the file name containing the date and time; e.g. "Resume 2023-08-22 10:53.docx", and with Track Changes on? Why did you do this? Because you wanted to go back to see what you did, or perhaps to undo changes if the formatting gets corrupted. Git does this automatically for you, for all files in a folder tree.
With Git, you and your friends can work together in a team-manner to create a project that is expressed as a set of files.
Some uses of Git:
- Finding free, popular open source software. If it's free and you can download it to install on your machine, chances are very high the source code is in Github along with the documentation.
- Discover what technologies are in hot demand. Github tracks the popularity of downloads and commits by programming language. For example, you can see which programming language is downloaded the most.
- Creating a book. Yes, authors often use Git to create their books or academic papers. Markdown and Latex are populate choices.
- Creating a resume. It is well known that employers often look at your Github account to determine how technical you are and what you are interested in.
- Working together, remotely, asynchronously (perhaps in different timezones), to create something in a non-linear manner.
- Scientific Research, for example, with Jupyter Notebooks to create Reproducible Research Papers.
- Learning new ways to develop by looking at other developers commits and pull requests to see how they solved problems.
- Incentive to be a better writer since everyone is looking at what you create.
- Project Planning, where issues are logged and resolved.
- Tools Popular software applications
- Github Use Github to share your projects in the cloud.
Links
- https://en.wikipedia.org/wiki/Git
- Git Book (Scott Chacon and Ben Straub) Apress - Online book for free
The entire Pro Git book, written by Scott Chacon and Ben Straub and published by Apress, is available here. All content is licensed under the Creative Commons Attribution Non Commercial Share Alike 3.0 license. Print versions of the book are available on Amazon.com. The version found here has been updated with corrections and additions from hundreds of contributors.
- What is Git? - Azure DevOps | Microsoft Learn.
- W3Schools Git Tutorial
- Learn the Basics of Git in Under 10 Minutes
- Why Use Git for Your Organization
- What is Git | Atlassian Git Tutorial
- Modern Git Commands and Features You Should Be Using
- Git Tutorial - javatpoint
- What is GitHub?
- Git Tutorial for Dummies?
- How To Use Git Effectively
- Not Just for Coders: 9 Ways To Use GitHub For Creative Work
- Planning and tracking with Projects with Github
- Awesome open-source libraries voted by members
- Repos Beyond Code: A Collection of Creative Uses of GitHub
- What is in that .git directory?