Git & Markdown
Git
- if you are reading this, you've probably heard of GitHub (opens in a new tab)
- a super common misconception is that
git
(or GitHub) is just a website where you keep your code, but it is actually so much more than that git
is actually a tool for version control and GitHub is just the current most popular platform and pretty much defacto industry standard- a close second to GitHub would be GitLab (opens in a new tab) and back in the day BitBucket (opens in a new tab) was huge
- version control means that
git
keeps track of all incremental changes and the entire history of changes made to a project git
is great for collaborating on code. not only will you always be able to see who contributed what and when but if devs are working on the same things at the same time, it can show conflicts so devs don't step on each other's toes and overwrite their work- since it keeps track of history, if something goes wrong, you can revert or rollback to a previous version of the project
- another important feature is the ability to split off branches, meaning you can work on a feature or squash bugs without affecting the main source of truth code until you are ready to merge in the new code
- on top of version control and collaborating,
git
(or GitHub) definitely also is where you keep your code and and where you can deploy that code to cloud based hosting providers (like AWS, Azure, Heroku, Netlify, Vercel, etc.) and infrastructure as code tools git
has also become integral to DevOps practices like CI/CD (Continuous Integration/Continuous Deployment) which involves automatically integrating code changes from multiple contributors into a main repository, and automating testing. Continuous Deployment (CD) automates the delivery of code to various environments, leading up to production
Markdown
- so
markdown
is a lightweight markup language, think of it as like "HTML Lite" or something. in fact, you can even use HTML inmarkdown
files if you feel compelled - the reason I want to mention it here is because
markdown
is the standard for README ingit
repositories markdown
isn't exactly a programming language, its more used for documentation, notes, and instructions and that is exactly what README files are for- most decent
git
repositories have good README files that will tell you about the tech stack used in the project, how to run the project locally and whatever else the devs want to tell you about or showcase. check out this repo (opens in a new tab), its an open source template for enterprise projects. if you scroll down pased all the code, you will see the README.md file rendered with instructions, images, suggestions, etc and that is allmarkdown