1
00:00:05,550 --> 00:00:09,810
Welcome back, everyone, to this lecture where we're going to discuss version control with Gates and

2
00:00:09,810 --> 00:00:10,320
GitHub.

3
00:00:11,580 --> 00:00:16,860
Now really, the final step is to be able to store a copy of our code on GitHub either publicly or privately

4
00:00:17,160 --> 00:00:21,630
and then update our servers Django Project Code with any code if updated on GitHub.

5
00:00:22,020 --> 00:00:25,740
Now, keep in mind, in order to follow along, you will need to create a free GitHub account before

6
00:00:25,740 --> 00:00:26,370
continuing.

7
00:00:26,730 --> 00:00:32,220
Speaking of which, you should really have some experience of GitHub and gets before continuing on.

8
00:00:33,060 --> 00:00:38,460
So this lecture assumes some very basic knowledge of understanding what is actually used for and what

9
00:00:38,460 --> 00:00:41,520
GitHub is used for and its overall use for version control.

10
00:00:41,910 --> 00:00:46,410
If you really have no idea what I'm talking about when I mentioned the phrase GitHub or gets or even

11
00:00:46,410 --> 00:00:52,080
version control, I would highly recommend that before you continue on with this lecture, go ahead

12
00:00:52,080 --> 00:00:55,290
and just do the very basic Hello World tutorial that's on GitHub.

13
00:00:55,530 --> 00:01:00,900
It's going to teach you a lot of the ideas on why you would want to use, get and hub and version control,

14
00:01:01,110 --> 00:01:05,970
as well as the very basic commands to create a new repository, as well as push and pull changes to

15
00:01:05,970 --> 00:01:06,090
it.

16
00:01:06,360 --> 00:01:08,700
So if you've never done that sort of thing before?

17
00:01:08,730 --> 00:01:10,290
Just take a little bit of time right now.

18
00:01:10,470 --> 00:01:15,950
Go to this link or just Google search Hello World plus GitHub tutorial and go through that tutorial.

19
00:01:15,960 --> 00:01:21,060
It's pretty quick, and it will explain why you would want to use GitHub and how to commit changes to

20
00:01:21,060 --> 00:01:24,420
some repository and then pull those changes to another server.

21
00:01:24,840 --> 00:01:30,330
Once you've done that, then you should be ready to go on actually connecting this Linux server to a

22
00:01:30,330 --> 00:01:31,860
GitHub repository that we create.

23
00:01:32,700 --> 00:01:37,560
So essentially, the steps that we need to do is have the S.H. connection to the node server install,

24
00:01:37,560 --> 00:01:43,410
get on Leno, create a new GitHub repository on GitHub dot com and then connect Leno.

25
00:01:43,470 --> 00:01:47,850
Get repo to GitHub and we will need to create a personal access token for that.

26
00:01:48,690 --> 00:01:51,990
Then we want to be able to connect to GitHub repo locally.

27
00:01:51,990 --> 00:01:53,220
That is on my local computer.

28
00:01:53,460 --> 00:01:57,930
And then I want to be able to push and pull changes from a local computer to GitHub and then GitHub

29
00:01:57,930 --> 00:01:58,830
to denote server.

30
00:01:59,160 --> 00:01:59,450
All right.

31
00:01:59,460 --> 00:02:01,650
So that's a lot of steps, but it's actually quite simple.

32
00:02:02,160 --> 00:02:05,070
A lot of us just copy and paste in commands that hub tells us to do.

33
00:02:05,460 --> 00:02:10,620
So let's get started by confirming our sausage connection to the Lennert server and then changing directory

34
00:02:10,860 --> 00:02:13,140
to where our Django app folder actually is.

35
00:02:13,440 --> 00:02:14,070
Let's get started.

36
00:02:15,380 --> 00:02:15,620
All right.

37
00:02:15,650 --> 00:02:20,930
Here I am back at my terminal, I've already done the SSA connection to my Linux server.

38
00:02:21,380 --> 00:02:27,200
Next, what I want to do is actually need to navigate to the Django application folder, so we haven't

39
00:02:27,200 --> 00:02:28,210
actually seen this yet.

40
00:02:28,230 --> 00:02:32,840
But by going through the Leonard marketplace, a Django project was already started for us.

