Join devRant
Do all the things like
++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatar
Sign Up
Pipeless API
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple API
Learn More
Search - "git gui"
-
Me: *just playing around with Git on my terminal*
Friend: "Man, you're such a geek, typing your git command on the terminal.. I myself can't use git without the GUI at all"
Me: *stares at him in silence*
Me: "Wait... THERE 'S A GUI FOR THAT?"
*true story when I was in college*40 -
It's more than a story bear with me.
Open source world is big enough to scare a beginner like me, which happened when I started with my first contribution in the year 2015. So many platforms, lot of organisations, freaking images of coding languages, pull request, issues and bugs- these all were enough to freak me out.
The only thing which motivated me to stay and know about the open source technology was to develop my first program using python. I was in great difficulty as when I started writing my program I was stuck after almost every two to three stages of compilation, so I needed guidance. I started my search on Github by creating my repository, pushing my code and following developers. I was amazed to see such a good response from people around me, not only they helped me to debug and fix the issue but they also helped me to understand and build my program from a new perspective. Daily discussions and communication, new issue build up and solving them by the traditional way of GUI further motivated me to learn the Git using the command line tool.
I still remember the year I worked on a repo using the command line tool, it was amazing. Within months or few, the fear of open source tools, community, interaction all just flew away. With this rant I will like to suggest all the beginners and open source enthusiast to just step a foot ahead and ask openly to the world- "I need help" and believe me you will be showered with information and help from all the world.
Happy contribution.8 -
More than half my class: "I prefer the gui from git for Windows to the command line"
The same half: "whoops... How do I revert that?"13 -
Let the student use their own laptops. Even buy them one instead of having computers on site that no one uses for coding but only for some multiple choice tests and to browse Facebook.
Teach them 10 finger typing. (Don't be too strict and allow for personal preferences.)
Teach them text navigation and editing shortcuts. They should be able to scroll per page, jump to the beginning or end of the line or jump word by word. (I am not talking vi bindings or emacs magic.) And no, key repeat is an antifeature.
Teach them VCS before their first group assignment. Let's be honest, VCS means git nowadays. Yet teach them git != GitHub.
Teach git through the command line. They are allowed to use a gui once they aren't afraid to resolve a merge conflict or to rebase their feature branch against master. Just committing and pushing is not enough.
Teach them test-driven development ASAP. You can even give them assignments with a codebase of failing tests and their job is to make them pass in the beginning. Later require them to write tests themselves.
Don't teach the language, teach concepts. (No, if else and for loops aren't concepts you god-damn amateur! That's just syntax!)
When teaching object oriented programming, I'd smack you if do inane examples with vehicles, cars, bikes and a Mercedes Benz. Or animal, cat and dog for that matter. (I came from a self-taught imperative background. Those examples obfuscate more than they help.) Also, inheritance is overrated in oop teachings.
Functional programming concepts should be taught earlier as its concepts of avoiding side effects and pure functions can benefit even oop code bases. (Also great way to introduce testing, as pure functions take certain inputs and produce one output.)
Focus on one language in the beginning, it need not be Java, but don't confuse students with Java, Python and Ruby in their first year. (Bonus point if the language supports both oop and functional programming.)
And for the love of gawd: let them have a strictly typed language. Why would you teach with JavaScript!?
Use industry standards. Notepad, atom and eclipse might be open source and free; yet JetBrains community editions still best them.
For grades, don't your dare demand for them to write code on paper. (Pseudocode is fine.)
Don't let your students play compiler in their heads. It's not their job to know exactly what exception will be thrown by your contrived example. That's the compilers job to complain about. Rather teach them how to find solutions to these errors.
Teach them advanced google searches.
Teach them how to write a issue for a library on GitHub and similar sites.
Teach them how to ask a good stackoverflow question :>6 -
Okay guys, this is it!
Today was my final day at my current employer. I am on vacation next week, and will return to my previous employer on January the 2nd.
So I am going back to full time C/C++ coding on Linux. My machines will, once again, all have Gentoo Linux on them, while the servers run Debian. (Or Devuan if I can help it.)
----------------------------------------------------------------
So what have I learned in my 15 months stint as a C++ Qt5 developer on Windows 10 using Visual Studio 2017?
1. VS2017 is the best ever.
Although I am a Linux guy, I have owned all Visual C++/Studio versions since Visual C++ 6 (1999) - if only to use for cross-platform projects in a Windows VM.
2. I love Qt5, even on Windows!
And QtDesigner is a far better tool than I thought. On Linux I rarely had to design GUIs, so I was happily surprised.
3. GUI apps are always inferior to CLI.
Whenever a collegue of mine and me had worked on the same parts in the same libraries, and hit the inevitable merge conflict resolving session, we played a game: Who would push first? Him, with TortoiseGit and BeyondCompare? Or me, with MinTTY and kdiff3?
Surprise! I always won! 😁
4. Only shortly into Application Development for Windows with Visual Studio, I started to miss the fun it is to code on Linux for Linux.
No matter how much I like VS2017, I really miss Code::Blocks!
5. Big software suites (2,792 files) are interesting, but I prefer libraries and frameworks to work on.
----------------------------------------------------------------
For future reference, I'll answer a possible question I may have in the future about Windows 10: What did I use to mod/pimp it?
1. 7+ Taskbar Tweaker
https://rammichael.com/7-taskbar-tw...
2. AeroGlass
http://www.glass8.eu/
3. Classic Start (Now: Open-Shell-Menu)
https://github.com/Open-Shell/...
4. f.lux
https://justgetflux.com/
5. ImDisk
https://sourceforge.net/projects/...
6. Kate
Enhanced text editor I like a lot more than notepad++. Aaaand it has a "vim-mode". 👍
https://kate-editor.org/
7. kdiff3
Three way diff viewer, that can resolve most merge conflicts on its own. Its keyboard shortcuts (ctrl-1|2|3 ; ctrl-PgDn) let you fly through your files.
http://kdiff3.sourceforge.net/
8. Link Shell Extensions
Support hard links, symbolic links, junctions and much more right from the explorer via right-click-menu.
http://schinagl.priv.at/nt/...
9. Rainmeter
Neither as beautiful as Conky, nor as easy to configure or flexible. But it does its job.
https://www.rainmeter.net/
10 WinAeroTweaker
https://winaero.com/comment.php/...
Of course this wasn't everything. I also pimped Visual Studio quite heavily. Sam question from my future self: What did I do?
1 AStyle Extension
https://marketplace.visualstudio.com/...
2 Better Comments
Simple patche to make different comment styles look different. Like obsolete ones being showed striked through, or important ones in bold red and such stuff.
https://marketplace.visualstudio.com/...
3 CodeMaid
Open Source AddOn to clean up source code. Supports C#, C++, F#, VB, PHP, PowerShell, R, JSON, XAML, XML, ASP, HTML, CSS, LESS, SCSS, JavaScript and TypeScript.
http://www.codemaid.net/
4 Atomineer Pro Documentation
Alright, it is commercial. But there is not another tool that can keep doxygen style comments updated. Without this, you have to do it by hand.
https://www.atomineerutils.com/
5 Highlight all occurrences of selected word++
Select a word, and all similar get highlighted. VS could do this on its own, but is restricted to keywords.
https://marketplace.visualstudio.com/...
6 Hot Commands for Visual Studio
https://marketplace.visualstudio.com/...
7 Viasfora
This ingenious invention colorizes brackets (aka "Rainbow brackets") and makes their inner space visible on demand. Very useful if you have to deal with complex flows.
https://viasfora.com/
8 VSColorOutput
Come on! 2018 and Visual Studio still outputs monochromatically?
http://mike-ward.net/vscoloroutput/
That's it, folks.
----------------------------------------------------------------
No matter how much fun it will be to do full time Linux C/C++ coding, and reverse engineering of WORM file systems and proprietary containers and databases, the thing I am most looking forward to is quite mundane: I can do what the fuck I want!
Being stuck in a project? No problem, any of my own projects is just a 'git clone' away. (Or fetch/pull more likely... 😜)
Here I am leaving a place where gitlab.com, github.com and sourceforge.net are blocked.
But I will also miss my collegues here. I know it.
Well, part of the game I guess?7 -
I don't get it when people (developers) complain that git is hard and unintuitive to use.
Most of these people use some GUI client to do the dirty work. I've found every Git GUI client that I've tried tedious.
Does anyone relate?15 -
Him: "I don't need source control, it's just another program that does unknown things on my source files. What if one day it stops working?? How do I get my files??"
Me: "you could say the same thing on 90% of the tools you use every day... Like when you restore npm packages by GUI"
him: "what are those? I don't use them"
Also him: "command line is vintage"2 -
Godmotherfuckingshitpissballs fuck software development. Seriously wtf.
I learned c# and Unity for 4 fuckin years. Now I want to learn Electron and i just cant get it to fuckin work that motherfucker!
Installed node.js into a folder on my Desktop, git cloned the quick start app, copied the files, npm start and wow it starts.
ONCE.
It does not start anymore wtf? Also the stupid tutorials that I bought dont fuckin explain how to set it up properly wtf...
Doesnt help that im a windows noob and the guy in the tutorial is a macSnob.
Goddamnit I hate this phase of learning stuff. It fuckin sucks.
Also software development is around for like what? 30 years and electron is the best solution for GUI that people came up with? Fuck me.30 -
Our IT-Class project: Mathematics trainer in Java
Day 1 (was monday)
TL;DR we didn't save.
So we formed groups and I landed in the UI team with, let's call him Mage and let's call her Goth.
We had an eclipse project folder on our desktop (they said it only works when put on desktop) Btw they didn't even want to use a cloud or something (I wish we'd use git and I'd finally learn it). We should take the changes by USB from computer to computer.
So me, Mage an Goth are making a basic GUI for this Mathematic-Training App. We use this thing from Eclipse but I forgot the name. It has not enough functionality on surface and I hate things that break complex things up to ease things but leave away so much.
So after a productive hour of building a GUI and centering shit by calculating the top and bottom distance and use margins (hurts me really but Mage was designing, Goth intensively calculating on paper), the bell rings.
Mage wants to save the project on my USB-Stick and bamm💥
A black screen.
I don't know how it happened but it sure had something to do with the USB-port looking like you fucked it with a way to huge🍆. It looked damn broken.
So because we have a nice App called HD-Guard, which fucking wipes the desktop on startup and resets all but the documents/images/videos/music folder —
It's all's gone. Today is day 2 of this project so let's see how today turns out.3 -
I had to migrate ~100+ svn repos to git that were "useful" according to the client but found out that there were a lot of projects (+6yrs old) with only one commit message "--no-commit-message" and i'm not even joking...
And then I had to explain to these "devs" how to use fucking git with eclipse (+they all use light theme...) cos' terminal or gui client is too complicated
And then I saw their "Java libs" with ~3k line of spaghetti
Do you even dev bro?2 -
Oh my motherfucking God...
How the fuck can a dumb IDE be so fucking slow? I entered the office at 8:15. And I am still unable to checkout a motherfucking previous version of an android app in git and get Android studio to build it, because the fucking gradle is so damn slow it freezes the GUI. WHAT. THE. FUCK. Android studio get you shit together and maybe, just maybe don't be such a dick!!!
You need 5 min to open that project and another 10 to build it ONLY FOR ME TO REALIZE THAT I HAVE TO REPEAT THAT WHOLE PROCEDURE BECAUSE I NEED A DIFFERENT APP VERSION FROM THE GIT REPO FUCK YOU YOU SHITFACED STUPID COCKSUCKING CUNT, SHIT FUCK ARRRRGH!!!
Sincerely,
Me.
Edit: now it's 9:35 btw6 -
[See image]
This guy is wrong in so many ways.
"Windows/macOS is the best choice for the average user. Prove me wrong."
There are actually many Gnu/Linux based operating systems that's really easy to install and use. For example Debian/any Debian based OS.
There are avarage users that use a Gnu/Linux based operating system because guess what. They think its better and it is.
Lets do a little comparision shall we.
- - - - - Windows 10 - - Debian
Cost $139 Free
Spyware Yes. No
Freedom Limited. A lot
"[Windows] It's easy to set up, easy to use and has all the software you could possibly want. And it gets the job done. What more do you need? I don't see any reason for the average joe to use it. [Linux]"
Well as I said earlier, there are Gnu/Linux based operating systems thats easy to set up too.
And by "[Windows] has all the software you could possibly want." I guess you mean that you can download all software you could possibly want because having every single piece of software (even the ones you dont need or use) on your computer is extremely space inefficient.
"Linux is far from being mainstream, I doubt it's ever gonna happen, in fact"
Yes, Linux isn't mainstream but by the increasing number of people getting to know about Linux it eventually will be mainstream.
"[Linux is] Unusable for non-developers, non-geeks.
Depends heavily on what Gnu/Linux based operating system youre on. If youre on Ubuntu, no. If youre on Arch, yes. Just dont blame Linux for it.
"Lots of usability problems, lots of elitism, lots of deniers ("works for me", "you just don't use it right", "Just git-pull the -latest branch, recompile, mess with 12 conf files and it should work")"
That depends totally on what you're trying to. As the many in the Linux community is open source contributors, the support around open source software is huge and if you have a problem then you can get a genuine answer from someone.
"Linux is a hobby OS because you literally need to make it your 'hobby' to just to figure out how the damn thing works."
First of all, Linux isnt a OS, its a kernel. Second, no you dont. You dont have to know how it works. If you do, yes it can take a while but you dont have to.
"Linux sucks and will never break into the computer market because Linux still struggles with very basic tasks."
Ever heard of System76? What basic tasks does Linux struggle with? I call bullshit.
"It should be possible to configure pretty much everything via GUI (in the end Windows and macOS allow this) which is still not a case for some situations and operations."
Most things is possible to configure via a GUI and if it isnt, use the terminal. Its not so hard
https://boards.4chan.org/g/thread/...21 -
Finally, after a a few months...
A few months ago I started a personal git gui project for learning purposes. I wanted to learn C and Gtk on Linux. After a few days of coding I wanted to include the glade file in the binary, searched the internet and found old results with no success. Fast forward to today, I start yet another project without finishing my last one (this one is also c and gtk). I'm still having this problem with the damn glade file. So I keep looking for an answer and finds two solutions, none of them worked but when mixing them together it finally works.
Damn it feels good to succeed after trying/working hard on something you've struggled with. This is what keeps my motivation up. That amazing feeling of success... ☺️7 -
Me: we should take this project a little more serious, follow the coding standards and please let us use git!
Pal: Oh sure.
//made a new repo and the first commit, sent the link and prepared everything (Granted access etc.)
//2 weeks later
Me: What's up, I already got quite some commits and you haven't pushed anything so far.
Pal: Pushed? what do you mean?
Me: I'm the talking about the git repo, I'm the only one contributing.
Pal: Oh yeah git, I installed it but I have no idea how that stuff works. I opened Git gui but i don't know what I'm supposed to do. I got everything in the Dropbox tho.
Me: ... ... ... FUUUUUUUUU WHAT THE FUCK MATE ARE YOU SHITTING ME, THE HELL DO WE HAVE GOOGLE FOR AND WHY DIDNT YOU ASK, LIKE WTF SERIOUSLY I EXPLICITLY TOLD YOU TO USE GIT.
😣2 -
As a Dev in college working for teams in college, I don't really have a need to use git, since most of 'self proclaimed prestigious programmer child prodigies' I work with have no idea what it is; but I use it anyways as good programming practice and ease of backups.
So I tried using a GUI client after months of the git bash, and even though I looked up a few tutorials (was embarrassed the whole fucking time). I ended up adding, committing and pushing via bash.
Can anyone explain me how is the GUI client helpful in large projects and stuff?8 -
What’s happening to devrant the other day I saw a post how ppl preferred git gui over cli, just now saw a post where light theme ppl united. Where is my elitist crew?
I use arch btw /s20 -
My boss drives me crazy. He hired me for working on his SDK which is game related. So I am responsible for basically everything, including an ingame UI (menu etc.) and to predict the future path of a game object (unit, minion, ..) when a certain spell is casted on it. For that task I divided the prediction into firstly getting the predicted path of the unit without a spell being casted and then a class that would cast the spell on that path and estimate the units reaction to that cast. Simplified, but that way you get a pretty okayish result. Now he thinks that is too complicated. "Can we not put everything into one class, if someone wants to replace the prediction he needs to read documentation for hours". WHAT THE FUCK DID YOU EXPECT, THAT IT'S GONNA BE SOME ONE CLASS 3K LINES MAGIC??
Same for the GUI. We only have DirectX and don't want to use a framework. Guess what, it's more than one class if you want to seperate view, model, controller or whatever fucking "design pattern" thing you use.
And then Git... he seriously said let's not use branches till release, I feel like they slow down things.. before I was there they did every operation on master.
And if it was just that..
/rant
I put much work into this, time to leave?1 -
Not really a rant and not very random. More like a very short story.
So I didn't write any rant regarding the whole Microsoft GitHub topic. I don't like to judge stuff quickly. I participated in few threads though.
Another thing is I also don't use GitHub very much apart from giving 🌟 to repos as a bookmark. Have one hobby project there. That's all. So I don't worry that much. I'm that selfish and self concerned. :3
I was first introduced to version control system by learning how to use tortoisesvn around 2008. We had a group project and one of the guys was an experienced and amazing programmer unlike the rest of us. He was doing commercial projects while we were at our 1st and 2nd year. Uni had svn repo server. He taught us about tortoisesvn. He also had Basecamp and taught us how to use it as well. So that's how I learned the benefits of using versioning tools and project management tools. On side note, our uni didn't teach any of those in detail :3
After that project, I was hooked to use versioning tools. So until school kicked me out, I was able to use their svn server. When I was on my own, I had to ask Google for help. I found a new world. There are still free svn services that I can use with certain limited functions. That's not the new world; I found people saying how git is better than svn in various ways. It was around 2010,2011.
At first I was a bit reluctant to touch git because of all the commands in terminal approach. But then I found that there is tortoisegit. I still thank tortoisesvn creator for that. I'm a sucker for GUI tools. So then I also have to pick which git servers to use. Hell yeah, self hosted gitlab is the way to go man. Well that's what the internet said. So I listened. I got it up and running after numerous trial and error. I used it briefly. Then I came back to my country on 2012-2013; the land of kilobytes per minute (yes not second, minute).
My country's internet was improved only after 2016. So from 2013 to 2016, I did my best not to rely on internet. I wasn't able to afford a server at my less than 10 people, 12ft*50ft office. So I had to find alternative to gitlab which preferably run on windows. Found bonobo and it was alright. It worked. Well had crazy moments here and there when the PC running Bonobo got virus and stuff. But we managed. We survived. Then finally multi national Telecom corporates came to our country.
We got cheaper and faster mobile data, broadband and fiber plans. Finally I can visit pornhub ... sorry github. Github is good. I like it. But that doesn't mean I should share my ugly mutated projects to the rest of the world. I could keep using Bonobo but it has risks. So I had to think for an alternative. I remembered that gitlab didn't have cloud hosting service when I checked them out in the past. So I just looked into Bitbucket and happy with their free plans of 5 users and unlimited private repos. I am very very cheap and broke.
That's why I said I don't really care that much about the whole M$GitHub topic at the beginning. However due to that topic, I have visited GitLab website again and found out they have cloud hosting now and their free plan is unlimited users and unlimited repos. So hell yeah. Sorry BB. I am gonna move to cheaper and wider land.
TL;DR : I am gonna move to GitLab because of their free plan.4 -
So the makers of Sublime Text are working on a GUI Git client now?
It looks really interesting, could be a good alternative to Gitkraken!
Here's the link btw: https://www.sublimemerge.com
What I would really like to see is a plugin support! I don't know of any Git Client that has that...
Anyways, I will try it out later and post my opinion here!4 -
!rant
Just finished my first game jam officially, it was fun and our game though being not working 100% was well done, we had art people and a sound guy, who btw made some amazing music for the game. A couple of us plan to work on the game after the jam (because we have time) and since it's more of a local jam our deadline for submission is extended until a week after the jam finishes. (Game broke after merge issues :D)
Glad I decided to go and try it out.
Hah but my issue was that moreso my time was spent on getting unity and a git gui or some sort to work on Linux mint, by half way through Saturday I did lol. Also not much for me to do since we had a total of six programmers.
So if I don't get a new laptop for the next game jam, it's setup to work, which is awesome.2 -
Follow up to the follow up rant: ubuntu broke.
I tried searching for my git client I had installed: not found.
: Git status
Command not found (even though I’d used it less than an hour earlier)
*restart to see if that fixes it*
My laptop: STEP RIGHT UP STEP RIGHT UP LADIES AND GENTLEMEN, TAKE A LOOK AT THIS WONDERFUL TTY LOGIN SCREEN WITH NO GUI WHATSOEVER. THANK YOU THANK YOU VERY MUCH.4 -
So at our company, we use Google Sheets to for to coordinate everything, from designs to bug reporting to localization decisions, etc... Except for roadmaps, we use Trello for that. I found this very unintuitive and disorganized. Google Sheets GUI, as you all know, was not tailored for development project coordination. It is a spreadsheet creation tool. Pages of document are loosely connected to each other and you often have to keep a link to each of them because each Google Sheets document is isolated from each other by design. Not to mention the constant requests for permission for each document, wasting everybody's time.
I brought up the suggestion to the CEO that we should migrate everything to GitHub because everybody already needed a Github account to pull the latest version of our codebase even if they're not developers themselves. Gihub interface is easier to navigate, there's an Issues tab for bug report, a Wiki tab for designs and a Projects tab for roadmaps, eliminating the need for a separate Trello account. All tabs are organized within each project. This is how I've seen people coordinated with each other on open-source projects, it's a proven, battle-tested model of coordination between different roles in a software project.
The CEO shot down the proposal immediately, reason cited: The design team is not familiar with using the Github website because they've never thought of Github as a website for any role other than developers.
Fast-forward to a recent meeting where the person operating the computer connected to the big TV is struggling to scroll down a 600+ row long spreadsheet trying to find one of the open bugs. At that point, the CEO asked if there's anyway to hide resolved bugs. I immediately brought up Github and received support from our tester (vocal support anyway, other devs might have felt the same but were afraid to speak up). As you all know, Github by default only shows open issues by default, reducing the clutter that would be generated by past closed issues. This is the most obvious solution to the CEO's problem. But this CEO still stubbornly rejected the proposal.
2 lessons to take away from this story:
- Developer seems to be the only role in a development team that is willing to learn new tools for their work. Everybody else just tries to stretch the limit of the tools they already knew even if it meant fitting a square peg into a round hole. Well, I can't speak for testers, out of 2 testers I interacted with, one I never asked her opinion about Github, and the other one was the guy mentioned above. But I do know a pixel artist in the same company having a similar condition. She tries to make pixel arts using Photoshop. Didn't get to talk to her about this because we're not on the same project, but if we were, I'd suggest her use Aseprite, or (at least Pixelorama if the company doesn't want to spend for Aseprite's price tag) for the purpose of drawing pixel arts. Not sure how willing she would be at learning new tools, though.
- Github and other git hosts have a bit of a branding problem. Their names - Github, BitBucket, GitLab, etc... - are evocative of a tool exclusively used by developers, yet their websites have these features that are supposed to be used by different roles other than developers. Issues tabs are used by testers as well as developers. Wiki tabs are used by designers alongside developers. Projects and Insights tabs are used by project managers/product owners. Discussion tabs are used by every roles. Artists can even submit new assets through Pull Requests tabs if the Art Directors know how to use the site interface (Art Directors' job is literally just code review, but for artistic assets). These websites are more than just git hosts. They are straight-up Jira replacement with git hosting as a bonus feature. How can we get that through the head of non-developers so that we don't have to keep 4+ accounts for different websites for the same project?4 -
Using git without a GUI is like biking blind-folded. Sure you can do it but it's way easier if you see what's going on.26
-
OMFG! Another git gui? Better make one more calculator for this world. At least it could become useful somehow.2
-
let me preface with the fact that I'm now known at my new job for being the resident cli hipster. I can't lay any claims to knowing if it's "better" but I like it, I don't care if you do or don't, it just works for me and my flow
so at my job, we generally squash all our commits into one commit and delete the source branch upon merging; i accidentally committed all my work to an old, already merged branch, so my boss tells me it would be more of a PITA with the weird references we would encounter by merging the branch again, rather than just cherry pick the commits into a new branch, which i'm like "eh, fine.".
HIM: "You want to share your screen so we can resolve this?"
ME: "k"
HIM: "Oh, you won't be able to do this in a terminal, you are going to have to load up a GUI of some sort"
ME: "lawlz, no you don't"
HIM: "i highly doubt you will be able to accomplish that, but if you wanna make an ass of yourself, i'll humor you"
ME: "yeah, watch this"
> git log > log.txt
> git checkout <new branch>
> git cherry-pick <copy-paste-full-commit-hash-here>
> git push
ME: "done"
HIM: "what? there's no way you did it that easily, where are all your other commits???"
ME: "i usually try to amend my commits since we squash them anyhow. it really helps in situations like this"
HIM: "well, you go girl"
roll that up in your fancy degree and smoke it, why don't ya?2 -
I just scroll past this question asking how to get good at Git commands (https://devrant.com/rants/9997784/...). Figured I'd share my thoughts as a separate rant cause it's a topic I've tinkered with a bit.
So, My initial engagement with git-related queries on StackOverflow dates back to around 2021.. Surprisingly, one of my short and straight-to-the-point replies got a hand full of attention. You can check it here: https://stackoverflow.com/a/...
Now, about mastering Git commands – from my own trial and error:
1). Instead of trying to cram everything into your big brain, scribble down notes. Trust me, it’s more practical. I kept a cheat sheet of sorts as notes on my PC, noting down the commands I used day in, day out. Super handy beyond just work stuff.
2). You gotta get what each command does, but you don't need to nail it all at once. Spend a day diving into the basic commands. Leave the trickier ones for later; they start making sense as you get more into it.
3). I had this aha moment when dealing with a merge mess using a GUI tool. Switched to the command line, and bam! It made way more sense. The command line's like a secret passage to really understanding Git.
So, if you're wondering how to tackle Git commands, my take is: *notes, *baby steps, and *lean into that command line magic. Mix them up your way and see what sticks for you!1 -
Not just a rant, also a call for help.
After 10 years using Git, I'm constrained to use Mercurial (company policy). It effing feels like playing tennis with one arm tied to my back.
Please, who knows a good GUI for Linux, or at least a command line tool to show a decent log?
Kill Mercurial!3 -
I'm so fucking done with this shit. If someone forgets every git command every single fucking tim le is ok to ask. Every time someone asks advice on how to write a fucking retarded workaround (out of lazyness, because fixing their own code is too much to ask), it'a ok.
The *ONE* fucking time i ask the name of the fucking function to generate a filter via code using their fucking cms? "you should do that via gui!" "who cares if there'll be conficts with git, just manually redo everything in production!".
God fucking dammit how can you even have the balls to complain about terrible planning and stuff not working if that's your fucking mantra?!2 -
After having witnessed developers use IntelliJ's built-in git functionality, I am persuaded that it should have never existed in the first place.
Asking you if you want to git add after every file you create, providing dangerous shortcuts that do pull, merge and push at once, but most importantly providing just enough comfort to keep their users ignorant about interactive git add or rebase, and other advanced git functionality.
The search for all the UI buttons + IntelliJ's baseline 5G RAM consumption is both slower and more error-prone than using the Git CLI15 -
Git is way too complicated, but even then I still get painfully annoyed when someone needs assistance with using it. Especially when they're using some GUI I don't know. You mean this thing can't rebase??2
-
So I use Git intagrated in Visual Studio for the project's repository at work. But I don't like using it because I always used the command line to do stuff on my projects (including those at school, plus last time I used a GUI, I managed to do a merge without being conscious about it).
Why can't I change ? Well, because the proxy block every download link. Or almost.
So a documentation that was updated like 9 months ago was explaining things, and mentionned Git by provinding links to download the bash version. Happy, I click on it and try to download it.
Proxy blocked it.
Just fucking update your documentation1 -
So my laptop broke recently, and I've been looking for a replacement, but everything is so expensive.
I was thinking of just buying something really lightweight for like 100 - 200 $, then putting linux on it (no gui) and running everything through the terminal. I basically want to be able to work on github projects with, maybe use minimal internet.
Vim + git is all i use for github projects anyways, and lynx would let me do the small amount of internet that i want.
My one concern is that itd be very nice to have a window manager (terminator, i3, etc), not sure exactly how that would work with no gui.
Any thoughts on this setup overall? Or specifically the wm part?12 -
emacs, git and a decent shell like bash with at least gnutools
emacs, because I was searching for the right editor for years
- multi-platform
- extensible
- ready to type (no fucking mode change for typing like vim)
- programming functions like auto indenting, syntax highlight, auto complete, etc.)
- multiple windows in any arrangement
Additionally
- it is completely programmable to do anything you want
- you can find a solution to most common development needs on the web
git, because
- it is usable from small personal projects to heavy duty development
- fast branching and checking out, switching between different workpaths within seconds
- basic version control offline, you only need to be online for remote consolidation
- you don't have to think much about structure from the beginning, if in doubt just commit and your work is saved, then arrange the result when you're ready
sh/bash-like shell with gnutools, because
- simple tools do their job and try not to be smarter than the user
- tools can be combined in any possible and impossible variants
- powerfull scripting (although sh-syntax is often annyoing)
- open as many shells as needed, no single-instance problem as with some GUI-tools
- extensible with gazillions of other tools
And best of all, all these tools are available on all widely used desktop OS. -
Honestly, I love using the GUI and the terminal in combination when it comes to Git. I feel like I'm faster doing just general commits (hint ctrl+enter commits your work).
But I use the terminal when I start getting into the weeds, like checking out, resetting and doing stuff with my branches.1 -
Holy shit.
This was an effort to combine Gitlab, Github and Bitbucket with VSCode and git SSH authentication. SSH agent doesn't work, configured, added some code in .bashrc, seems fine. Then there was still ssh-askpass missing.
"ssh_askpass: exec(/usr/bin/ssh-askpass): No such file or directory"
WTF VSCode? Why do I need this crap?
However, installed it. Nevertheless, I'm still asked for my password every time when I synchronize using the GUI. Thank God everything was in docker containers/images. So at least there is no garbage left after every failed attempt.
I don't know how, but I finally made it that at least synchronization using the terminal works without a password.
Took me five hours to do this shit.
Now I just report the bug to Microsoft and then straight to McDonalds. I'm starving.1 -
why are Linux graphical git clients so crap? (as compared to TortoiseHg)
like GitKraken is the only OK one, but it lacks soo many features its nearly useless (bisect anyone?) + you need a commercial license
GitEye is the second non-shit one, but it regurarly stops working + its non-free
and it seems most git GUI clients force the name of the repo to be their parent dir. my parent dir for all web projects is www, so in both apps I have a long list of projects named www, unless I expand the projects sidebar to cover half of the screen to see the very very end of the path that petrays the actual project name in GitEye. In GitKraken I have to investigate the commit history to figure out if I have the right GitKraken with the right project open... talk about UX :D
so do most "git experts" just use git commit, git push and git pull on the command line and thats their whole world and the reason why they prefer git to mercurial (for all the many features they never use)?10 -
I'm learning git and i must confess that i've been thinking about use sourcetree gui to make my commits, may be i'll try it tomorrow6
-
When you havent pushed in ages and have to tediously 'git status' followed by 'git diff <every fucking file>' to figure out what the hell you've even been doing since the last push and can maybe figure out another commit message than "Various bugfixes"
-
Alright after upgrading to Monterey, I literally can't open a single repo without Sourcetree crashing. Any alternatives? What do ya'll like as a git GUI?
inb4 "learn the commands" - I want to carefully separate files (or even hunks) by ticket number and can't be bothered to type all the commands out5 -
My favorite tools:
IDEs : Jetbrain's IDEs intelliJ, pyCharm, ...etc.
The only exception is Visual Studio for C++ ( for no reason but I haven't tried Clion yet)
Text editor: atom
GIT GUI: Gitkraken, or just a terminal
Music player: Spotify -
Has anyone ever faced problems with VS Code Git GUI and git in terminal?
:/
I use the gui for some stuff and the terminal gets out of sync.
So it's like I have discarded changes from the gui and then WSL still says I have changes when changing branches, so I try to stash and it says there are no changes. It gets really frustrating.
😕4 -
I need some help. I have a 1 months old MR in gitlab with 5 commits of a feature that I have to revert.
I have hard time understanding how to solve git revert conflicts and frankly this three windows GUI on intellij idea is very confusing to me. I am like afraid that I will accept a bad change or miss something.
Is there any other way to make this merge conflict solving easier? I was thinking maybe I could just rebase to head where I added my commits, revert them without conflicts and then rebase that branch on latest develop?
In that case I would be solving merge conflict by adding stuff instead of removing old stuff and being afraid that I will mess up something. Goal is to create a revert feature MR.6 -
Friend and me from the university need to write a program to parse Value-Change-Dumps from different files, and merge them together in a new file to easily compare them. This project last for the whole semester. The program was for one of the professors and we need to meet with him and give him an introduction how to use the program (was cli & gui based)
Long story short: enter office, give him the link to git repo. He clones it. Clicks on it and boom. Python error. Some Tkinter Error. OK ok after a few minutes we solved the issue by installing some additional packages and our program starts. But it doesn't work. About 80% of the buttons did nothing. WTF!??
Oh. We used git flow for fun and haven't moved the development branch to master and he cloned outdated code. We need nearly 30 minutes to solve this. 🤔And I'm just happy that this professor was just a calm guy . He was also happy because now he does not need to run multiple instances of GtkWave to compare his simulation results. -
What's your favourite Git client and why? Mine is a combination of git and tig in the command line.7
-
Recently i switched from using git with gui tools to just console, and love the speed and reliability increase, but guys do you really resolve merge conflicts in console? Is it effective/worth getting used to?4
-
When your IDE is installed a so fucked-up way you have to launch it with root privileges for it to start, you can't manage to find a good Git GUI client, and you already wasted 3 hours trying to solve both problems without fixing anything... You know it's time for you to get the hell off your PC, cry out and get some sleep.21
-
Is there any git gui that allows to revert just one file? Gitkraken is amazing but really sucks outside of basic git operations
-
On my free time I was looking for software where I could visualize the shape of the git graph to sort of reflect Git Flow. What I found was a bunch of git GUI's that list features that normal git already has:
- "undo local changes!"
- "squash commits!"
- "undo branch deletions!"
Da heck people actually pay for this?3 -
Just found the imo perfect git gui for Windows: Fork
Ofc some Features are missing but I hope they going to implement them3 -
Pretty niche tool, but Sencha Architect!
It is a wanna be GUI-Builder/IDE for ExtJS, but neither works properly.
This rant is not about ExtJS, just about Sencha Architect, which my coworkers and I were forced to use.
If you want to join the ride, here an excerpt of just some of the issues:
- installation: already the setup is more of a gamble than an actual setup, either it works on your machine or it doesn't, plain and simple
- GUI Builder: just drag and dropping components is actually nice, but the editing capabilities are frustrating, you can't edit the UI code by hand at all, just through pre defined properties. If there was the need to really mix things up it wasn't possible, I couldn't even rebuild shown examples of their ExtJS documentation. Furthermore the property editor was data type locked, which means if you want to enter a string which ExtJS already supports, but architect locks the value as a boolean, you can't edit it at all, while still using Architect
- code editing: well it is a colored texteditor, which is fine, and I could live with that, but Architect let's you just edit areas where it allows you to - want to change something else? Nope not allowed
- autocompletion: there is none at all, same goes for refactoring, multi highlighting, string replacement, and others
- code storing: well now some may think edit it somewhere else, well no, also not possible... Architect not just only saves simple js, there is also a Json formatted file for everything you have created, which is needed so the tool can actually load it for further editing. They possibly never heard of DRY. But the worst of this code storing was actually using git along with it - have a merge conflict? Merge both files! Every single time, it was so damn tedious
There are a few more, but these were the worst I can remember.
Luckily I don't have to use it anymore!
Maybe they have fixed or changed a lot of it, because the developers were aware of the issues and eager to resolve them, as far as I was told on a roadmap presentation. And some of the tools they had released in the end of my time using ExtJS were actually really good, like an IDE plugin for the framework, and I liked using it. -
Downloaded Gitkraken in my ubuntu workspace... Like to work with GIT in a GUI interface...
Now trying how to run this GUI as a sudo user so that Gitkraken can edit files in my home directory :p1 -
Or company banned DourceTree so everyone had to switch to just using git shell.
Except me... I installed GitExtensions which is allowed.
I can't decide if I'm a git noob, better at being lazy, or more efficient.
I do use she'll for certain things like deleting, listing branches but for commits and resolving merge conflicts... still prefer gui9 -
Question about GIT regarding intellij idea. I have a local branch develop and I perform a git fetch via GUI. I see develop gets a blue arrow meaning that there are some remote changes that happened. In the past I would just click on that branch and click update, but I noticed that sometimes fetched commits from remote get applied to my branch in a weird way, for example they get merged. Later when I want to make an MR I get duplicate commits because git doesnt recognize that my branch has these changes already.
Right now I just delete that develop branch and check it out again, to make sure I'm working on a proper develop.
Wondering if there is a better way of doing this instead of deleting develop branch and checking it out again each time?5 -
Any suggestions for free git GUI for Linux? I ended up running GitExtentio s on mono framework cause git cola was a bit confusing...8