Today, over 73 million software engineers around the globe use GitHub. While GitHub provides many benefits, including project management, open source collaboration, and automation, early career developers often sign up to host their code and visualize the changes they make over time. Personally, I choose to upload my code to GitHub because:
- It reduces the risk of losing my code. If I only stored my code on a local computer and that computer stopped working, I’d lose my work forever. My code is always accessible to me with GitHub regardless of what computer I’m using.
- It helps me land jobs. GitHub serves as my portfolio for hiring managers and talent sources to gauge my technical expertise better. After graduating from my coding boot camp, GitHub was especially conducive to my job search because I lacked professional software engineering experience.
- It helps me collaborate on projects. Back in the day, before Git and version control (a.k.a. the process of saving different files or ‘versions’ throughout the various stages of a project) existed, people shared their code via email, floppy disk, and other tedious mediums. Today, with tools like GitHub, you can share your code and visually track changes made by each collaborator. I can also communicate with collaborators through comments and GitHub Discussions.
A common way to interface with GitHub is through Git and the terminal. Because Git and the terminal have such a steep learning curve, some developers, especially early career developers, avoid using GitHub. But what if I told you, you could use GitHub to store your programming projects without the command line?
Before I describe the various techniques for leveraging GitHub without Git, I want to clarify the difference between the two tools.
In layman’s terms, Git records snapshots of your projects as you save the changes you make throughout history. This allows developers to confidently return to a past version of a project if they make a mistake or discover a problem. To use it, people install Git on their local computers, and in their terminals, they type commands such as
git commit, and
git push to save their latest changes.
At its core, GitHub is a web-based platform for developers to store code on the cloud. It is also available as a mobile app and desktop app.Through the graphical user interface, developers can use GitHub to work with developers worldwide. Over the years, GitHub expanded its offerings to include project management, automation, deployment, security, and more.
GitHub incorporates Git’s version control features to make collaboration easier.
GitHub Desktop is a desktop application with a graphical user interface that allows you to retrieve, edit, and save code to GitHub without touching your terminal. Read the official documentation to learn more about installing, configuring, and using GitHub Desktop.
You can upload, edit, and find files directly from GitHub.com without downloading the files or navigating the terminal.
- Option 1: You can edit the files directly at GitHub.com after uploading them.
- Option 2: You can edit your files on your local computer, drag and drop your entire folder, and GitHub will “auto-magically” determine which files were changed and only upload the edited files.
You can find GitHub’s free, web-based editor at https://github.dev. The web-based editor introduces a lightweight editing experience that runs entirely in your browser. With the web-based editor, you can navigate files and source code repositories from GitHub, and make and commit code changes. You can open any repository, fork, or pull request in the editor. Read the official documentation editing and saving files via github.dev.
Even if you don’t know Git or feel intimidated by the terminal, you can still use GitHub to back up your code, track changes, and build your portfolio. Of course, as your skills grow and you land a new role, your employer may prefer that you use Git.
Over the next few weeks, I’ll share tips about Git and GitHub that I’ve learned and continue to learn throughout my career in tech. Give me a follow to avoid missing my upcoming blog posts!! Let’s grow together and become version control pros!