Learning git with GitKraken

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hello everyone welcome back uh so going to do something a little bit different tonight i keep just experimenting with different things to see what happens and so with tonight will be no different um some quick updates though before we talk about what's going to happen later um the material design project i've uh put on pause for a moment i'm still waiting for the the owner of the library to get back to me with the nuget api key so right now i am unable to push updated nougat packages um due to the key expiring so hopefully that gets resolved soon i've reached out to him a couple times we'll see what happens so just so that everybody's clear if you're unsure why updates haven't been rolling out short version is the new get key on the pipeline is expired and no longer working next thing for anyone who is interested there is a net user group coming up and i will drop this link in chat for anyone who is interested um so me and my boss mark michaelis are going to do a entry-level talk on c-sharp nullable reference type so it's titled essential nullability so if you aren't familiar c sharp added nullable reference types which is kind of an interesting name just because reference types by definition are nullable and so just diving in and expanding on what that is and how that feature works if you've already been using it for a while this is going to be a little bit more of an entry-level topic so just be aware of that we'll probably touch a little bit on some of the new stuff that is likely coming in c sharp 10 but as the compiler team has repeatedly said that they have deep seated uh commitment issues and so no feature is in c sharp until they actually ship it so they they always reserve the right to pull preview features so we may touch a little bit on the stuff that's likely coming but again nothing's guaranteed until it actually ships so if people are interested if you happen to be in the spokane area uh this will be uh in person there will be an online option available via teams as well so if you are not in the area and you just think that it might be interesting feel free to grab that it will also be posted to the uh intellitex youtube page i could actually probably like show a link to that or something too i didn't have that ready so if you are interested there is intellitech's youtube channel and they would definitely love to get uh more feedback on it that is my boss there mark and his wife elizabeth so you can read a little bit uh the company i work for is actually they do a lot of philanthropic work it's just been one of the core tenets that uh mark and elizabeth started with when they first did the company and it is something that they've been um very passionate about continuing so one last thing one last thing and we'll get to the interesting stuff so point this out too oh what is it i can't remember what's our jaw is it slash jobs is that what it is i should i should know these urls um they are here yeah so we are join our team that's why i couldn't find it of course uh we are hiring so if people are interested in working for an awesome company they are primarily looking for people who are either in the spokane area or willing to be in the spokane area but if you are interested in working here or learning more about it feel free to hit me up i'm always happy to answer questions you can catch me on actually any of the links right right below so all the ones that are flashing are the easiest ways to get a hold of me okay now onto something else so earlier today i tweeted this uh thing out from get crack so anybody who's watched my stream for any length of time knows that get cracking is my get tool of choice it is in my opinion one of the best ones out there obviously what's important for developers is that you can use source control effectively and so to each his own uh but if you ask me what i'm going to recommend this is definitely where my recommendation goes and so they had this awesome thing that they posted earlier and we'll just pull it up here so um with this get workshop so i do a lot of teaching just either as part of my job or at a local university here so the the people that i'm typically teaching get related uh topics to tend to either be uh students typically a university level or and those students 10 day usually already have a couple years worth of cs classes under their belt this isn't usually a 100 level class the stuff that i'm teaching are usually three and 400 level classes but then the other one is developers in the field and these ones can range from a pretty wide set of backgrounds some developers i've worked with have lots of experience with source control and git and are pretty familiar with all of the ins and outs of it others have never touched it at all which still surprises me given how often git is used if you are thinking about getting into the computer science field one of the things i would very much encourage you to learn is source control specifically get and get is the most popular i believe i think i could say that yeah i'm pretty i'm fairly confident it is by far the most popular source control solution out there that is consumed really as long as you can use any source control system effectively and you you understand those concepts you can usually start learning another one fairly easily just like learning a different programming language there are some concepts that transfer form from one to another but uh for forget crack and specifically and teaching git git is notorious for having here uh uh for having a reputation uh sorry i cannot think and type tonight xkcd get um this is this is the important this is the important comic to go along with this git has a reputation let's say for for being overly complex and very difficult to use uh specifically it's not uncommon to hear people talk about well i was using get and things went poorly so i abandoned all hope deleted my folder and recloned the repo like that's that's kind of uh how a lot of git stories happen and though that certainly works resetting your your entire uh repository every time there's a problem isn't really a great experience and if you were to look at get on the command line for example pull that up so if you just do something like get help it gets pretty big pretty fast let's see we'll make this a little bigger and then and then some of these some of these ones for example uh get pull oh and of course i did the dash dash help which is going to naturally take you to here will start showing you just how many possible options there are on the command line there is a few and by a few i mean a huge number of them and oftentimes they can be really powerful and get the job done and oftentimes people get back into this idea of just memorize a few shell commands type them to sync it and if you get errors throw it away and start over that tends to be how things work get cracking offers a much more different uh usable approach and the the thing that i love most about it is the the way that's able to present what is a complex topic such as git and break it down into something that's at least explorable and easily learnable so as part of that the big leading big leader as part of that they release this uh get workshop and i took a look at this and went oh this is perfect this is absolutely gold because i am constantly trying to figure out how to effectively teach people to use git and they have put together an entire workshop package which is awesome um and so i kind of briefly scanned through it didn't have time to download it or to go through it in detail yet but that's what i was hoping to do tonight is actually work through this workshop myself because before you can teach something to somebody you should do it yourself so that you're at least familiar with the um what is in there so what i did is i went through and i took the digital presentation slides because i'm streaming this it'll end up on youtube later we're gonna go with the the digital version i didn't really compare the between the two of them um when you click on this and i'm gonna i'll call this out really quick there's a small booboo it's a small booboo so you get this nice google drive link and you can come over here and go download and pick on various versions and yada yada that's great there is one issue i noticed this is not get kraken's fault this slide here you'll note there's a one and a two if you download as powerpoint powerpoint sees these as separate elements and you get one and one so if you download into a different format double check there might be a few minor glitches again i don't this isn't necessarily uh any fault of get krakens this is more around google drive and powerpoint not talking to each other and speaking the same language so just be aware that's there so here's where we're going we are going to start here and the whole whoa there delete the slide before presenting i did not do that um or download as a powerpoint file well i'm in powerpoint customize the introduction slide i did not do this oh also one two one two i have a sinking suspicion if i were to look here it probably doesn't look like that yeah c1234 so another example of where when you convert from google drive to powerpoint one of those two systems is losing its mind and can't count very well so add your get cracking referral url if anybody wants my get cracking referral url it'll show up right right right there it'll be there in a minute i promise it's in the cycle okay rehearse this presentation at least one to two times before the workshop well this will count as rehearsal number one so here we go so get kraken with git using get kraken love it love it love it love the layout i love the dark theme the one thing i will say and i should i should check this there is uh in person presentation slides if you are going to oh that's disappointing i would wan so one thing that i have found when doing in person presentations especially if you're using a projector depending on the state of the the room and where the presentation is taking place oftentimes a light background with dark text is better than a dark background with light text specifically for the case of a projector projecting onto a white background just as something to keep in mind so oftentimes the the contrast you start to lose some of that when you do the dark background for digital presentations doesn't matter so just just as a thought but it looks like they use the same color theme on all of them so introduce myself my name is kevin my twitter handle is right below me and my relevant hashtag is also going to come by in the cycle so okay why are we here how many people have had to collaborate on a code project before probably most of us um i will say as we go through this i will probably gonna throw in my own little bits about uh github and get kraken as we go because i imagine what i saw when i quickly looked at this is this was very much an introductory level thing which is perfect that's great but i tend to mix and match a little bit especially if the people that i'm teaching tend to be other developers with lots of years of experience you can kind of glaze through some of the introductory stuff with them a little bit quicker so that's just the way to do it uh how many of us have used git github or other tools to collaborate and felt like it was a really tricky process that is true i will say github oh one more one more thing github had some cool stuff that just recently happened so if people aren't familiar with git and github um github it just happens to be the biggest provider of git repos on the internet so cool announcement from github if you missed it earlier open any repo on github press the period key um yeah you get vs code in your browser so this is no more advanced than what um was already in github where you could go in and edit a file on the fly but now you can do it with a browser version of vs code you don't get like full extension support so a lot of like language features and whatnot are probably not going to play nice with you if you want something that's actually going to have those types of things the the code spaces stuff is is uh the solution you're looking for but period button awesome stuff especi if nothing else this is my preferred way of just browsing a repo so for what it's worth okay back to get cracking uh maybe you worked on a project with others using git and had a hard time figuring out who had done what yes more likely having issues with conflicts is the issue or maybe you are comfortable with git but not sure how to track who's working on what that is a bit of a problem but again usually what my experience is with a bunch of people on a project with git is the issue is conflicts and resolution that is so often the the issue uh luckily there are tools to make this process simpler amen one of them is get crack so uh a best practice workflow for collaborating using git perfect uh how get cracking and get gooey oops uh simplifies collaboration perfect how to use get cracking boards to manage tax now this is one thing i'm actually really excited about this is a feature of get kraken that i don't leverage much but i started poking at it on a personal project and i've been pretty impressed so far so i don't have a lot of experience but it's one of those exciting features so okay what are we going to build a simple html css template to build a bio web page like the one below that's pretty cool uh you don't need to know any html or css for this to work we'll be using projects uh this project help blur and get cracking get ui and get boards oh that's so nice rosie the kraken we can do get or to put it another way we can get her done okay i know horrible pun overly horribly overused uh you're going to do it using get kraken so we'll discuss traditional get workflow and working with git from the command line cool oh and look at all of these numbers lined up right that's nice uh then you'll make it github and get cracking accounts perfect i already have those so if people are unfamiliar with that both um github and get kraken the these create account is like any other website you type a username you type a password give it an email verify your email you're good to go it's more or less standard workflow download and installed uh uh get cracking get gui we'll explore get cracking get gui and get cracking boards uh you'll create a shared get kraken board to track tasks i wonder why they put the words gooey on everything meh whatever uh four can clone a project learn how to collaborate on the project excellent now you know what's coming let's understand git okay so we are going to intro to get and github suite so git is a version control system that helps you collaborate on projects with others yes there are two main features that help you achieve this log changes in a searchable way instead of renaming a file for each version amen amen how many people have seen people just copy and paste word documents over and over don't do that that's bad bad bad collaborators can work in parallel and merge their changes automatically instead of manually comparing the differences between a file and this is one of the big differences between how like google docs or office deal with multiple collaborators and how uh engineers and programmers deal with it with the office type projects they try to avoid conflicts by just trying to make sure everybody's editing the live document and so that they so that that window where conflicting changes can occur is really small and that way you know it'll only happen really rarely and oftentimes it'll just ask and prompt and yada yada right with programming we don't do that it's not uncommon for programmers to like split off for hours go and work on two separate things that just happen to be in the same place in the same file and then there's conflicts so you'll note this this thing here which i'm hoping is the flow that we're going to show is you know the the top path somebody added the little the little green lines at the end great whereas the bottom pass somebody deleted lines two and three and then things come together in a final result with the the deletion in the ad i assume that's what that's showing which is great but then making sure that you can work in parallel right with somebody else and then bring those those changes together and compare those differences and see them in an easy way okay old school get amen some developers use the command line to interact with git and github by following the best practice workflow describe the next slide yes yes yes yes and again i want to be clear on this point um i don't when i when i work in various teams what i always tell people is i don't care what git tool you use what i care about is that you're effective in it because sometimes i run into cases where developers are really hesitant to rebase or they they want to have these these funky branching strategies all around making sure that there's no conflicts ever and it's like no conflicts are going to happen what's important is that you understand how the process works and are able to resolve those when they happen because if you use git there will be conflicts i use git on private repos with just myself and i have conflicts single developer private repo it's just me and yet i still manage to conflict with myself all the time right it's okay that is a conflict is a good thing it has conflict has this negative picture that it draws in your head but in the case of source control it just means that the computer is confused doesn't know what to do and needs a human to tell it what answer is correct it's kind of like training an ai okay so first they may fork someone else's code this creates their own copy of someone else's project perfect so yeah fork is your own copy of someone else's repository though they seem to ignore the definition of the word repository that's okay uh then they would create a branch and the branch is a parallel version of their fork where they can test changes without editing the master copy now this is one thing that i think gets skipped over a lot especially in open source on github is oftentimes i'll see people hit the fork button on a repo make all of their changes in the master or main branch and then pull request in that the problem is is that workflow completely works the problem is if you don't understand this branching strategy you're left in this weird state of you can only do that one pull request until you learn the to make these branches to do the pull request with you're going to be stuck and it it can often times keep things out of date so very much encourage after the fork make a branch don't just work on the main or the master that's that's a place to put things back into not a place to work from okay let's keep going uh they stage your changes as they go when they're happy with them they commit them i agree with most of the statement the as they go part i know very few developers that actually stage as they go oftentimes staging and committing happen pretty much back to back when when the developers happy with where they're at they usually make a commit a commit is basically a save point if you're familiar with video game terminology it's a basically uh i want to be able to go back to this point when something goes wrong which commit and commit often i very much encourage that because again it is a save point it's i can roll back to this point at any time i choose this is where i'm going to be safe so pretty much anytime something works that's a good time to commit okay uh to add their their working version branch to the master branch they open a pull request yes then they or the project owner will merge the branch into the master branch correct so it the the concept of a pulley request i assume we're going to get into here in a moment but the when you make a pull request it's important to note that it is a living document oftentimes with a pull request people seem to think that it's just uh hey i i tossed this over the fence you merge it it's good but understand that especially in the open source world a pull request is meant to be an open dialogue it's somebody requesting changes to a repository adding a feature fixing a bug sometimes just fixing my typos and that's great but there can also be comments that go back and forth and understand that just because you open the pull request that doesn't mean it's done or pinned to you that one thing somebody might say oh oops you know you typo this word kevin you can't spell that's fine i'll go through make a change and keep updating my branch i don't have to make a new pull request the pull request because it's a living document rolls forward and shows the latest state between the branch that i'm working on and the branch that i'm asking to merge into uh great the next few slides will explain the process by which developers might interact with git on the command line this is just an explanation these are not steps to follow oh boy how how complicated did you guys make your sample because get on the command line you can get pretty complicated okay so in github they go to a repo and they click the fork button yep this is pretty much as the previous slide said fork is just give me a copy of this repo i want to have my own my own personal copy of it that i can play with then they go to their github profile they grab the url for the repo and copy the url yep that sounds about right uh open their terminal and enter these commands on the command line so git clone and then they paste in the url and then you see a bunch of output where it's downloading stuff great they change directory into that repository so what's not clear or i should say what's what's implicitly happening the git clone on the command line if you don't give it a uh directory name of where to put it it just takes the name of the repository and makes a directory with that name so you'll note this cd localhost kraken is only because that was the name of the repo here and then they're doing git checkout branch creating a new branch mlh add bio i don't know what mlh is maybe somebody's initials and then let's see what else uh git status to see the step oh this is after making changes they would enter these commands so yeah after they've opened up the the repo in their editor of choice which is clearly some flavor of visual studio get status to see the changes makes sense do get ad with the file names that have been modified some people get lazy and just say add everything because you know get ad star get status to verify that everything you expect was added and this step here may get repeated a lot it depends on how many changes you're wanting to commit versus how many changes you aren't yeah robert uh if you didn't see the link above sorry i just saw you drop in um my tweet from earlier let me i'll drop it i'm going through so get crack and dropped in some um cool workshop stuff for teaching people get so going through it mostly so that i can see what is all in this material because i do enough teaching of get and get cracking that i i want to have one more awesome tool in my tool belt so if you're interested in following along i made it down to slide 17. you haven't missed much uh it's been a lot of introduction but yeah the this get adding git status especially for people on the command line typically what i see is they do get add all the files or they repeat this thing a whole bunch uh let's see then they make a commit with a message that says you know modify readme great sure that's what the dash m is is message and then let's see what's next and then get push set upstream origin yeah and this is one of those things that is not always clear to people on the command line so in order to kind of grok all of this the origin is just a magical default name inside of get that your first how do i use a term that i haven't used yet i can't uh that your first what's called remote or uh system that you're going to or git server that you're going to interact with gets called is origin and so this is saying okay i want to push that branch that i made to origin and i want the branch name out there to be the same as my local branch now this is something that happens a lot on the command line is it's very easy to mess up your branch names and have the one out on the remote server not match your local branch please please please do not do that you will confuse yourself and please please please if you are on a mac or linux box be careful of casing because casein may your systems may be case sensitive but window systems may not be and that can be a problem and yeah can get very very very confused get kraken tries to handle it um unfortunately git does not get itself not necessarily get cracking even though it's it's totally cool with people having branch names that differ only by case you run into a situation where a lot of tools can't handle it when toggling between operating systems so it may work fine for all of you you know say the mac users on your team and then the one windows guy comes in and goes guys i can't wha what branch are you talking about i don't see it yeah don't differ by case that's bad that's bad just assume everybody's case incentive that's a safe bet okay so yes get command line complicated and then they might go to github to review and merge the pull request so what's what's subtly being implied here is that on github not just review and merge the pull request but the next step is actually create the pull request because just pushing doesn't make a pull request you still have to go do that that work manually so there's clicky clicky there too okay so why the get cracking get gooey i do not know why they put gui on everything gui is just graphical user interface i.e the thing with buttons that you go clicky clicky on uh okay git is powerful but memorizing commands is time consuming and get works and how git works can be tricky to visualize a men this last sentence this is in my experience what most people struggle with when understanding git it is it's easy because they want you to know it's easy cody nice robert no because git is in my opinion easy once you understand the concepts but trying to learn those concepts it is a steep learning curve like like it can flatten off a little bit once you learn it but man getting up to that point can be very difficult yes provides a visual interface enabling the same workflow with only a few clicks yes and this is the one thing that i like over get cracking versus some of the other guise is there's several get gui's that are pretty nice and some of them have some pretty nice graphs to show you and let you visualize the relationship between the commits but usually something tends to fall down one i prefer the vertical nature of the graph versus how a lot of them turn it sideways second the the get crack inversion they try to make the commands intuitive and easy to find for whatever reason i don't understand why the buttons for like commit push and pull are not the biggest highlighted things on the ui on on every tool but some of them like put those on the same level as all the other commands like no no those commands are the ones you use all the time they should be front center very obvious and it's a little more intuitive now the drawback with every single get ui tool is it will never be as powerful as the command line um does this highlight message work nice robert nice i gotta figure out there's a button i'm sure i can click to how do i maybe i can't do it because you're a mod i'll have to look there there's there's buttons for me to be able to click and get those things to go through um no with the with most um uis they they rarely will ever be as powerful as the command line because the command line you can compose things together in ways that are not trivial to do with a mouse and a and a clicker the problem is is you have to compose them together so it's sort of the difference between you know programming with a drag drop interface there are several of those that are great learning tools and are awesome but they're never going to be as powerful as just like raw typing c sharp there's just more you can do with it and the there you could there's more expressiveness that you can do with straight commands the problem is you have to know the commands so moving along with that uh now that we have the basics let's go and do it so setup get cracking okay so for those people who don't have a github account this is the opportunity to do it this is i'm very happy that they put this one in here um because i always tell all my university students to go here if you are a student you should know about education.github.com yes believe me robert i wish get bisect was in it that is one of the few commands that i dropped back to the command line for one of the few i wish there was a good ui to be fair i don't know if i've seen a good ui for bisect yet i've seen some ui tools implemented i don't know if i've ever seen one that i'm like yeah i love that implementation don't think i've ever seen it but for anyone who is a student go look at this github student developer pack there is here let's just look there is so much in here also uh educators uh check it out as well there is so much free software that you get access to as a student now obviously one of the ones in here once i find it is get kraken if you are a student you get a free license of get cracking pro so obviously go and do that but there is a lot of other really good software in here as well so if you are a student specifically if you've got an uh an email address that's like uh edu pretty much all the the big universities and whatnot you have access to a oh thank you robert you have access to boom you have access to a ton of stuff so that'll get you to the github education one and then you just want the developer pack there's also things for teachers campus advisors classroom et cetera et cetera et cetera so but this is a great place for anyone who is a student highly highly recommended okay and then other things for for the rest of us who aren't students just github.com so if you don't have a github account create a github account that will be needed to work with github and then same thing for get crackit so you'll know get cracking referral url here or cycle cycle be the next one on my list maybe nope that's github get cracking we'll be in the list so um get getcracking.kaboo.dev will drop you on mine so if you are interested in get cracking and you'd like to give me a referral bit i would not complain uh and so download for free yada yada yada make sure you pick the version of get kraken that matches your operating system what a shock if you're on mac you install like you install every other application huzzah uh okay and this is gonna be one of the things i thought about uninstalling and resetting myself to a clean state i'm not gonna do that we're gonna trust the screenshots so when you fire up get kraken if you have done nothing you will get a screen like this and you should sign it and this will get you uh off to the races and actually if you just have the the github bit this um sso sign on will save you a lot of effort but then i think what i saw is yeah so depending on what edition you're on you can get a get cracking pro trial i think it's how many days is it oh seven day get cracking pro trial so there's a few things for uh difference between um just regular get cracking and get cracking pro and you'll note for individuals if you're just working on your own projects on github the individual license is totally fine right um if the the one big thing that i usually that that usually trips people up when they're on pro is if you're doing anything in devops whether it's whether it's uh personal or not in order to get the azure devops integration you do need a pro license of get crack so that's one of the few areas where it's like it'd be nice if this was limited for because i have some of my personal projects not on devops but yeah so just be aware the pricing for get cracking pro i'm trying to remember it's very reasonable it's not that expensive i'm gonna look real quick uh let's see i probably already have it pricing hey look at that boom so pro so yeah so so there is a free version where you can get away with most of your stuff especially if you just collaborated on github yeah so five bucks a month so yeah i think you're i think you're right robert 60 a year 5 and 12 is 60. yeah see maths and that gets you all of the cool pro features um i don't know if i've ever done enterprise what is oh flexible license standalone clients ldap oh yeah enterprise sounds cool but it also sounds cool when my company wants to buy it for everybody rather than when i want to buy it for me yeah so quick glance enterprise for when your company wants to buy it for a bunch of people pro when you want to buy it for you we'll go with that uh integrate into your ad setup yeah yeah and get cracking i think we'll see in a little bit has a new concept of teams for collaboration built into the tool which is pretty slick um yes self-hosted user accounts yada yada yeah and so there is the the limitation on the free one with you you can't go private repos so little little things like that yeah like i said pro if you're buying for yourself enterprise if your company's buying it for you but i think that that roughly lines up with my experience okay so let's see integrate github now this i will show so if you because they they also show you how to make sure that you are authorized as well so if you are unsure when you first fire up this is kind of what a default one will see except for this middle section here where it's all my recent stuff and favorites and whatnot you won't have that until you start using it but if you go to the preferences you can come down to like these integrations and validate that yes i am in fact connected with github yes i am in fact connected to my devops now the one thing to note if you have multiple accounts or multiple um orgs that you are a part of your your github um profile can only be linked to one at a time so if you're a member of like say this usually happens with devops more than github but multiple orgs on devops you can't have all your orgs tied together at the same time because it uses your personal access token to to do all the git interaction and so what the the work around is you just make multiple profiles and then multiple profile and then each profile can be linked to a different org so it actually i tend to like it better that way because usually i've got a profile for whatever org i'm working on and then a different profile for you know my personal stuff and that kind of thing and it the separation works well just be aware that you can only link it to one at a time uh already sounds more complicated than regular get terminal give me a give me a chance marble race give me give me a chance i i will hopefully convince hopefully convinced though i am working through their example so integrations yada yada yada though with the so with the terminal stuff there is some fancy stuff you can do especially with like auth and signed commits and that kind of thing which is pretty cool okay so now we actually so 30 slides in and we finally get to the uh the do stuff part okay so i will oh that's not what i want i just want the url copy here if anybody if anybody wants to follow along with their learning repo but we will we will follow along with theirs and see where it takes me so i go here and the directions are clicky the fork button okay so oh interesting i wonder what mlh is now i'm curious sorry i can't i have to i have to look major league hacking ah see i would not have gotten that apparently they forked from them okay so i will fork from axosoft and i will put it in mine and away we go and usually forking doesn't take too long but it does have to give me my own copy so the key part here to note is now this is me and i made my copy from them okay step one done that seems easy okay and now back to get cracking kelowna repo so you'll note it is the repo name is learn git with get kraken so we will go clone a repo github and then you'll note it already starts kind of searching through my stuff to find it so if i just start typing get oh look that learn get with get cracking that one pretty please and that's the it remembers where i usually store my stuff in my dev folder so uh sure that sounds great clone away and open i may have jumped too far ahead in my in my steps that was the clone i probably yes i skipped a bunch of steps clone with url oh no no no no no no no no don't do url you went to all that effort to link it to github go straight and use the cool github integrations and then when you're done open now that sounds about like where we got to okay so let's explore the gui and clearly when they took these screenshots they've made some some adjustments since then which is perfect so key things all the common git commands right front and center that is key for me the other thing that i absolutely love with all of this is the vertical history graph this is one of the biggest things for me especially my day job is people get very caught round the axle trying to deal with their branches and the relationship between them i was working with a colleague earlier today they ran into an issue where they opened a pull request they were seeing a lot more changes than they expected i fired get crack and was like oh i see the problem look at the base of your branch it's not based upon where it should be we should just rebase and and pull these commits in very simple very straightforward but it was easy for me because i had a nice visual representation of this you can get visual representations in other tools and whatnot totally get it i i definitely prefer this it's worth noting these commits are shown in chronological order so latest is always at the top which can also be handy because very consistently somebody will say hey i just pushed some changes and then they'll start to like rattle off their branch name or whatnot it's like nah don't worry about it i got it you're the thing at the top everything you've done in the last you know i don't know several hours i can see it's all it's all right at the top where i'm looking for it so that's that's what we're seeing here the the other thing and i'm i'm probably skipping ahead i should look at their thing let's identify a few of them okay so we'll we'll look at there so huzzah it shows your repo shows your branch you can toggle here if you want right not my preferred way of interacting with it this yes push and pull all the happy commands at the top they do define remote as being a external repository in this case github the one thing that's i would say is is really key to note because i called out earlier how with inside of git origin is just the default name for your first remote whenever you do a git clone unless you've specified extra options you're going to get origin as the remote name you can rename it if you want just be aware when you see a lot of tutorials that's why that origin name creeps in is because it's the default most people just keep it it's where your repo originated from um but especially in this case where like we forked from another repository sometimes it's helpful to be able to look at the branches and relationships from that original repository that we forked from especially in the case of open source sometimes that can be handy right now my origin and the axosoft repository should be in sync because i just clicked the fork button you know two minutes ago unless somebody's made changes since then there's not gonna be anything there but i love this thing too so remote plus button and you'll note it comes in here and it actually goes through and shows you forks but the key part is is it tries to guess which one is the most likely one that you're trying to add add a remote to and oh look it's right at the top and so we'll just add them in as axosoft so especially if you want to keep track of them but then obviously you get a bunch of remotes added in here and you start seeing stuff like this and it's like ah that's too much i don't want to look at it click the eyeball and you can just show and hide the extra remotes see what you want collapse the stuff you don't it's wonderful absolutely wonderful i love that feature okay continuing down uh get cracking ui branch stash pop so branching i we touched on a bit earlier and i think it's going to show us to actually do a branch later so i won't say too much about it stash and pop tend to be the commands that get used when it's hey i just want to save my current changes because i need to go and do something right that's pretty much stash and pop but as the name implies it is a stack so you can you know push things down on the stack or pop them off um okay and then the left side yes this is the way i tend to prefer to interact with my branches not with that section up at the top of noting i'll go back here to show it of noting the difference between branches that are on my local machine branches that are on one of my remote forks and then also the pull request and issues and team section down here you'll know you can there's not really an indicator beyond your cursor changing to the little hand but you can collapse all of these so quite often i'll collapse things up and down depending on what repo i'm in um sometimes the tags or sub modules are especially relevant for what it's worth so oftentimes i'll move those things around and just collapse what's needed uh yeah they don't cover most of the extra ones and this is a slightly older version of get cracking because you'll note the get github actions option down here does not show up okay so we are going to do a bunch of work so let's do a get cracking board this i will say completely unrelated to get whatsoever it just so happens that most people that do repositories and source control management also like to have some sort of like issue or work tracking system as well so get cracking board though highly related in process not related at all in terms of source control management most source control management systems though will link back to one or more like work tracking or issue tracking things like github has their issues right as your devops has their version of boards which can be set in any variety of flavors that you want get cracking has one as well but just understand those things not necessarily needed okay so now you should be able to make a board in the toolbar and select boards and screen below will open create starter kanban okay again this is something i have not done much with uh starter board ui is a little different than what was here okay but it looks like it got me into pretty much the same place what was that difference there this guy here starter starter board starter board welcome board i wonder why i see starter board twice that's interesting that's weird um okay and i wonder if it's because i created one before when i was playing around with it so we've got some cards so for people not familiar with uh a kanban style the the basic premise is you basically put all of your work in a list and in general people will pull the next item from the top so some manager person or if it could be you the the person in charge puts the to-do items in a list with the highest priority at top and so as people free up they just take the to-do item into progress and then when the in-progress one is done they move it over and obviously as you can see here they have add more columns if this doesn't make sense right like maybe there's maybe there's like a a testing step in the middle between in progress and done or whatever sure add what makes sense let's circle back in we'll follow this through so click uh add these cards to your to to-do list oh my word uh right that's a lot of to-do list items okay so make bio stage commit push open pull request yeah okay so we'll make some of these so uh update with bio [Music] let's see uh create commit create pr merge pr how do i edit merge pr you'll note it has spell checking that is a critical feature for somebody like me who has a horrible spelling so i'm sure none of you people have horrible spelling like me you are probably all much smarter than i am uh sure we're going to go with that and here test card i kind of just want to see this whoop where do i drop you right there and then right there and we can go back and go forward sweet so you work pretty much the way most things do due dates milestones for grouping you can have a task list underneath it labels the signees this is pretty cool nothing here seems overly new but it is a very clean laid out ui files and images and i can put notifications on it and i believe part of with these boards is being able to add people to your team which was the thing that i had mentioned before there's this collaboration aspect inside of get kraken that typically would require another system to be brought into play so if you're already using say get cracking to do your source control if you wanted to manage it this way this would be a very quick and easy way to do it though i believe it does require i'll be curious i don't know if there's a way to do these is this open on web oh look at that oh cool sweet so web interface as well i was just trying to see if it maybe would require everybody to be on there or if you needed to do it remotely because sometimes getting access to this remotely i might have to pull this site up on my phone that's usually what i care most about is if i'm going to be tweaking these things i also want to tweak them from my phone so i digress back to the list okay let's see access get cracking boards uh so you can click the boards button to go back to it the other thing that's worth noting it's it's just a tab right i'm sure i can get back to it with this button but i i could also just click the tab that sounds easier we're gonna go with that option okay now we're going to clone the source code repo using uh whoopsie i may have gone a little too far i think we already did that didn't we did we not we went through all those steps and you're telling me they didn't have us actually clone they just showed us where the clone button was click clone the repo yeah step 32 did clone the repo step this one seems out of place we're just gonna hide the slide that one doesn't seem like one i would want to use okay customize sweet uh okay so as you complete each of these steps you'll switch back and forth between the get crack in ui and get cracking boards to mark off steps sure okay at the top of the get cracking create a branch so they are showing highlight and click the branch button which is uh perfectly fine i tend to do the right click create branch because the other thing that's worth noting is if you click the branch button here this is going to take your current position and make a branch from that point 99 of the time that's probably what you want but hypothetically if i want to branch off of branch b i can just right click down here and create a branch right back here which is pretty nice you'll know don't have to switch around don't have to do anything you just right click make a branch but in our case we do in fact want our branch here so what were they telling me to name it did they care add bio add bio boom done new bra so you'll know there's a couple things that it did created a new branch so we have a new branch locally and then it automatically switched me over to that branch because you'll note i am uh with inside of git you're only ever on a one branch at a time it's kind of like climbing a tree you're only ever standing on one branch the idea being that as you make changes the branch that you you are currently on that is the one where your changes will be added to so even though currently ad bio and master are sitting at the exact same point uh in time we're about to make some changes and we'll see ad bio move up where master will stay right where it's at okay so ad bio okay on the right hand side of get kraken select view all files and then click index.html so let's go here um i am confused where is the view all files button oh they're assuming i'm back down here aren't they where hold on something's something's a little off because here's your view all files oh i got you got it okay so click here to view all files in the repo not just the changed ones and select index.html is that is that what we're going for open in the getcra kraken editor okay uh how does one get this guy oh i it so open in editors click which is great um you will note too my default setting is usually open in other tools so for example vs code default program show and file or you can you can set up get cracking with various other external tools if you want to automatically jump into them just because this is a decent this is an ok editor but it's kind of like working in vs code without any plugins it does its best but a full ide it is not okay open it and get cracking gui editor scroll down to line 39 there's a template for adding your personal bio copy lines 40-48 paste what you copied put your name in at a short bio about yourself change the image to be one of yourself if you wish okay that sounds simple so copy from here to here copy paste what you copied below this line so we'll just unindent that dude okay uh we will not be rosie the kraken we will be how about we'll go with kabu uh let's see i'm kevin bost i do not want any of this text um i love using get kraken that sounds easy okay um change it to a different image would require me going and getting another image we're gonna leave that guy there for now unless there's is there a new uh hang on uh show and folder let's just jump did they happen to leave a bunch of images in here for me or just those uh looks like it's just you know what just for fun we're gonna change it to the team one because reasons you could go you could go and get your own image and drop it into the folder as well but it looks like the only images in here are the fab icons rosie the kraken and team png so we're going with team excellent and then save so control s for those people who missed it uh write a short bio about yourself change the image great uh so index html is listed under unstaged files uh but you have not added them to a commit so this is the same step that i was commenting on back in the command line sample of where on the command line somebody might do git status to see the state of their files what basically what files have changes and then stage them the with inside of git staging a file is basically just grouping together the changes that will make up a commit so there there is that separation between just editing a file because quite often uh or i should say what happens quite often is there will be some files that you might make changes to but there are changes that might be say changing a file you know to point to something local on your disk config files are a common thing with this of you know i tweaked my config for my machine that's not really something i want to check into the repo but i need it on my machine that way so maybe i don't stage it that kind of thing okay so we will stage the file so we move from this on stage to the stage and you know we can hit we can just if we don't care that's the blind all that's the same as the get ad do all the files on the command line and then let's see stage all changes and the unfortunate part is see once again they bad it the the numbering gets messed up in powerpoint um but you'll note it also it has a message here but it missed it so the one thing to note uh inside of get kraken you'll note it shows a summary and a description inside of git there is no concept of this there is no summary description type thing what there is is multi-line descriptions and the reason why get cracking shows a 72 character limit is quite often on like github certain commits or certain tools will truncate and show only the first 72 characters of your description on a commit so you can freely type past that 72 line but get cracking is trying to be helpful and say hey just be aware that may get truncated off on some editors if people are looking at it you may want to bump that into a second line whatever right so edit my own bio commit so you'll note now our add bio branch went forward one commit whereas the master one stayed here because this is the branch that we're currently on so that's the branch that you're currently on is when you create a commit that's the branch that the commit will be added to that's a better way of saying it okay so that's great wonderful commit change and now i have a new commit my history and then push your changes this sends them to github so the one thing i will mention here is these little icons that are just to the right and here let me get zoom it open um so you'll note like right here on master there's a picture of my profile picture and um a computer picture down here the computer picture here is your local means this branch is local this picture here corresponds to a remote so you'll note that add bio only has the local icon so that's a quick and easy way to tell if something's tr uh is called tracking a remote so in our case when we go push what it's going to do is it's going to ask us and say okay which which remote do you want to push to i've got origin and then if i look here i've also got this one now i don't have permission to push into axosoft's repo so if i try github's probably going to smack me down with an error and say no you you are not marked as a contributor you don't get to push there which kind of makes sense and then you'll note it also allows me to give this a different name or keep the same name that i had locally like i said please don't change this it will only cause you confusion so we'll do submit and up goes to repo okay and done and you'll note that setting of the upstream is only needed the first time after that you can just make changes commit push and away they go okay and then making a pull request so in this case what are they having us do a pull request to are they just having us do a pull request back to our own master branch yeah so they're having us just go from our repo to repo on the master branch that's fine okay so what we can do now is now that we've got this out on github so for example you can right click here view on github love that button and you'll note github very helpfully has this nice pop-up and it's compare and pull request and this will walk you through actually making a pull request we aren't going to do that we're going to use get cracking for that so what we can do here is where did they tell me to go i'm already confused uh yeah oh on the local branch right click and do create pull request uh oh that's push and start pull request can i not do it from right here oh start a pull request look at that and then you'll note this little arrow in the middle this is important so this is where i'm going from where i'm going to so i have my changes out on ad bio and i would like them back on my master branch and you'll know as soon as i i do this what happens is git knows the deltas between these two branches so it knows that add bio has one commit that does not yet exist over on the master branch which is great that's what we were going for and so as soon as i click master it goes okay perfect and it looks at those commits and helpfully goes through and slaps in the the one line of a description that i put it there and so we could add more stuff here and i think what we're going to do is it wasn't there a uh is there a pr one that i did create pr boom so we will link it to that card and do do do do do create pull request i'm actually a little curious to look at that on github to see oh oh that is cool that's cool so it even makes a link back to the get oh i applaud you get kraken that was pretty cool uh hang on what'd you do you get more points if you actually load it up hey look at that there it shows it had an issue initially loading it with the login but drop me right in open cart on board oh yeah that's that's pretty cool i like that i like that um i don't really want notification sure we can have notifications that's fine okay sweet okay so back to the back to the directions so we made a pull request view on github which is pretty cool take a moment switch back to your uh get cracking board and update your tasks so open a pull request so i'm curious did it do anything to my card oh so we actually so let's let's do a couple things so we created pr create commit is done update with bio is done just cruising through the stuff okay uh if you visit github and select pull request tab you can see your pull requests well i think we did exactly that didn't we uh let's go do i still have it open so we can come over here and look at our pull request and we can see that our pull request is here again the thing to to pay a really close attention to is this pull request is a living document so if somebody were to come in here and and leave a comment and like you know that's not how you sp you know how about something more realistic this should be your full name right to make this change all i do is go and update the commits in this branch and this pull request then updates to reflect that i'm not going to do it right now simply because i think this thing is probably leading me into something but that there's that so merge the pull request you shouldn't have any conflicts with the branch so you can click merge pull request i would hope i have no conflicts with myself and i will click merge pull request i will call out this little drop down right here there are other merge options i'm actually thinking i might make a video about these at some point a little more targeted so just be aware because there's that's usually where people get into a lot of interesting stuff and you'll note github helpfully gives me the option to go ahead and delete this branch note this is only going to delete the branch on github it has no way of deleting my local branch so even if i delete it off github this uh ad bio branch locally will always be here and you can see now what it didn't get cracking i think that's probably where they're going so now that you've completed pull requests it's time to merge changes into master i don't know wait what um we already okay oh they're going to hold on this confuses me we just when you complete a pull request that does in fact merge changes into master i am confused uh look at the commit tree select your branch name and drag it to master when the menu opens select merge your branch name sorry i'm i'm a little confused so the problem being with this they never synchronized so huh so i understand what they're suggesting they're suggesting i grab this thing and drop it but are they suggesting i drop it on my local master or in my remote master because you'll note my local master is now still sitting right where i left it it hasn't moved but the master out on my github repo did move because i merged my pr into it i am not clear which one they are suggesting i do maybe it'll become clear here in a moment let's take a look at the commit tree thank you notice that at the very bottom you see master icon you also see master the top yup i agree the higher master has a computer icon and the lower lower master has an avatar of the repos owner no it's exactly the opposite what yes any branch that has a computer icon is your local version of the branch yep we want our version of master to be on the remote let's do that now oh i get it i get what they're going for okay so there's forcing a merge conflict hoy they um okay so some of these screenshots need to be updated so what we want to do is we want to grab this branch and we want to merge here so we are going to merge ours into bio so the other thing i will mention as well is this these little vertical bars you can grab and slide because the history graph is chronological if you prefer to just see it as a straight list you can do that the other thing i will point out is commits that have this small filled in dot are what are called merge commits so these are the ones that have more than one parent meaning if you follow the lines out of it there's two lines coming down out of either the sides or the bottom not just one line out of the bottom so for example you can see this one single line here be big right single line out of the bottom single line out of the bottom single line of that bomb whoop two lines coming out of the bottom merge commit so merges as the name implies is where two things merge or come together which is perfect okay so now we have done we have dragged our branch onto our local master this screenshot is backwards i'm not a big fan of this forced conflict uh so you let's do that now after you will see the option to sorry now merge branch a into master i am really confused this is now referencing branch a what the heck it's like it's talking about these branches here but it is yeah but this is updated since this has been done okay so i think what's going to happen is i think what they're expecting is i pull this nope undo and throw away changes boom okay so what the heck they're trying to force the merge conflict i'm very confused at this i understand what is intended is they're trying to force a conflict and show you how to resolve the conflict this is a very weird and complicated way of doing that okay so we're not going to do that we're not going to do that that's okay so let's just let's just do this guy back up just in sync so uh let's see give me local master put it on the remote just gonna do some good stuff real quick perfect okay so back to where we were a moment ago master synced up it has emerged from ad bio we want to simulate emerge conflict so let's do something that's actually more likely to do that right so we're going to create a branch back from where this original ad bio branch was so we'll call it add bio conflict right and then we will come over here and uh view all files index and we will come down here and we're just gonna do this so um uh let's see how about robert because that's a random name that i just came up with off the top of my head for no apparent reason whatsoever uh robert also loves get kraken this is a fictional robber okay and then we are going to do effectively exactly what we did before so we are going to stage all our changes um adding robert bio commit make you a little wider and push push okay and then what we're going to do is we are going to do the exact same thing that we did a moment ago and we're going to say uh start pull request so we're going to go from add bio conflict back into our master branch and oh look merge conflict detected the only brief this isn't a program hey james you are correct this is get kraken so i've got large sea creatures does that count okay creating a pull request uh sure okay so this should have a conflict and we can go out and look at it review changes this branch has a conflict uh i just kind of want to open this on github boom how do i slay said sea creature you resolve the conflict because with all great things with sea creatures there are conflicts so resolve conflict we come down here and we can see that the issue is hey we've got both robert and kabu that is a problem but we don't want to resolve the conflict here we want to resolve the conflict with a kraken um okay and i think the the easiest way to do this is just to merge um let's see merge master into bio conflict let's go the other direction i want to merge actually let's do the drag and drop option boom merge add bio conflict into master which i believe is the case with that they were trying to get us into of hey look get cracking when there is a merge conflict we'll show it to you so you can click on the conflict and you can see that in fact this line and this line is what it's complaining about because two people change the same file at the same place and the tool doesn't know what to do because git is only so smart it will auto merge things that aren't the same change on the same file at the same place but two changes in the same place it goes i don't know you got to tell me what to do so interesting things about this about their merge tool that i like so first of all the or you can pick one side or the other which is fairly common because quite often when resolving conflict it's hey you know the stuff on my ad bio conflict branch that's the latest that's the one i want throw away what's on master right we're gonna we're gonna keep robert we're gonna get rid of kaboo the other fairly common thing is to say well actually i want both right i want kabu was there first and then robert get rid of it no robert we're not throwing you away yet we're just we're adding you second because technically my commit was done first so that would be the other option it's worth noting that the order that you check and uncheck these boxes actually does make a difference so say we so say robert really should be first because alphabetical doesn't work because he's the best moderator instead of me right so robert first we click that one and then this one and it puts it down here or perhaps we realize that secretly my name is robert and i actually kind of want to do a mix and match of this it's like well i kind of want i kind of want to say well i want to keep this line this line this line this line for the image but in terms of the bio i actually want to do the robert side of things so you can mix and match and again the order you click it determines the order down there but then you realize robert also loves get kraken but that's the period isn't expressive enough and so we definitely need exclamation points to go along with it so being able to edit down here is oftentimes what people will call the what is the term it's a word for it and i can't remember what it is short version you can also edit and when then when you're happy dr frankenstein that is correct so clearly robert dr frankenstein is clearly what the merge should be and then we commit and merge and you can see now master shows a merge commit where if we look we can see what the the merged level changes are because we ended up keeping the the team icon one from the other side we now get this on this side so huzzah and then we can push that up all right easy mode let's see what's my board show merge pr uh create pr is done merge pr is now done too burn through that okay so i might have to leave feedback on some of these slides this conflict thing is not well done um it seems like these images need to be updated with latest setup uh add a commit message merge we did all that you'll notice that the local version of master is once you get behind select push which we did so i just went a little too fast um check out your page uh okay oh we get to oh that's right it's just straight up html so we can look at this thing let's come over here so copy file path naturally we go to a web browser because reasons paste we are rosy the kraken and robert dr frankenstein who apparently i didn't realize the the png as a transparent background and that little level of yellow i don't know if people can see that that is that is darn near transparent oh i also misspelled robert it's hard to see definitely yeah yeah so we'll just say that this page needs work definitely needs a little work awesome look what you built yeah not something i'm putting on my resume but it is awesome uh wrap up and next steps so a basic workflow for git so this is one of the things that i that i've actually been thinking about doing is putting together rather than just live stream videos on my youtube some actual very targeted like under five minutes hitting very specific points because one of the things about this like this is a very basic workflow that a lot of people use but it falls apart fairly quickly the moment you have what are called branch policies so in a lot of those we just merge to master and pushed the problem is is in a lot of repos there are protected branches like the main branch that everybody's committing into most people don't have permission to push is it's supposed to be protected and the intent is to make people do pull requests to make sure code gets reviewed and everything's fine and whatnot right that is perfect that is what you want the issue being that this workflow shown here doesn't really cover that and then also i i commented on the pull request option where with the github showed the the merge pull request and then oh yes sorry real quick gotta call out what robert said um there is a discord channel you'll note the the discord one is down there um also you'll note in this the links down the bottom you'll see discord cabood.dev if you have questions feel free to drop them there feel free to drop them in chat um especially if like the stream ends or whatnot feel free to drop them in discord and i will do my best to get to them as rapidly as i can or robert may answer them because he's pretty smart too but the idea of having kind of those targeted videos for here's kind of best practices of things especially on topics like get and get cracking where i tend to teach a lot i've kind of wanted to put together that material so that i can basically cite myself it works better when there's easy to reference go back to type things so i've been contemplating doing that if you are interested let me know because i may do a quick run of like get based videos just to see how they fare and if people like them i might keep going to do other stuff okay extra practice deploy websites using github pages become a get cracking ambassador i've actually applied for this program because apparently people who like get cracking make good get cracking ambassadors who would have thunk yeah so if other people like robert are enthusiastic about get kraken and like to share your knowledge of it um this program is actually a pretty cool way especially since they give you a free pro license of uh get kraken i i believe the requirements are they ask you to put out four things a year uh on get cracking um i posted the link to discord chat since your link on the page has expired my link on the page the one i post expires in six hours ah interesting good to know thank you i should fix that uh call me call me after stream yeah i will do that robert my and as james will attest my discord knowledge is low um also for people who do have get cracking they do have a referral program yada yada yada thank you your name because your name and then get kraken using get kraken so so that is get cracking basics and overall i like this i think if i were to use this slide deck on mine i'm probably going to go back and redo this merge changes once and there's a few of these things that have the wording on this one here i'm going to just do this um hide slide this one's good i'm gonna just hide all the slides that i think i would want to change and then like i get what this is going for it's just i i think this is a not a great way to show it uh so we're going to hide all of these slides i i think i would want to come up with a little bit more real world example especially one that lines up with the open source kind of workflow but most of this is pretty good it's pretty good some of these history tree ones might need to be updated and i'm not sure i like the telling somebody to add these eight something cards to it i feel like adding three is more than sufficient to play around with the feature and get it a pretty good handle of what how it's gonna work so cool okay with that i may i may wrap this up and go from there robert do you mind if i just call you now is that cool and we can we can hash it out because i might just do that and we'll go from there here actually if you want robert i'll just call you on discord now do you do you wanna do you wanna hash it out on stream or should i end the stream and then hash it out does it matter to you your call perfect i heard call now because that's what call means just as soon as i figure out where the heck the dial the person like why is why is calling somebody hard uh i am confused how do i make it go um top right phone icon i that's what i was expecting to find hey look a call from robert it's almost like you knew i was calling you robert uh pro tip mute your uh stream otherwise it'll annoy you excellent okay i think i can click this button so sweet okay so explain to me what i'm doing wrong and actually hang on i'll turn you on so other people can hear you there now you're live yeah yeah so go to your your discord channel uh go to my discord channel i am there uh go to server settings server settings yeah so you click little drop down at the top and it should say server settings yep yeah scroll uh on the left column scroll down to the near the bottom it's the second from the bottom it says invites if you click on that you should see two in there right now that are ones that i've created ah so the one that you you've pasted uh or you've edited it into the twitch page has expired oh that's so yeah so no one can join with that uh that address well that's dumb so you're saying i'm an idiot in a with a much with a much more nicer way of phrasing it there's opportunities here opportunities what i heard was clicky clicky clicky okay so i need to go and edit some stuff uh not there so hold on when you say twitch page you're actually talking about uh this one and i'm gonna have to mute myself because i'm sure i'm about to hear myself and that's just that's gonna be bad uh yeah right there it says discord there uh up and to the right just a little bit that one well yeah there's there's there's that one there and then you have the discord hyperlink right there in your uh where it's right below github youtube twitter get up youtube twitter the one that i have selected nope uh so your mouse is all over the place uh sorry yeah it's right above your twitter feed ah that one okay okay so we need to do some editing here then so let's start with this so i go here so is i need to look at what this address is pointed to don't i yeah and let's do let's do incognito for this guy invite invalid well that is just dumb so that's why i said it was broken [Music] trying to help you with that see i appreciate that sorry one second uh let me grab my the nice part about uh i'll just go and update my dns record for that one so here is a list of your active invites you can invite anyone so helping me discord it sorry it's trying to walk me through a getting started tutorial and i keep trying to click off of it to say go away darn it it just doesn't it just doesn't want to do so um okay how do i create one of these things though yeah so to create one so uh you go to your you click on the little so in discord right below the server settings area so it's below that whole drop down it should be a nice big blue button that says invite people all right the big button yeah uh oh and then if i click the edit invite link yeah then you can select select maximum uses you probably want to put no limit expires after and you probably want to put never generate me new link that is the link i would like to use okay yeah okay i will go i will go disable my two invites i guess oh that i guess that's true um which one of yours for never because i can just use that yeah it's all right that's right i'm gonna disable mine let's just make sure we get the ones updated in the channel and i'll i'll disable the one that you've made for temporary too you've made you've made one permanent one and one temporary one i'll disable the temporary one so this one will have very nice about saying that kevin you're an idiot part i appreciate that so the one that'll be active will and then yytu okay so let me okay so we want uh do you not allow me to a yes leave page i would like so oh interesting so it actually huh so there's going to be some period of time where my url is going to be broken we're just going to have to deal with it uh that'll be fine it's been broken for a while right which is probably perfectly fine um so let's do this guy here and we will give do a cname uh ttl of an hour is probably fine [Music] data goes there save okay so dns records updated and that'll go through uh yeah this one and that will be fine because that'll be dns based i'm wondering if i did if i was smart uh where's the edit profile button here oh that's current stream uh i'm gonna do this on a different screen because i don't know what's about to get shown because i think that is actually in my profile settings if i'm not mistaken all right credit card information yeah and as i'm really good at accidentally exposing stuff um there's there's a fun stream that i did a while back when i did my my subtitle app and yeah i think i had to reset my keys like three or four times during that stream i got really good at it okay so cool the discord one is pointed at the dns address so it will automatically update excellent okay sweet okay so we'll leave that alone yeah the dns one probably only updates once a day uh typically uh well the ttl on it's an hour so it won't be longer than an hour but what i've seen is usually the because i go through google domains is it's usually under 10 minutes okay for global propagation which is pretty good it's like definitely i you know i'm only spanning a planet i mean 10 minutes for a planet i can accept it yeah i'll take it cool thank you robert i appreciate your help that's right now i expect uh the only uh brave is robin the only brave sir is robin to use that discord link excellent hey james go click the discord link uh boom see i can even type it i'm hopefully i guess he has if he has a discord account he does he was the one that i was playing someone has never seen monty python do not make that assumption james was the guy who was playing the the that board game uh with last week ah okay so mock profusely though i believe last week you were the one just cheering him on i was i'm guilty of it that invite was also invalid okay give it 10 minutes google only goes so fast on the internets so i understand did you confirm that the last four of that url was the yytu i will double check it here one more time before i say for certain but i believe the answer is yes and apparently i closed it that button sorry ctrl shift t for the win and domain forwarding how interesting sorry i gotta figure out where it went uh oh did it move to the bottom because i edited it but you did twitter twitch yes confirmed cool so i just need it to actually propagate out to all of the important things yeah i'm still still getting invalid myself yeah it could be our could be our wonderful local caches as well that is true that is true because it does show uh changes are published immediately but may take time to propagate yeah that's kind of the way dns works it's interesting that it must just take the some of the views on here are unusual i'm not used to this google domains had a simpler way of doing this before but oh hang on oh something something is different why did it it's showing up as a custom record rather than a domain forward why would it do that did you call i heard you were saying like c name earlier yeah and but it but it lines up with what i would expect for the domain forwards here i'll just here there's nothing there's nothing sensitive on this page as long as i don't do too much scrolling there's nothing sensitive on this page because it's dns it's public theoretically um okay i just don't understand why this one shows as a custom record and these ones show as domain forwards despite and i don't know if this is just it hasn't propagated this ui has changed since last time i was in here which is the only thing that's kind of confusing me and maybe it's just a matter of waiting for it to propagate yeah i'm sure we can check on it tomorrow so i'll find out well cool well thank you robert no problem with that i will probably wrap up the stream uh see you james this song is popped awesome and thank you robert as always i do appreciate your help anytime have a good night sounds good you
Info
Channel: Kevin Bost
Views: 98
Rating: undefined out of 5
Keywords: programming, git, gitkraken
Id: U3k75mt0rB8
Channel Id: undefined
Length: 103min 23sec (6203 seconds)
Published: Mon Aug 16 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.