41
00:02:32,870 --> 00:02:38,810
We confirmed that by visiting 8000 ports on our actual IP address, but we haven't seen the actual files

42
00:02:38,810 --> 00:02:39,380
themselves.

43
00:02:39,770 --> 00:02:48,470
So what I could do is I could CD or change directory into forward slash VR forward slash w w w.

44
00:02:49,440 --> 00:02:50,190
Hit enter.

45
00:02:50,220 --> 00:02:55,820
That's going to change directory into this particular slice of subdirectories, and then if you hit

46
00:02:55,840 --> 00:03:00,330
L.S. for list, you should see the actual Django application.

47
00:03:00,630 --> 00:03:04,650
This is the actual Django project that is currently running.

48
00:03:04,890 --> 00:03:09,960
So what I can do is CD into Django App Folder.

49
00:03:10,940 --> 00:03:14,790
Hit enter and then blessed to list everything that's in this folder.

50
00:03:15,150 --> 00:03:21,150
And you should see a very basic project here we have DB sequel like Django app and Managed Pie.

51
00:03:21,480 --> 00:03:25,400
And this is where the managed API is actually being run.

52
00:03:25,410 --> 00:03:31,140
So essentially, Leno took care of a lot of work for us, and the Django app is actually already running.

53
00:03:31,170 --> 00:03:38,100
You can confirm this by typing the command piece AWACS, and you should see somewhere around here something

54
00:03:38,100 --> 00:03:42,970
being run by Python three managed Typekit run server at Port eight thousand.

55
00:03:42,990 --> 00:03:45,630
So this is the actual line that's being run right now.

56
00:03:45,710 --> 00:03:47,700
You can see a bunch of other stuff's been taken care of for us.

57
00:03:48,060 --> 00:03:49,440
So just keep that in mind.

58
00:03:49,770 --> 00:03:53,250
You don't need to worry about having to run Python, manage the server now.

59
00:03:53,250 --> 00:03:57,510
Later on, we can't actually edit the settings that pie and then restart things ourselves in case we

60
00:03:57,510 --> 00:03:57,900
need to.

61
00:03:58,470 --> 00:04:01,230
So I'm going to clear this screen.

62
00:04:02,620 --> 00:04:08,320
OK, so right now, I'm underneath Django app, and I want to create a new GitHub repository here in

63
00:04:08,320 --> 00:04:08,950
order to do that.

64
00:04:09,640 --> 00:04:13,270
I need to make sure I actually have installed gets to do that on Linux.

65
00:04:13,570 --> 00:04:14,470
That's actually quite easy.

66
00:04:14,500 --> 00:04:16,980
Simply say a pity dash.

67
00:04:17,720 --> 00:04:19,870
Get space.

68
00:04:20,380 --> 00:04:22,380
Install space.

69
00:04:22,660 --> 00:04:29,450
G i t or get this is going to install gets onto our Linux server.

70
00:04:29,470 --> 00:04:30,460
So enter here.

71
00:04:30,940 --> 00:04:31,690
Notice for me.

72
00:04:31,690 --> 00:04:33,910
I actually already had it installed for you.

73
00:04:33,910 --> 00:04:36,740
If we're going to ask you if you want permissions to do it or not.

74
00:04:36,760 --> 00:04:38,860
It's going to ask for about like 30 megabytes of space.

75
00:04:39,130 --> 00:04:40,390
We have more than enough space for that.

76
00:04:40,390 --> 00:04:41,500
So go ahead and just say yes.

77
00:04:41,770 --> 00:04:42,760
And then it should install it.

78
00:04:43,150 --> 00:04:45,790
And note, here I'm right now underneath the Django app.

79
00:04:46,630 --> 00:04:46,960
OK.

80
00:04:47,350 --> 00:04:53,320
So we just installed Gittes, which means I have the capability to create a Getz repository, but I

81
00:04:53,320 --> 00:04:55,750
want to make sure that I actually connect that to GitHub.

82
00:04:55,990 --> 00:05:01,640
That way, I have a place online where I'm actually storing my files and making sure everything's working.

83
00:05:01,720 --> 00:05:05,620
So what you need to do now is go to GitHub dot com.

84
00:05:06,280 --> 00:05:13,780
So here I'm going to come to bbc.com, and when you're logged in, go ahead and create a new repository.

