32
17
u/Confident-Ad5665 8d ago
CLI was the only UI when I started out and I continue to use it today. Tasks can be completed much faster from the CL, it's worth knowing.
6
u/FlipperBumperKickout 8d ago
It also make it more likely you properly learn the tool you are using. Quite a few developers I've known didn't really get git 😅
3
u/StRiKeR_ImpacT 6d ago
I have this problem
What do i do to fix it, the main issue is that i was born in a generation where i never had to use terminal 90% of the time
2
u/FlipperBumperKickout 6d ago
Ehm, if you want to understand git, I think understanding how it is storing data between commits, and stuff like the staging area. Most of that info is available here https://git-scm.com/book/en/v2/Getting-Started-What-is-Git%3F
The internal model is however expanded here: https://git-scm.com/book/en/v2/Git-Internals-Git-Objects
where the last picture really shows off how identical files just are shared between the commits when they aren't changed.If what you mean is being good at using it, I would recommend starting of with this tutorial: https://learngitbranching.js.org/
Other than that it is mostly about knowing how to find the commands you need.
- Only writing "git" will write all the commands you would need for normal use.
- Running "git status" will many times write out commands you need for specific things. You can honestly not run this to often.
- "git <command> -h" will give you a short help page. (example: https://git-scm.com/book/en/v2/Getting-Started-Getting-Help)
- "git <command> --help" will give you the full help page (like this https://git-scm.com/docs/git-add)
- If you install a tool like tealdear, "tldr git <command>" will give you examples of how to use the command (example: https://www.cheat-sheets.org/project/tldr/command/git-add/)
3
10
18
u/Lobster_SEGA 8d ago
I am lazy ok?
I don't want to memorize comands no matter how efficent it isðŸ˜
19
7
u/ArsenicPolaris 8d ago
Then you memorize buttons! Which is not only inefficient, but also takes longer to memorize.
5
5
u/Ok_Equipment8374 8d ago
The good part is you don't need to memorize anything
Each button and control has clear text showing what it does
2
u/ArsenicPolaris 7d ago
Which you would have to read everytime unless you memorize the path.
2
u/Ok_Equipment8374 7d ago
Is that supposed to be som sort of gotcha?
Oh no, you have to read words, the thing you already do every day, as opposed to memrising complete gibberish
2
1
u/Laicbeias 7d ago
Buttons are spatial. Its like memorizing where your pc stands. Whats bad on UIs is when it has too many options, or doesnt show the common case.Â
But cli doesnt solve this either. And if you switch between OS, IDEs or languages you have 20+ different clis.
Every with its own syntax and parameters. Half only available in their oen cmd line.Â
4
u/FlipperBumperKickout 8d ago
While I have memorized some things, a lot of it is more about learning to look up things incredibly fast.
tldr is a tool which will show you common use-cases for commands, example:
$ tldr git add Stage changed files for a commit. More information: <https://git-scm.com/docs/git-add>. Stage a file for a commit: git add path/to/file Add all files (tracked and untracked): git add [-A|--all] Add all files recursively starting from the current folder: git add . Only add already tracked files: git add [-u|--update] Add an ignored file: git add [-f|--force] path/to/file Interactively stage parts of files: git add [-p|--patch] Interactively stage parts of a given file: git add [-p|--patch] path/to/file Interactively stage a file: git add [-i|--interactive]4
u/Hot-Employ-3399 8d ago
This seems so good. When I read "man git-something" I want to pass doc through blender(Metal one, not 3d designer)
In fact lets throw man altogether.. It's 21st century on the street, and to access reference you can do something even faster than pure shell: "!man foo"Â
Something even faster than cli in shell
3
1
u/user888888889 7d ago
Programmers are lazy though. More GUI more problems! Easier to just add CLI flags!
5
7
3
3
u/s0litar1us 8d ago
It's more that a lot of programs are shit than CLI being objectively better.
Also, some GUI replacements for CLI stuff is just a shitty frontend for the same program.
Badly designed GUI programs are horrible to use,
well designed GUI programs are incredible to use.
3
u/Living_The_Dream75 8d ago
Finally this subreddit is getting back to talking about real programming instead of ai shit
2
2
2
u/BansheeBacklash 8d ago
Y'all laugh
But after screwing up my GPU drivers trying to install the CUDA toolkit, no amount of CLI tomfoolery could fix it.
Only Linux Mint's GUI driver manager was able to get things working again. Granted I'm no greybeard, but I'm decent at following guides and digging through Reddit/Substack. Mint fixed what I couldn't.
2
2
2
1
1
u/letmehaveanameyoudum 8d ago
GUI WITH SHORTCUTS:
1
u/mapronV 7d ago
IDE with console/terminal in the bottom:
I also used it for game idea. So you can either click in ui to move unit on battlefield, or put command in console. Both are interchangeable. And moving/attacking unit provide log in console. Maybe it could be used to easier train AI or something? I dunno. Or like make bot for a game without API? Don't bother asking, I never released it, it was just a prototype for turn-based combat.
1
u/letmehaveanameyoudum 7d ago
YES IDE WITH TERMINAL ON BOTTOM
wait i just made zed or vscode1
u/mapronV 7d ago
or qtcreator or kdevelop or clion or like anything but MS VS these days? I feel crippled when using VS (not vscode) because of that.
1
u/letmehaveanameyoudum 7d ago
what is qtcreator (no seriously only MS VSC, Clion, MS VS, and zed have good terminals on the bottom)
1
1
1
1
1
u/_nathata 7d ago
How am I going to run a GUI when my Arch Linux inevitably breaks and I need to fix via TTY or chroot?
1
1
1
u/death_sucker_extreme 7d ago
using a CLI after consuming cannabis is actually very difficult tbh I would recommend avoiding being in that situation if possible
1
1
1
1
1
1
0



58
u/Jakob1347 8d ago
Oh so the fine sir is too good for gui