 Over the last year, I've started using GitHub a lot more and I'm not the most expert at using GitHub. I'll freely admit that I'm not the most expert at anything really. But when it comes to using Git and GitHub, I'm just not that much of an expert. There are a ton of commands in the terminal to use Git that I just don't know how to use or I do know how to use them. I've just forgotten them because it's not the most discoverable way of using something. So when I heard about this tool called Gitcrackin, I decided to give it a try. Now, Gitcrackin itself is a GUI tool for managing Git repositories, whether it's on GitHub or GitLab or any other place that uses the Git protocol. And usually GUI programs aren't my thing, right? Like, I'm a terminal guy, I like to use terminal tools. And there are a few different tools to manage Git that aren't Git itself in the terminal. Things like lazy Git exists, but they're not as intuitive as I would like. I need something for the lazy man. I need something that is astonishingly easy. And Gitcrackin has actually filled that hole. So today I'm going to be talking about Gitcrackin and I'm just going to put this right out front that the things that I use it for are very amateur, I guess you would say, because I don't use it to its full potential. But it does a ton of stuff that even I can see the potential in. Before we dive into Gitcrackin, if you could leave a like or a comment on the video, I'd really be appreciative. That really does help the channel. Now we can go ahead and jump in. So this is what Gitcrackin looks like. It's not what it looks like out of the box. This is what my install that looks like. I don't remember what it looks like out of the box. I've been using this now for a couple months. But basically what it does is it allows you to manage your repositories, whether it be on GitHub or GitLab or something similar in a GUI form. And you can go through and do pretty much everything you can do with Git in a GUI fashion. So if you wanted to go through and push, pull, you can create a new branch, you can stash, you can do a ton of stuff here. If you wanted to go through and create a new hosted repo on GitHub or GitLab or Bitbucket or Azure DevOps even, you can do that right from here. It's really as simple as just clicking on this and filling out all the forms and stuff like you would normally do on GitHub, but you can just do it from here on your computer. There's no more having to go to GitHub to fill this stuff out. And then it just creates it. You can also just create a standard local repo if you don't want to have it hosted elsewhere. And then you can go through and do a Git init later on if you'd like to. Now, once you've gone through and added a few repos, you can actually use their tabbing system so you can have multiple repos open at the same time if you want, or you can just switch between them like this. And let's just say I go to my suckless repo. This has all my suckless utilities in it. And I can go through and hit stage all changes, and then I can just leave a message here like I normally would. You probably can't see this. Let me change the camera over here, and I just put a message here, tweaking grove rice. And you can see that I'm on the grove branch here over here. And then I can commit changes to 32 files, and then I can push. And that's literally I pushed those changes up to GitHub. They're now on GitHub for anybody to get to if they want to. And it's literally as simple as that. Now, that's basically my use case of it. Every time I make a change to a file that is in a Git repo, I come here, I stage the changes, leave a comment and push. Every once in a while, if I've cloned somebody else's repo, I can actually go to that repo and pull down the latest changes if I want to. Or if I've made changes on a different computer to like my BSPWM rice, which I've done, you know, several times in the past, I can then pull them down to this computer using Gitcrack and just by going to BSPWM and then doing a pull. Now, I haven't actually made any changes, but I can actually stage these changes again. I'm not actually sure what these changes are. It doesn't really matter. And I can just commit them and then push. And then if I wanted to create a new branch of something like this BSPWM repo, I could do that as well. So we'll just call this a grove box branch. And now I've created a new branch. I now have master and I have grove. So that is how easy it is to make a new branch. Now obviously creating a new branch in the terminal forget is fairly easy too. So that's why it's easy here. But you can see how nice it is to have all this stuff in just one place. Now, like I said, this is just kind of like scraping the surface of what Gitcrack is available, you know, is capable of doing. There's just tons of stuff here that you can do. You can go through and manage your pull requests. You can go through and manage your issues if you wanted to. Pretty much anything you can do on GitHub, you can do right here within Gitcrackin as well. You can also go through and view diff files right here in Gitcrackin. So if somebody has submitted a pull request to your repository, you can view the diff files right here on the thing in Gitcrackin and view them side by side in a more tidy way of doing it than if you'd done it in a terminal or going all the way to a browser in order to do this, you know, on GitHub or GitLab or whatever. In terms of connectivity and stuff like this, this connects over an SSH key. So if you want to use it for GitHub specifically, you have to have an SSH key. It was really easy just a matter of connecting your account through sign inform, enter your authentication code if you have one, and then creating an SSH key for Gitcrackin. Now, I have come across the problem where if you have a SSH key for this program, SSH for the terminal base Git doesn't seem to work for me. I'm 100% sure I'm doing something wrong. So I've never really gotten my head around SSH. So like I said, I'm assuming I'm doing something wrong there. There are also several different integrations that you can do. So you can do GitHub or GitHub Enterprise, GitLab, GitLab, self-managed, Bitbucket, server, Azure, JIRA, and Trello. So there's these different ways to upload to different services. And what's great about this is let's say you have a GitHub and a GitLab account. And you want to manage them all in one place, this application allows you to do that. Now, I don't have a GitLab account, but I've been thinking about opening up one. So it'd be nice with this application to be able to go through and just manage them all here instead of having to kind of messily manage them in the terminal. If, you know, I ever chose to do that, because if it was just the terminal, I probably wouldn't do it because GitHub is just fine. But because this happens to have GitLab integration built in, I can just go ahead and create some repos over there if I wanted to and just manage all my repos no matter where they're located right here. The last thing I want to talk about is how this kind of interacts with the terminal-based functionality of Git. So if you go to a terminal and you change to a different branch, let's just say I go to Git checkout, grov here in my suckless repo. It changes to the grov repo or the grov branch. If I open Git crack and again, you'll notice that it changes me to the grov branch. If I go back here and do Git checkout again, master, and then open up Git crack and again, you'll see that it changes me to the master. So it does a very good job of integrating with the terminal-based application of Git. The only place, like I said before, that I've experienced problems is when I actually tried to push something up from the command line. And I think that's just because I'm having some SSH conflicts or something. Everything else integrates really, really well. So if you don't always want to use Git crack and you just kind of go back through and use the command line version to Git, Git crack in here will just update automatically. It means literally, look at the split, it just does it right away. So that's awesome. There's just a ton of stuff here that make it just a joy to use. I was kind of dreaded using the command line version to Git because there's just so much stuff there that it's kind of like pulling teeth in order to actually do, especially if you don't have SSH enabled for Git Hub or for Git itself to upload to Git Hub. Actually, uploading it means you have to go get your API key or whatever the key is called in order to do it yet, or you have to have a password and you have to enter that every single time you push something or pull something. It's just so stupid and it's hard to navigate. The fact that Git cracking allows me to bypass all that stuff just makes me so much happier with using Git. And it means that I keep my repositories on Git Hub updated much more frequently than I did before when it was just the command line stuff. So I love Git cracking. Now, I don't know if it's open source software, I don't think it is. So if that's going to be something that turns you away, I'm sorry about that. I also am not sure what it's written in or anything like that. So if what the program is written in, you know, matters to you, then you should go ahead and look that up. I don't think it's electron, though. So we can all breathe a sigh of relief for that. So that's Git cracking. I really, really like it. I've used it now for like a couple of months and it's just one of those tools that has been kind of becoming grained in my workflow. And I don't see a day where I switch away from it. Now, like I said, there are other tools that are kind of like this. There's one called LazyGit that's in the terminal and it looks really good, but it was also kind of complicated for me and not that well documented. So it's possible that I just missed the man page because I always missed the man pages on those kind of things. So it's possible that it's less complicated than it actually is, but I didn't find enjoyment in it, especially since how I found Git cracking and I liked it way better. So if you are interested in trying Git cracking, I'll leave a link to their website in the video description below. Let me know in the comment section below if you're going to try this out or if you have tried it out. I'd love to hear from you. You can follow me on Twitter at the Linuxcast. You can support me on Patreon at patreon.com slash Linuxcast. Before I go, I'd like to take a moment to thank my current patrons. Devon, Chris, East Coast Web. Gentoo is fun too. Marcus, Maiklin, Sven, Jackson, I have a tool. Joshua Lee, Mitchell, Art Center, America Camp. Mr. Fox, thanks everybody for watching. I'll see you next time.