85
00:05:14,800 --> 00:05:17,620
Go ahead and pick out a repository name.

86
00:05:17,620 --> 00:05:20,560
If you need some inspiration, you can go ahead and choose the one they suggest for you.

87
00:05:20,920 --> 00:05:25,420
I'll just call this Django example, Leno.

88
00:05:26,170 --> 00:05:29,380
And if you want this to be public or private, it's up to you.

89
00:05:29,680 --> 00:05:33,790
I believe right now, GitHub of public and private are free for a single user.

90
00:05:34,120 --> 00:05:38,140
If you want multiple users on a private repo, that's actually when you need to begin paying GitHub.

91
00:05:38,140 --> 00:05:39,070
Slash Microsoft.

92
00:05:39,340 --> 00:05:43,000
So I'll keep mine, actually keep mine public so you guys can see it later.

93
00:05:43,510 --> 00:05:49,120
And then we could initialize this repository with fake ignore, read me etc, but we'll actually add

94
00:05:49,120 --> 00:05:49,990
those on later on.

95
00:05:49,990 --> 00:05:53,110
So leave all these blank and then I'm going to create a repository.

96
00:05:55,280 --> 00:05:57,590
So this will now create a new repository.

97
00:05:58,430 --> 00:06:02,750
And what's really cool about this is it actually has the instructions on how to create this new repository

98
00:06:03,020 --> 00:06:03,920
on the command line.

99
00:06:04,370 --> 00:06:09,500
Now, in order for this to work, we actually need to create what's known as a personal access token.

100
00:06:09,800 --> 00:06:15,260
The personal access token will essentially allow us to have a password that will allow the little server

101
00:06:15,440 --> 00:06:20,510
to push changes here to our example on GitHub to do that.

102
00:06:20,630 --> 00:06:24,500
Go ahead and open up a new tab and go to GitHub.

103
00:06:26,020 --> 00:06:27,940
And then at the top right.

104
00:06:28,120 --> 00:06:29,140
Go to Settings.

105
00:06:30,800 --> 00:06:33,980
Scroll down until you see developer settings.

106
00:06:36,140 --> 00:06:38,600
Then go to personal access tokens.

107
00:06:42,740 --> 00:06:47,150
Then you are going to click Generate New Token.

108
00:06:48,760 --> 00:06:52,570
You can go ahead and give yourself a note as far as what's this token for?

109
00:06:53,020 --> 00:06:56,710
So I'll say this is for lecture video Leonard.

110
00:06:57,190 --> 00:07:02,210
You can also make this exploration for this token so I can make this expire in seven days, for example.

111
00:07:02,590 --> 00:07:08,320
But most importantly, I need to understand the scope of what a server with this token password is able

112
00:07:08,320 --> 00:07:08,740
to do.

113
00:07:09,230 --> 00:07:15,250
So I want whoever has this password token be able to have full control of private repositories, so

114
00:07:15,250 --> 00:07:19,780
select everything under repo, scroll down and then generate token.

115
00:07:22,030 --> 00:07:25,120
And then go ahead and copy the token that's created for you.

116
00:07:25,780 --> 00:07:31,240
Keep in mind, you don't actually ever get to see this token again, so make sure you copy it and save

117
00:07:31,240 --> 00:07:32,140
it somewhere secure.

118
00:07:32,710 --> 00:07:36,940
So later on, you can do more research on the best ways of storing this permanently.

119
00:07:37,600 --> 00:07:38,530
Some encrypted fashion.

120
00:07:38,530 --> 00:07:40,630
But just again, make sure you don't lose this.

121
00:07:40,630 --> 00:07:42,100
Otherwise you'll have to recreate it again.

122
00:07:42,400 --> 00:07:44,000
So I just copy this.

123
00:07:44,020 --> 00:07:47,140
Maybe open up a notepad somewhere and paste it there for safekeeping right now.

124
00:07:48,250 --> 00:07:49,750
So again, I can't really stress this enough.

125
00:07:49,900 --> 00:07:53,630
Make sure you copy this before you actually go to another page.

126
00:07:53,980 --> 00:07:59,080
So copy this and write this down on a quick notepad for right now to follow this example because we

127
00:07:59,080 --> 00:08:01,480
will be copying and pasting something else in just a second.

