 The previous two are a bit too high level, I think it's a bit over my head as well. Especially it's Bob's top. And it's fine to have a lot of firsts. I'm very small I think. Okay, I wanted to show you how to use, use Git, not in the command line because not everybody has the privilege of learning how to use the command line. I'm just going to cover adding it. So I have a hell of a lot of projects. Let's look at Grumpy Git. This is a report that we forked from the PDX team which came down to give me a talk in forced Asia a while ago. And we just forked the report so that we had a little simple page that looks like this. GrumpyGit.github.io Okay, technical problem. Can you press spacebar? That's a game. Oh, the press spacebar appeared in your shirt. Why are you here? What? You didn't know? Okay. So, I can play again. Again. I really, really am horrible in this game. So, this is Bob. The site is Bob. No, no, it's like... Okay. So, anyway, that's the website. That's going to be our website. I don't think I would sign up for a need.sg domain or something like that. I don't think it's worth it, but nevertheless, go and check out the website. We are looking for speakers. If you are looking for ideas or talks to give, it's all on the website. Meanwhile, in Source Tree, it has some pretty nice interface that ties up with how you use the Git in the command line. It works both from Windows as well as Mac, which is why I recommend them. If you use the GitHub Mac client, that is actually a piece of shit. Whether or not it's a Mac client or Windows client, it's a piece of shit. Sorry. But, could you check out... Oh, I don't actually have the installation of it. I used to have it, but they do not have a lot of features to help you properly understand how to use Git, even for GitHub sake. So, for example, you want to create a new branch. The terminologies they use is completely different, like sync files, for example. They try to rename it to something that's more... Friendly. Friendly, but it hasn't been very helpful. So, you can try to check out Source Tree. It's probably one of the better ones. You can look at preferences, and if you have this tick box done, you can set your full name and your email address here. So, this is the tip number one, okay? You can set your name to any name that you want. And this applies to anything, basically. Yes. So, once you save that, you can check out from the command line. From the git config, it's already been updated. My name and the email will be this. And you can do some random files, git commit, random files. Actually, let me just use the Source Tree to do it. You can just drag it in, and voila! You have it there, and you can commit it. You can use a big button right here at the top left-hand side to commit, and it will be recognized as Linus. So, if you look at the history, now you actually have someone who is Linus that's committing to it instead of this guy here, CJ. Okay, that's a random example. I can just change it back to my... If you can see... If you look at the git config, it gets updated accordingly. So, the dot files get updated both. The same behavior applies to Windows as well as Format. So, that's one thing. So, the last commit there is Linus, and I'm going to make another... Something random. They go blah to this file, and I'm going to edit it. So, let me go by the working copy. Random file is added. It has got a new line right there called touch, for whatever reason. I can commit this. If you can commit, you can do something like... Push commits immediately to origin or not. You can amend last commit, which will override the last commit. Bypass commit puts... That's pretty nasty, but yeah, that's cool. Okay, they don't have the option of doing it here, so I'm going to do it in the command line. What I wanted to do is the dash s command. Dash s command basically signs your commit, and if I do just dash s, if you see here the third line, sign up by my name and my email address. So, if you do not populate your username and your email address, you will not automatically populate here. So, that's the first thing. You can, of course, do something like this. Blah. Dash s will be the message. Okay, let me just check what other three tips I have. I've had this written down, I can recognize it. So, that was... Number two, get extras. I want to talk about get extras as a tip. If you are new to git, don't use it. If you are not new to git, go and check it out. It's fun. It has some very convenient tools to help you work with teams and to make your life a little bit easier. It has some really crazy stuff like git change log, git history, git graph, some wrapper tools around some things that you would like to do, but you may not encourage to do git release, for example. Unfortunately, the internet is very slow here. I probably should connect to the local mesh. So, the Wikipedia is a very, very simple example of a list of things that you can do. Again, if you are new to git, don't use this. Learn git the hardware, use source tree, or use the command line. So, git extras have a bunch of commands. Git squash is one of them. Git squash is not something that comes pre-built in Git because it's not necessarily meant to be. These are all where all the random stuff comes in. Git alias is especially useful. What does it do? Alias? Yeah. If you want to set alias in Git, you do something like git config dash dash global, alias.lg, then followed by your whatever command. So, this is my git alias for lg, which is how you get to see something like this. Now, instead of typing this full command, you do something like git alias space lg, and you get the same result. In this case, it shows the other lgs, which is another command that I have. So, it's a convenient tool. There's a wrapper around this long thing. It just makes it a lot easier to type. So, I can add alias. Yeah. Pretty much, yes. I can show you the code if you're interested. So, it's actually as simple as that few little lines. It just takes a... Yeah, it's just a wrapper, alias for that. So, this is a place where you find all the special stuff. I submitted my fair share of commits, sorry, feature request to this repo, which is why I'm also pitching it. So, git in all is the same thing. Git in all will show everything you have in a global file, which is this file, as well as anything inside this file. So, inside here there's underscore side, WST store, star dot W. As you can see right there. If you are using Mac, you can do pro install, git extra, if you're using Windows, I think they support Windows as well, so it should be fine. They have a lot of other stuff which I don't really agree with the practice, which is why I say don't do it unless you know what exactly what they do. Like, for example, git fresh branch. I have a habit of leaving files that are uncommitted in my git repo. I know a lot of you have a habit of git add dot and then committing everything. That is another debate on its own. We can have another git... Yes, we can talk about that. That's also why I'm recommending source tree. So, instead of learning how to use git add fp, we use source tree. So, git fresh branch actually deletes everything in your local repository, including all your local files, except for the dot git directory. So, be careful when you use that. It's nice to use, but just be careful when you use that. So, just check it out. Be careful of what you use it for. Oh, git change-off is pretty nice. Unless you are a merge master or you handle releases, it basically compiles everything, all the commits from the last release until this release and put them in one nice commit message in the history.md file. Something that you might need, something that you might not need, it doesn't really matter. It's nice to have a tool like that. So, history.md file is where it's just being written to. Okay, I think that's about it. Later on, when we are at the bar, we're going to play a little game called the git game. This one. So, we're going to drink and play at the same time. If you have nothing better to do, okay? So, bring out your laptop. We're going to do this game. Make sure you get your... This has to be done in the command line, so be prepared. Let's see who is the first to finish. The first to finish will have to do something for the next meetup. Okay, thank you very much. Thank you very much.