Welcome to 6 Things They Don't Tell You About Hacktoberfest (When You're Learning to Code). In this series, we’re sharing tips for self-taught coders that the official Hacktoberfest resources may not cover.
Please note that, while contributors can use either GitHub or GitLab to participate in Hacktoberfest, we’ll only be discussing GitHub in this article.
One misconception I had when I started Hacktoberfest was that I would not have to touch the command line. After all, I had been teaching myself HTML, CSS, and JavaScript for the past few months and had managed to avoid it thus far.
From what little I understood about version control, I knew that GitHub was based on Git. I just thought GitHub was a standalone visual interface that would allow me to never have to use Git through the terminal window.
As I quickly learned, GitHub often works in conjunction with—not instead of—Git. Some steps, such as forking a repository and creating a pull request, are usually performed through GitHub. Others, such as cloning the fork to your local machine and staging, committing, and pushing changes, are frequently done through the command line. You'll regularly find yourself tabbing back and forth between the two windows throughout the pull request workflow.
This also means that GitHub's help resources will only get you so far. The first time I tried following along with the Contributing to a project tutorial on GitHub Docs, I got hopelessly stuck trying to create a branch using Git Bash, receiving the error message fatal: not a valid object name: 'master'. When I reached out to the GitHub Doc's team for help, I was respectfully told that, because Git Bash is not their product, they unfortunately were limited on what troubleshooting tips they could include in the article. In the end, it took me three hours to figure out I was in the wrong directory.
The punchline is that I later found out that I actually could have cut out the command line entirely by simply using GitHub Desktop. But I view this oversight as a happy accident. MDN posits that learners will benefit from practicing at least the basic Git terminal commands. After having been through it myself, I have to agree.
The moral of the story is not to rely on GitHub to solve your Git problems. If you're able to figure out how to use Git with no prior knowledge of the command line using only GitHub Docs, it likely means you never pushed yourself to open Git Bash in the first place.
In this line of work, using the command line is inevitable and avoiding it will only get you so far in your career. So don't fear or resist it like I did; jump right in and embrace the uncertainty.
Conclusion
I went into Hacktoberfest expecting that everything I needed to do on GitHub could be done through the browser. My advice to you is to let go of any such preconceived notions.
Yes, you can avoid the command line for a good, long time if you really want to, but don't.
Yes, everything—from the Ctrl+Shift commands to new ways of navigating the cursor—will take some getting used to. (Terminal? Command line? Am I even using these terms correctly?) But take some confidence in knowing that you don't have to wait until you feel "ready" to start putting real contributions out into the world.
There is another instance during Hacktoberfest where you might unwittingly find yourself using the command line. We'll discuss it in the next post. NEXT POST ▶️
✒️ Contributors, what are some rookie mistakes you've made in the past that you wish someone had warned you about?
📝 Maintainers, what are some of your pain points that you wish more new coders were aware of?
Comment below and let's spread the knowledge!
This is a submission for the 2024 Hacktoberfest Writing challenge: Contributor Experience
Top comments (0)