128
00:08:01,870 --> 00:08:06,730
The after this, once we leave this page, you will not be able to see this personal access token again,

129
00:08:06,910 --> 00:08:09,130
and there's nothing I can do to help you with that.

130
00:08:09,430 --> 00:08:09,730
OK.

131
00:08:10,120 --> 00:08:15,010
So I just copied that, and now we need to do is come back here and then we're going to create a new

132
00:08:15,010 --> 00:08:16,480
repository on the command line.

133
00:08:16,990 --> 00:08:19,600
So go ahead and copy this set of commands.

134
00:08:19,750 --> 00:08:22,720
This is going to initiate in your repository at a read me file.

135
00:08:22,720 --> 00:08:29,530
Commit it and that's eventually going to add this and push this to this Django example A..

136
00:08:29,950 --> 00:08:32,919
So copy and paste these commands with that little copy button.

137
00:08:33,970 --> 00:08:38,260
Let's come back here and then I'm going to right click to paste that all in.

138
00:08:38,860 --> 00:08:43,669
And then it's going to do a lot of configuration automatically for us, the very last line.

139
00:08:44,020 --> 00:08:45,310
It's going to say, Hey, get push.

140
00:08:45,460 --> 00:08:46,630
That's you, origin man.

141
00:08:46,930 --> 00:08:47,510
Go ahead and hit.

142
00:08:47,560 --> 00:08:48,130
Enter there.

143
00:08:49,120 --> 00:08:50,770
It's going to ask for your username on GitHub.

144
00:08:52,360 --> 00:08:53,470
Mines period data.

145
00:08:53,680 --> 00:08:55,870
And then it's going to ask for your password, your password.

146
00:08:56,050 --> 00:08:58,330
That is the password token that you just created.

147
00:08:58,810 --> 00:09:00,700
So then go ahead and paste it in.

148
00:09:00,730 --> 00:09:01,660
It's going to be invisible.

149
00:09:02,110 --> 00:09:03,640
So I just pasted it in right now.

150
00:09:04,190 --> 00:09:04,840
I enter.

151
00:09:05,050 --> 00:09:10,060
And it should have been able to successfully push that to the Django example we saw.

152
00:09:10,570 --> 00:09:14,590
So now you should be able to come back to GitHub here and refresh this.

153
00:09:16,770 --> 00:09:19,020
And now you see your main branch.

154
00:09:21,030 --> 00:09:25,860
Now, you may have noticed this just pushed the read me file, it didn't push anything else.

155
00:09:26,130 --> 00:09:28,980
You actually want those jingo project folders as well.

156
00:09:29,370 --> 00:09:34,020
So this is where your knowledge of gets at and get commit would come in handy if you haven't done that,

157
00:09:34,020 --> 00:09:38,700
actually, the Helloworld tutorial, but what you should be able to do is essentially come back here

158
00:09:39,180 --> 00:09:46,370
and at the command line, do something like get ad space dot and then say Get commits space.

159
00:09:46,860 --> 00:09:48,720
I'm actually committing everything later on.

160
00:09:48,720 --> 00:09:50,630
We probably want to ignore the actual DB sequel.

161
00:09:50,790 --> 00:09:56,970
That's not something we want to be saving with Kit, but right now I'll just save it for the heck of

162
00:09:56,970 --> 00:09:57,670
it and they'll say it.

163
00:09:57,690 --> 00:10:01,320
Commit, um, my second commits.

164
00:10:03,120 --> 00:10:03,930
Enter here.

165
00:10:04,530 --> 00:10:07,110
And now it's saving all those again.

166
00:10:07,620 --> 00:10:12,240
Later on, we're going to want to ignore some of these, like these pat cash files and squat like three,

167
00:10:12,660 --> 00:10:15,000
so I can't say get push.

168
00:10:16,690 --> 00:10:17,410
Hit enter.

169
00:10:17,440 --> 00:10:23,020
And every time you push here, we'll ask you for your username, as well as that token password.

170
00:10:24,570 --> 00:10:26,280
So go ahead and put that in.

171
00:10:27,090 --> 00:10:28,020
And there you have it.

172
00:10:28,380 --> 00:10:29,840
So now you come back to GitHub.

173
00:10:31,840 --> 00:10:39,160
Refresh and you can see you have everything here, the database, read me, the M.D., manage that pie

