Hi all!
Github commands by terminal are a pain , really… But you can do the same in VSCode by some clicks- so easy. A befriended programmer said usually pros are mainly doing the same, avoiding the terminal.
What are your ovservations in professional life? I would like to focus on learning coding, instead of learning weird cryptical github commands…
Thank you!
I’m still learning, and find using the terminal commands very frustrating
However, I still think its important to learn the terminal (even if I hate it)
The fact that people have taken the time to try to teach it early on, means they think its important for beginners to learn.
Even tho you might not think its important right now, you might regret avoiding it later.
Just learn the basics, for now,
If you never have to use it again, great, al least you’ll be familiar enough with it to understand what people are talking about.
But if you do find you cant avoid it later, you will be grateful to have some familiarity…
I was grateful when dabbling in C++ and finding I needed to open VS code using the terminal just to get a compiler to work
First, its worth clarifying most commands most developers will be entering into their terminal are git
not github
. Github is the online service that works with git
to manage your repositories online. git
is the local software used for version control.
The two work great together, but are two separate entities. For example you could be using git
but not be using github, and instead use one of its competitors like gitlab or bitbucket.
There is also the github-cli which allows you to manipulate github on your terminal. Doing stuff like create issues/pull-requests/forks/etc. This is a good complement for git
, but probably not what most think about.
Professionally, working with git
really requires 2 things.
- Knowing the commands/things you want to do
- A good grasp of how
git
works conceptually.
The first one is where a GUI can help in most cases. The second is where no matter how good your GUI is, you still need to know how to wield it. Git can get complicated due to how its designed. Because of this a GUI has to provide enough power to help you visualize/debug/understand/perform tasks with your version control, while also being simple enough to use. Its a hard balance that doesn’t always work.
Its one thing to push your changes to a remote repo, which is easy with a few clicks in the GUI. Its another to rebase your local change, with a cherry-picked commit from another fork, and then dealing with rebase conflicts correctly. Its a complex scenario, requires complex GUI information and is just overall a complex job, not really anything can be done to make it much simpler.
I usually compare it to time travel movies. No matter how simple a premise is, if certain things transpire in a time travel movie, things get complicated. If you go back and prevent your parents from meeting, you create a paradox. If you and a co-worker make the two different changes to the same file, what is git to merge?
In practice most professional developers I know use the terminal for no other reason than being the fastest to use, and the most flexible. Yes its a lot to memorize, but it also can be helped if you understand the concepts behind what your doing. That way you can always google how to solve your problem, and get help with the syntax. At that point its more a question about finding answers to conceptual questions you have with what you want to do in git, but to get there you need to have the conceptual understanding of what your doing.
I’d agree! If you’re just learning, focus on the github commands and use whatever tool works for you. Just keep in mind there is a world of git
with or without the terminal to leverage later.
Do keep in mind that learning how git
works in terms of concepts is more important than the commands itself. Even if you have a powerful GUI (VSCode is pretty solid) you will still need to know how to do what you want in the world of version control.
Good luck, keep learning, keep building
This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.