this post was submitted on 26 May 2024
43 points (92.2% liked)

Git

2886 readers
20 users here now

Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.

Resources

Rules

  1. Follow programming.dev rules
  2. Be excellent to each other, no hostility towards users for any reason
  3. No spam of tools/companies/advertisements. It’s OK to post your own stuff part of the time, but the primary use of the community should not be self-promotion.

Git Logo by Jason Long is licensed under the Creative Commons Attribution 3.0 Unported License.

founded 1 year ago
MODERATORS
 

I used CVS and ClearCase before moving into Git, and it took me some time to adjust to the fact that the cost of branching in Git is much much less than ClearCase. And getting into the "distributed" mindset didn't happen overnight.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 0 points 5 months ago (2 children)

I tried to follow tutorials that use the command line. In hindsight that is terrible way to teach Git, which is fundamentally quite a visual thing.

It's like trying to teach people about filesystems only using cd, ls and pwd instead of just showing them a file tree.

Actually it's even worse because Git's CLI is so notoriously awful.

Eventually I tried Sourcetree which made it all make sense. Though Sourcetree isn't a very good GUI, mainly due to being hella slow. I eventually switched to GitX which is probably the best GUI I've used so far and makes everything extremely clear and easy. Unfortunately Mac only.

I now mostly use the Git Graph VSCode extension which is excellent and integrates pretty well with VSCode. Unfortunately it has been abandoned by its author and they frustratingly included a license clause saying only they could release versions of it, so it's basically abandonware. But it still works so I'll figure out a replacement when I have to.

[–] [email protected] 2 points 5 months ago

Oh dang, I use that extension too and I didn't know it was abandoned. Let me know if you find a good replacement

[–] [email protected] 1 points 5 months ago (1 children)

If you use the git command line (and I do) you should spam git log --graph (usualy with --oneline).

And for your filesystem example I sure do hope you use tree!

[–] [email protected] 1 points 5 months ago (1 children)

you should spam git log --graph

Yeah... but that's just a poor man's GUI. Why use that when you can use a proper GUI? The only reason I can think of is if you happen to be in a situation where using a GUI is a bit of a pain (e.g. SSH).

[–] [email protected] 1 points 5 months ago

It's a question of workflow. Git doesn't guide you (it's really workflow agnostic) and I find it easier to taillor CLI to fit my exact need, or use whatever was recently added (like worktrees a few years ago). I have yet to find a GUI/TUI that I'm not frustrated with at one point but everyone has its own preferences.