174
00:10:39,160 --> 00:10:40,120
and the Django app.

175
00:10:40,540 --> 00:10:47,620
And now what you can do is make a local change and have that show up on the actual website.

176
00:10:48,010 --> 00:10:49,440
So let me go ahead and do that now.

177
00:10:49,450 --> 00:10:54,460
At this point, I would recommend downloading GitHub desktop, which makes it super easy to actually

178
00:10:54,460 --> 00:10:55,630
download things locally.

179
00:10:55,930 --> 00:11:01,330
So I already have a GitHub desktop set up on my own, so I'm going to open that up real quick.

180
00:11:02,510 --> 00:11:07,640
All right, so if you haven't already Google, search GitHub desktop and download this tool, it's super

181
00:11:07,640 --> 00:11:08,090
useful.

182
00:11:08,330 --> 00:11:12,440
Technically speaking, everything I'm showing you or about to show you, you could just do yourself

183
00:11:12,440 --> 00:11:15,560
at the command line, but it's just so much nicer with the desktop.

184
00:11:15,560 --> 00:11:20,090
This GitHub desktop, a gooey, the graphical user interface that I highly recommend it.

185
00:11:20,570 --> 00:11:23,630
So we're going to do is go ahead and download this GitHub desktop already.

186
00:11:23,630 --> 00:11:24,560
Have my set up.

187
00:11:24,840 --> 00:11:28,220
Mine's going to look a little more complicated than yours just because I have a bunch of repositories

188
00:11:28,220 --> 00:11:28,850
connected to it.

189
00:11:29,120 --> 00:11:30,410
But the main idea will be the same.

190
00:11:30,830 --> 00:11:35,870
So eventually, what you're going to see after you download desktop is something that looks like this.

191
00:11:36,140 --> 00:11:40,940
My apologies for the super small font here, but also meant to hopefully make it easy to see you're

192
00:11:40,940 --> 00:11:44,390
going to click on Add Clone Repository.

193
00:11:44,600 --> 00:11:46,280
Want to clone a repository?

194
00:11:46,280 --> 00:11:49,670
Basically saying go to GitHub and clone a copy of the code?

195
00:11:49,670 --> 00:11:56,930
I have there to be local here, so are going to say clone repository and then start searching on GitHub

196
00:11:56,930 --> 00:11:59,210
dot com for the repository you just created.

197
00:11:59,600 --> 00:12:06,530
Mine was called Django Example Leno, and then what you need to do is decide the local path of where

198
00:12:06,530 --> 00:12:07,280
you want to save it.

199
00:12:07,700 --> 00:12:13,850
So, for example, I'm going to choose to save it on my desktop underneath Django lectures.

200
00:12:14,630 --> 00:12:18,370
I'm going to select that folder, OK?

201
00:12:18,380 --> 00:12:23,450
And then once you've selected that notice, it's highlighted I've chosen the local path.

202
00:12:23,660 --> 00:12:24,680
Go ahead and hit clone.

203
00:12:25,280 --> 00:12:32,480
It's going to clone that actual repository locally, so I'm going to move this stuff out of the way.

204
00:12:33,290 --> 00:12:35,720
And this is also where I will recommend having two screens.

205
00:12:35,750 --> 00:12:36,380
Very helpful.

206
00:12:37,520 --> 00:12:42,980
And then if you expand explorer, you should see Django example the node Django app.

207
00:12:43,550 --> 00:12:45,350
Later on, we'll get rid of the steep SQLite.

208
00:12:45,590 --> 00:12:48,230
I don't want to be constantly pushing and pulling the entire database.

209
00:12:48,380 --> 00:12:52,190
That wouldn't make sense, so we want to add that to a ignore file later on.

210
00:12:52,730 --> 00:12:56,240
Then we'll hit Django app and I can see everything that I'm already familiar with.

211
00:12:56,390 --> 00:13:02,630
So let's keep this current PowerShell terminal open, and I'm going to add a new one command prompt,

212
00:13:02,900 --> 00:13:08,240
which is now located here and Django lectures, and let's create a very simple landing page and make

213
00:13:08,240 --> 00:13:09,500
sure everything is working.

214
00:13:09,860 --> 00:13:13,130
All right, so this should feel really familiar now.

