0:00:00.359,0:00:02.624
Git is an excellent,[br]and industry-recognized
0:00:02.624,0:00:04.229
version-control system.
0:00:04.229,0:00:07.536
GitHub.com, the website,[br]makes that accessible to everyone.
0:00:07.636,0:00:10.178
♪ (whimsical theme music throughout) ♪
0:00:13.163,0:00:16.281
It's easy to think that you could[br]host your Git repositories anywhere.
0:00:16.596,0:00:17.644
There's plenty of services,
0:00:17.644,0:00:19.636
and plenty of tools for you to host them,
0:00:19.636,0:00:21.696
even within your own corporate firewall.
0:00:21.696,0:00:24.853
But there's more than[br]just hosting your code.
0:00:25.345,0:00:27.297
We're talking about changing software,
0:00:27.297,0:00:30.955
and that includes all types,[br]and all facets of collaboration:
0:00:31.397,0:00:35.467
filing issues, organizing repositories[br]so they're easy to find,
0:00:35.787,0:00:38.557
being able to mention[br]the contributors by user name,
0:00:38.860,0:00:42.488
and the ability to have control[br]over the inbound changes
0:00:42.488,0:00:44.866
through the concept[br]that we call pull requests.
0:00:45.259,0:00:48.167
All of these are facilitated[br]by GitHub.com,
0:00:48.167,0:00:52.050
a collaboration platform[br]that also hosts Git repositories.
0:00:54.752,0:00:56.333
Your first interaction with GitHub
0:00:56.333,0:00:58.477
is likely through the Explore page,
0:00:58.477,0:01:00.693
finding a bit of open source[br]that solves a need
0:01:00.693,0:01:02.247
in your current application.
0:01:02.407,0:01:05.598
But soon you'll find[br]you want to file an issue,
0:01:05.598,0:01:07.867
or perhaps even[br]submit a change to a project
0:01:07.867,0:01:10.427
that improves it, or corrects a defect.
0:01:10.830,0:01:12.987
Those are all things[br]that are made possible
0:01:12.987,0:01:15.154
by the GitHub platform.
0:01:15.556,0:01:17.372
You'll find that we have solutions,
0:01:17.372,0:01:19.697
such as an integrated defect tracker,
0:01:19.697,0:01:21.745
and the process of pull requests,
0:01:21.745,0:01:24.064
to which code change can get reviewed,
0:01:24.359,0:01:27.705
commented on, refined,[br]and then finally accepted,
0:01:28.336,0:01:30.553
even for people[br]that are not core contributors
0:01:30.553,0:01:32.218
to the project itself.
0:01:32.218,0:01:35.890
GitHub adds further innovations[br]that allow Git to go places
0:01:35.890,0:01:38.138
that it wouldn't ordinarily[br]have been welcome.
0:01:38.138,0:01:42.088
For example, we have an SvnBridge[br]that allows any Git repository
0:01:42.088,0:01:44.779
to be treated as a subversion repository.
0:01:44.779,0:01:46.904
This often facilitates a slow migration
0:01:46.904,0:01:49.595
of continuous integration infrastructure,
0:01:49.595,0:01:51.496
build scripts, or other automation
0:01:51.496,0:01:53.534
that you've built into[br]your release process.
0:01:56.294,0:01:59.179
GitHub also has the concept[br]of the web flow.
0:01:59.458,0:02:02.617
This brings most of the GitHub operations[br]to the web browser.
0:02:02.967,0:02:05.333
No cloning the repository to disk,
0:02:05.333,0:02:08.112
no loading of Git software[br]on your local machine,
0:02:08.112,0:02:10.114
especially if it's a shared terminal,
0:02:10.114,0:02:12.894
just an editor, with syntax highlighting,
0:02:12.894,0:02:14.261
directly in the browser,
0:02:14.261,0:02:16.610
for any of the files in a repository.
0:02:16.610,0:02:21.353
Rename them, move them,[br]delete them, add brand new files,
0:02:21.353,0:02:23.787
change all kinds of things[br]about the project,
0:02:23.787,0:02:25.595
directly from the browser.
0:02:26.013,0:02:29.017
This means that Git is far more accessible
0:02:29.017,0:02:32.137
to the members of your organization,[br]open source project,
0:02:32.137,0:02:36.309
or company, than would be if[br]they required the desktop tools
0:02:36.309,0:02:38.237
to interact with this repository.
0:02:40.838,0:02:42.455
As documentation is recognized
0:02:42.455,0:02:45.535
to be a critical part[br]of every software project,
0:02:45.535,0:02:49.096
having support for Prose,[br]both in the repositories
0:02:49.096,0:02:52.348
and in the surrounding commentary,[br]is extremely important.
0:02:53.019,0:02:55.565
GitHub supports GitHub-flavored markdown,
0:02:55.565,0:02:58.569
which is an improvement[br]on the core markdown language
0:02:58.569,0:03:01.963
in issues, pull requests,[br]and even in documents
0:03:01.963,0:03:05.615
that are contributed to[br]the core of the repository itself.
0:03:05.909,0:03:09.361
Simply give them a .md extension,[br]put them in the repository
0:03:09.361,0:03:10.964
as you would any other file,
0:03:10.964,0:03:13.022
and you'll see them[br]rendered, with changes,
0:03:13.022,0:03:15.594
as you would expect[br]from a document editor.
0:03:15.594,0:03:17.676
Lines are struck out that are removed,
0:03:17.676,0:03:21.312
lines appropriately show[br]where they've been relocated to,
0:03:21.312,0:03:24.525
and lines that are put in as additions[br]are shown in green.
0:03:29.250,0:03:32.321
It doesn't end with just[br]code and documents, though.
0:03:32.321,0:03:34.562
We're adding support for things like
0:03:34.562,0:03:36.891
3D models, an STL file format,
0:03:36.891,0:03:38.889
and GeoJSON, for maps.
0:03:39.029,0:03:42.817
Those render in the browser,[br]meaning that tools you'd ordinarily
0:03:42.817,0:03:46.079
have to purchase and download[br]to your local machine,
0:03:46.079,0:03:49.268
complexly set up, configure and install,
0:03:49.268,0:03:52.027
now just render directly in the browser,
0:03:52.027,0:03:54.225
making those files all the more accessible
0:03:54.225,0:03:56.646
for anyone visiting that repository.
0:03:56.835,0:03:58.578
GitHub is the unifying platform
0:03:58.578,0:04:00.773
that brings together a web flow
0:04:00.773,0:04:03.230
that would ordinarily[br]require desktop tools,
0:04:03.230,0:04:04.736
both for working with Git,
0:04:04.736,0:04:09.750
as well as rendering these complex[br]markdown, STL, and GeoJSON files
0:04:09.750,0:04:12.521
into an online experience[br]that's easy to use,
0:04:12.521,0:04:15.195
just moments after signing up[br]for an account.
0:04:15.195,0:04:18.537
It means that collaboration[br]happens more frequently,
0:04:18.537,0:04:19.980
with less friction,
0:04:19.980,0:04:21.720
and more contributions get made
0:04:21.720,0:04:24.354
to both open-[br]and closed-source projects
0:04:24.354,0:04:25.870
because of this product.
0:04:27.226,0:04:29.781
Thanks for watching this episode[br]of Git and GitHub Foundations
0:04:29.781,0:04:32.024
on the GitHub.com platform.
0:04:32.328,0:04:34.691
Be sure to subscribe[br]to our episodes over here.
0:04:34.691,0:04:37.869
If you have a followup question,[br]ask that down below.
0:04:37.869,0:04:39.441
We also appreciate comments.
0:04:39.441,0:04:41.433
And if you'd like some related videos,
0:04:41.433,0:04:42.943
those are all right down here,
0:04:42.943,0:04:45.269
including the use of pull requests.