215
00:13:13,160 --> 00:13:15,650
It's basically the environment you've been programming in.

216
00:13:16,160 --> 00:13:20,210
All we can do is seed into our Django example, Leno.

217
00:13:20,660 --> 00:13:27,470
And let's actually create a really small application that just returns back in response for some extended

218
00:13:27,470 --> 00:13:27,920
URL.

219
00:13:28,430 --> 00:13:31,670
So we can do here is just say, Python.

220
00:13:32,210 --> 00:13:38,210
Manage the PI star app and let's call this app other.

221
00:13:39,350 --> 00:13:42,710
So we'll enter there and we should see the other app created.

222
00:13:43,130 --> 00:13:48,800
So here you have Django app and I see other app, and let's actually now connect this to our overall

223
00:13:48,800 --> 00:13:49,760
Django application.

224
00:13:50,360 --> 00:13:54,110
So what we can do here is everything we've done before in the past.

225
00:13:54,530 --> 00:14:02,930
I'm going to create a new file under other called URLs that pay, and then what I can do here is just

226
00:14:03,050 --> 00:14:04,460
make a really simple view.

227
00:14:04,460 --> 00:14:13,900
So I got I've used up high and other and I'm going to say from Django, the HTP import HDP response.

228
00:14:13,910 --> 00:14:15,860
So let's create a simple, function based view.

229
00:14:16,760 --> 00:14:24,560
So simple view takes on a request, and there's simply going to return to response that says hello.

230
00:14:26,560 --> 00:14:33,670
Then we'll go to your URLs and we'll save from Chengdu, the URLs import path.

231
00:14:34,480 --> 00:14:37,780
And let's create our URL patterns list, as we've done many times before.

232
00:14:38,650 --> 00:14:42,480
And then we'll say, here's path and then I need to actually import that view.

233
00:14:42,490 --> 00:14:46,210
So we'll say from that.

234
00:14:47,740 --> 00:14:52,810
Or actually, we can say from that, yeah, from that interviews, that should be fine, then we'll

235
00:14:52,810 --> 00:14:53,690
create this path.

236
00:14:54,310 --> 00:14:55,120
Just blink.

237
00:14:55,120 --> 00:15:02,170
So when you go to essentially our domain, in this case, it's going to be our IP numbers port eight

238
00:15:02,170 --> 00:15:05,920
thousand four slash other would be this particular view.

239
00:15:06,400 --> 00:15:10,090
So blank here and then we need to connect it to the actual view.

240
00:15:10,120 --> 00:15:14,990
So we'll see views dot and then it's simple view there.

241
00:15:16,180 --> 00:15:16,500
OK.

242
00:15:16,690 --> 00:15:19,600
If you want, you could give this a name, but just keep it super simple right now.

243
00:15:19,660 --> 00:15:22,000
Essentially going all the way back to the very first single lectures.

244
00:15:22,450 --> 00:15:23,790
So we have our oral patterns here.

245
00:15:23,800 --> 00:15:27,010
I certainly connect this particular URL pattern to the overall website.

246
00:15:27,400 --> 00:15:35,350
So you come to Django app and actually your URLs that pile here and we'll say from Django that URLs

247
00:15:35,350 --> 00:15:37,450
import path, comma.

248
00:15:38,050 --> 00:15:41,380
And then we also want to do is say include.

249
00:15:42,820 --> 00:15:43,150
All right.

250
00:15:43,810 --> 00:15:45,790
And then after this, we're going to say path.

251
00:15:47,120 --> 00:15:49,670
And then say other forward slash.

252
00:15:51,000 --> 00:15:53,250
And then we need to connect as include.

253
00:15:54,030 --> 00:16:00,030
And we are going to include other URLs essentially following the same convention.

254
00:16:00,090 --> 00:16:00,660
You always have.

255
00:16:01,620 --> 00:16:01,870
All right.

256
00:16:01,890 --> 00:16:08,550
So we have other that URLs connected to simple view, which itself is connect to the forward slash other,

257
00:16:08,550 --> 00:16:10,320
so actually be something like that.

258
00:16:10,770 --> 00:16:13,830
And then that connects the simple view, which should say hello.

259
00:16:14,400 --> 00:16:19,590
So the question is, I need to now push these changes that I did locally to GitHub and then from Leonard

260
00:16:19,640 --> 00:16:20,040
Pool.

261
00:16:20,040 --> 00:16:28,020
Those changes it from GitHub so we can do this all, or at least the local stuff from our desktop.

262
00:16:28,410 --> 00:16:33,000
So now bring in after you did all those changes that you now want to push to get help bring in your

263
00:16:33,000 --> 00:16:39,140
little GitHub desktop tool and we'll ask you, OK, do you want to push all those changes?

264
00:16:39,150 --> 00:16:40,150
That's going to be fine for us.

265
00:16:40,150 --> 00:16:48,090
So we'll say first local changes here commit those to main and then push them to the origin.

266
00:16:50,740 --> 00:16:51,220
Perfect.

267
00:16:51,430 --> 00:17:00,430
So now we are going to come back to our secure shell here, and we're still located under the GitHub

268
00:17:00,430 --> 00:17:00,940
repo.

269
00:17:01,270 --> 00:17:05,589
If you want to run these commands again, you will need to CD into this repo location.

270
00:17:05,980 --> 00:17:07,780
But then you should be able to say here.

271
00:17:08,770 --> 00:17:10,030
Get cool.

272
00:17:11,450 --> 00:17:15,220
And it's going to pool all those changes we just made.

273
00:17:16,200 --> 00:17:17,640
OK, perfect.

274
00:17:18,390 --> 00:17:21,390
So that just pulled in those changes from GitHub.

275
00:17:21,599 --> 00:17:27,869
And then now when you go to your actual Lennart page, you should actually now see a 404 error.

276
00:17:28,710 --> 00:17:32,790
You should definitely not have debug when you actually launch your website on.

277
00:17:32,820 --> 00:17:33,960
So just the heads up there.

278
00:17:34,230 --> 00:17:37,250
You don't want your users to actually get a page that looks like this.

279
00:17:37,260 --> 00:17:40,320
So right now, that's OK for us because we're just testing.

280
00:17:40,350 --> 00:17:45,090
Remember, you can always go to settings and turn debug false, and then we're going to say forward

281
00:17:45,090 --> 00:17:46,440
slash other.

282
00:17:47,360 --> 00:17:48,140
And now I see.

283
00:17:48,170 --> 00:17:48,590
Hello.

284
00:17:48,710 --> 00:17:51,560
But notice the IP here, this is a real live web site.

285
00:17:51,890 --> 00:17:57,980
And as long as I keep this running, anybody can just go to this website for each other and see hello.

286
00:17:58,340 --> 00:18:01,280
And then later on, if you want or to, you can connect this to your own domain name.

287
00:18:01,670 --> 00:18:04,700
But we did essentially most of the heavy lifting so far.

288
00:18:05,030 --> 00:18:09,110
There's still a bunch of little details to discuss, and I'll leave some articles as well as some lecture

289
00:18:09,110 --> 00:18:12,110
links for you in the next article lecture that are really useful.

290
00:18:12,110 --> 00:18:18,380
Things like setting up ignore had actually go through deployment things like remember to set debug equal

291
00:18:18,380 --> 00:18:19,490
to false, that sort of thing.

292
00:18:19,490 --> 00:18:21,970
But really the core of it is done.

293
00:18:21,980 --> 00:18:26,840
We were able to create a Linux server that's a computer somewhere set in Dallas, Texas.

294
00:18:27,110 --> 00:18:34,070
I was able to set up a hub repository and then I was successfully able to link that computer in Dallas

295
00:18:34,070 --> 00:18:38,840
to wherever that hub repo is somewhere hosted by Microsoft and then to my local computer.

296
00:18:39,170 --> 00:18:42,500
So there's essentially when you think about it, three little computers interact with each other.

297
00:18:42,740 --> 00:18:47,210
There's my local computer pushing a GitHub, and then there's a little server pulling from GitHub,

298
00:18:47,510 --> 00:18:52,220
and all that works essentially magically almost to show hello on the internet.

299
00:18:52,520 --> 00:18:54,230
And that is how the web works.

300
00:18:54,530 --> 00:18:54,860
OK.

301
00:18:55,340 --> 00:18:55,720
Thanks.

302
00:18:55,730 --> 00:18:56,750
And I'll see you at the next lecture.

