►
From YouTube: Tutorial: GitHub Tools
Description
This tutorial at 12:45-13:45 UTC on 24 March 2019 provides information about using Github for work in the IETF.
A
I'd
like
to
welcome
you
to
the
github
tutorial,
I'm
Carolyn,
Donahue
I'm,
with
the
ietf
education
team,
I'd
like
to
seems
a
bit
echoey.
Doesn't
it?
Oh?
You
can't
hear
me
now.
You
can
hear
me
okay,
folks,
in
the
back,
can
you
hear
me
a
bit
better?
Oh
so
I
just
need
to
be
louder.
Okay,
so
we
can
cut
this
part
out
of
the
video
anyway
I'm
Carolyn
Donahue,
with
the
ietf
education
team,
I'd
like
to
welcome
you
to
the
tutorial
I'd.
Also
like
there's
going
to
be
a
survey
link
in
there.
A
I'd
really
appreciate
any
survey
results
that
you
have
any
any
thoughts
you
have
on
the
tutorial
itself,
additional
tutorials
that
could
possibly
be
offered,
and
the
other
thing
is.
The
edge'
team
is
actually
looking
for
additional
help
and
additional
resources.
So
if
you
are
willing
to
a
help,
provide
any
tutorials
or
be
help
Shepherd
other
tutorials
or
do
other
work
associated
with
the
ietf
like
helping
organize
the
ietf
education
materials
on
the
website
or
on
the
wiki,
there's
just
a
long
list
of
opportunities,
and
we
would
love
to
have
you
with
that.
B
B
Right
just
have
to
eat
the
mic,
so
my
name
is
Mike
Bishop.
Hopefully
those
closed
captions
are
not
too
distracting
and
might
be
helpful
for
someone
and
this
transcribes
anything
like
my
name.
We
can
laugh
at
it
we're
talking
about
the
tools
that
are
available
for
using
markdown
and
github
to
keep
track
of
your
internet
drafts,
so
we'll
be
looking
at
basic
concepts.
B
But
if
I
can
just
get
a
show
of
hands
how
many
people
are
already
using
markdown
to
write
their
drafts,
fair
number
and
who's
familiar
with
git,
whether
an
ID
context
or
not,
most
people
I
will
skim
that
section
very
quickly
then,
and
do
use
github
already
for
things
similar
number.
Okay,
so
we'll
focus
mostly
on
how
to
get
things
set
up
and
not
as
much
on
the
tools
themselves.
But
I
will
still
take
a
quick
look
around
how
the
different
working
groups
are
using
things.
B
So
things
we're
not
focusing
on
the
XML
RFC
v3,
not
diving
into
that
very
much.
There's
an
excellent
talk
about
that
previous
time
slot.
But
most
of
this
is
going
to
output,
v2
for
the
time
being
and
you're
also
shielded
from
the
exact
version
of
the
output.
I.
Don't
want
to
get
into
the
details
of
whether
working
groups
should
use
github.
There's
a
working
group
later
this
week
on
the
best
practice
as
if
they're
going
to-
and
you
know
the
pronunciation
of
the
boss.
B
That
did
not
intend
to
form
a
working
group
and
did
let's
leave
it
alone.
So
I
think
the
best
tagline
for
using
markdown.
It
is
certainly
less
cryptic
than
XML.
It's
intended
to
be
something
that
somebody
can
read
through
and
it's
easily
consumable
in
the
base
text
format.
But
then
we
have
tools
that
can
take
that
text
format
and
spit
out
nice.
Easy
work
with
HTML,
that's
convenient
for
reading
and
the
text
format
that
we
all
know
and
perhaps
love
the
frontmatter
helps
generate
all
the
boilerplate.
B
B
There
are
a
couple
different
ways
that
you
can
do
references
this
was
alluded
to
in
the
previous
session.
You
can
be
very
explicit
and
write
it
out
yourself,
and
this
is
Gamal.
As
one
comment
noted,
you
have
to
get
the
spacing
exactly
right
if
you're
going
to
do
it
that
way,
but
each
document
has
a
normative
and
an
informative
section
at
the
beginning,
or
you
can
explicitly
list
out
the
documents
and
just
let
it
pull
from
the
database
of
all
the
RFC's
all
the
internet
drafts.
Yes,.
B
C
C
B
B
So
you
can
take
the
you
can
put
the
number
of
the
RFC
and
just
let
it
pull
in
and
populate
that
from
the
online
database
or
what
you
can
do
is
just
do
the
inline
references
and
not
even
mention
anything
up
front,
but
when
you
need
to
make
a
reference
to
a
document,
then
you
just
put
the
two
curly
braces
with
normative
or
informative
exclamation
mark
for
a
normative
question
mark
for
an
informative
reference.
The
other
nice
thing
about
that
is
that
you
can
give
a
different
name
to
that
reference.
B
So
if
I
want
to
call
RFC
7540
HTTP
to
instead
of
always
referencing
by
number
I,
think
that
makes
for
a
nicer
output
and
all
of
these
things
are
supported
by
the
XML,
but
you
can
use
Graham
down
and
markdown
formats
to
lead
into
it
so
just
skimming
through
here
with
in
the
middle
on
the
back
sections,
you
used
the
hashes
to
do
level
well
top
levels.
I
can
love
all
third
level
headings.
If
you
go
past
third
level,
you
can
get
really
deep,
but
anything
below
third
level
doesn't
show
in
the
table
of
contents.
B
B
So
the
idea
is,
we
have
these
tools
that
let
you
start
with
markdown
and
use
cramdown
or
in
mark
or
some
other
options
to
turn
into
XML,
and
then
you
can
take
XML
tar
FC
that
can
give
you
the
HTML
output,
the
text
output.
You
can
use
PostScript
to
turn
text
into
PDF
and
those
are
all
great
as
standalone
tools
that
you
can
use.
B
B
B
B
So
I'll
try
and
commit
that,
and
it's
good
to
tell
me
that
I
actually
made
a
reference
to
69
1999
and
it
will
refuse
to.
Let
me
commit
it
because
I'm
making
a
reference
to
an
RFC
that
doesn't
exist.
So
one
nice
feature
here
is
that
it
will
actually
sanity
check
the
document
when
you
try
and
commit
it.
B
So
I'll
fix
that
and
go
back
and
now,
if
I
commit
it,
it
did
the
repo
it's
there
and
so
that
that
lets
you
get
different
outputs
and
you
have
the
check
before
you
go
in
other
things
that
you
can
do
just
from
the
local
repo.
If
I
tell
it
make
diff,
then
if
I
had
RFC
DIF
installed
sorry,
then
it
would
build
the
output
of
the
comparison.
B
B
B
B
B
B
But
the
process
when
you
start
hooking
github
in
along
with
circle
CI,
that's
when
you
get
really
nice
automation
around
all
of
these
things.
So
you
have
your
local
copy
of
the
ID
template
and
you're
making
edits
and
each
time
you
can
build
it
it'll
do
a
sanity
check
and
produce
the
local
HTML
and
text
that
you're
interested
in
when
you're
ready
to
push
that
to
github
fine
other
people
can
see
the
markdown
to
you
just
that
you've
made,
but
github
enables
change
traders,
so
external
tools
can
observe
when
something
changes
in
the
repository.
B
And
so
if
you
set
up
a
trigger
with
circle,
CI
or
Travis,
which
are
both
supported,
CI
mechanisms,
then
you
can
have
them
run
their
own
container
with
a
copy
of
the
ID
template
and
what
they
will
build.
They'll
take
the
documents,
push
it
back
to
the
gh-pages
branch
and
that's
how
you
get
that
editors
copy
there.
B
On
github
il
and
the
name
of
the
repo
now
quick,
actually
hasn't
set
up
to
redirect
to
a
particular
domain
name,
but
that
the
generic
form
is
your
github
username
dot,
github
on
dot,
io
/,
repo
name
and
the
IV
template
will
build
for
the
master
branch
at
the
top
and
then
for
every
branch.
It
will
show
you
all
the
built
documents
of
the
current
state
of
that
branch.
B
The
other
thing
that
can
happen
on
CI
is
that
can
respond
to
tags
and
the
repo.
So
if
you
tag
a
particular
document
as
being
on
draft
version,
zero
zeros
you're
a
1.
Whatever
your
next
version
is,
then
it
will
actually
take
the
document
once
it's
built
and
it
can
upload
it
to
the
data
track
and
it
can
upload
it
to
the
data
tracker
and
so
your
actual
workflow,
when
you're
ready
to
submit
your
document,
is
simply
build.
B
It
tag
it
and
push
the
tags,
and
then
you
get
the
email
that
asks
whether
you
in
fact
were
the
one
who
submitted
that
document
and
if
you
want
to
approve
it
for
publication.
So
this
can
help
take
out
a
lot
of
your
interaction
with
the
data
tracker
and
just
get
the
publication
directly
from
the
command
line.
Where
you're
already
working
on
the
document.
B
So
when
you're
trying
to
set
up
a
repo
from
scratch,
a
lot
of
this
is
really
convenient
once
you
get
it
running,
but
the
difficult
piece
is
getting
bootstrapped
trying
to
take
an
empty
repo
and
get
it
set
up.
The
the
ID
template
setup
script
is
quite
good
about
telling
you,
when
you
haven't
done
something
correctly,
but
when
I
was
getting
started
with
it,
I
would
often
just
do
a
loop
of
run
set
up.
It'll
tell
me:
oh,
you
haven't
done
this
yet
and
then
I
need
to
go
fix.
It
fix
it.
B
There
are
some
setup
scripts
that
rich
saul's
has
written
that
are
intended
to
help
help
you
get
the
repo
setup
in
the
first
place,
so
it
will
create
an
account
on
github
for
a
working
group,
and
it
will
let
a
working
group
or
an
individual
with
an
existing
account,
set
up
a
new
repo,
but
it
still
comes
out
as
an
empty
repo.
You
can
upload
a
upload,
a
template
to
it.
B
B
C
B
B
Working
group-
in
this
case
it's
just
the
repository
for
the
document,
so
one
of
the
things
that
we'll
be
discussing
in
the
get
working
group
for
from
best
practices
is
whether
you
should
have
a
single
repo
for
all.
The
documents
like
we've,
mostly
done
with
quick
or
whether
it's
better
to
have
individual
repos
per
document.
I
have
mostly
done
one
large
repo,
but
I
know.
The
tls
working
group
has
a
separate
repository
for
document
and
either
one
works
functionally.
It's
a
quick
one.
B
B
B
You
run
make
and
point
it
to
that
setup,
location
and
then
what
the
template
is
going
to
do
is
first
check
that
your
draft
actually
is
present
and
billed
and
has
already
been
pushed
up
to
github.
So
it
wants
to
make
sure
you
have
a
good
link
and
then
it
will
start
populating
a
readme
file
that
contains
the
name
of
your
draft
and
tells
people
what
working
group
its
affiliated
with
tells
them.
The
discussion
should
happen
on
the
reading
on
the
mailing
list.
It
populates
a
contributing.
B
B
So,
at
the
end
of
that
setup,
if
we
look
at
the
commits,
we
see
that
the
setup
script
added
a
new
commit
that
creates
all
these
files
and
added
a
gh-pages
branch,
which
is
where
the
built
documents
created
by
the
change
by
the
CI.
The
continuous
integration
are
going
to
live.
But
if
we
go
back
to
our
github
repo
all
this
lives.
B
C
B
B
Now
we
should
be
able
to
see,
yes,
it
does
run,
and
so
what
this
is
gonna
do
is
every
time
you
push
to
the
repo,
it
will
build
the
documents
and
if
the
documents
don't
build
correctly
than
circle
will
send
you
an
e-mail.
So
that
is
a
convenient
way
to
keep
keep
track,
particularly
if
you
have
lots
of
people
collaborating
on
a
working
group
repo
that
if
somebody
breaks
the
build
you
find
out
about
it.
B
B
B
B
So
that
in
the
settings
for
each
project
that
goes
in
as
an
environment
variable
now,
since
I
already
have
it
set
up,
I
will
go
to
a
different
repo
and
copy
it
over.
The
name
of
the
name
of
the
variable
is
gh
token,
and
you
paste
end
the
token
that
you
got
from
github
the
other.
The
other
place
where
those
tokens
are
useful
is
you'll
need
them
at
the
command
line
to
interact
with
github.
B
B
B
So
if
you
look
at
the
commit
history,
first
thing
it's
going
to
show:
you
is
with
each
commit,
so
you
know
when
CI
tries
to
build
it,
even
if
it
doesn't
have
the
toca
and
it
will
report
back
to
github
whether
that
version
in
that
commit
was
able
to
build
successfully.
So
you
can
easily
see
this
one
it
wasn't
able
to
build.
B
One
thing
to
note
is
that,
in
order
for
circle
to
do
this
and
do
the
auto
submission
to
the
data
tracker,
it
has
to
be
an
annotated
tag,
which
means
you
have
to
give
it
a
message
to
go
with
the
tag,
but
the
actual
content
of
that
message
doesn't
matter
at
all,
so
you
have
to
pass
something.
It
will
fail
if
you
don't,
or
rather
it
will
bring
up
the
editor
and
ask
you
to
type
it.
B
That
assumes
that
I
guessed
right
on
the
fact
version
that
in
the
data
tracker,
doesn't
reject
it
for
me,
so
the
last
step
is
part
of
the
build
process.
You
can
see
the
upload
to
data
tracker
and
it's
looking
for
a
200
okay
coming
back
and
if
it
doesn't
get
a
success
on
the
submission,
then
what
it
will
do
is
email
me
that
the
build
failed
on
that
tag
to
say
it
couldn't
couldn't
submit
to
the
data
tracker.
You
may
need
to
do
that
manually.
B
So,
to
recap:
how
we
do
that
setup?
First,
you
need
all
the
local
tools
you
have
to
have
get
and
make
for
the
template
to
work.
Xml
to
RFC
depends
on
Python
from
down
RFC
two-six
two-nine
requires
ruby
and
those
can
be
installed
with
their
appropriate
handlers.
Actually
apt
is
able
to
take
all
of
these
directly.
So
if
you
just
go
and
ask
for
those
four,
you
can
get
more
current
versions
of
XML
RFC
off
of
the
PI
pi
installer
and
cramdown
can
come
off
of
rubygems
on
the
cloud
side.
B
You
need
to
create
your
repo
either
with
the
script
or
manually,
and
you
need
access
tokens
to
give
to
circle
and
then
on
circle.
You
need
to
set
it
up
to
follow
the
repo
and
you
need
to
have
the
access
token
in
the
environment
variables
if
you
want
it
to
actually
populate
back
to
the
repo
on
your
path,
so
full
disclosure,
while
I,
have
made
some
contributions
to
the
IV
template
I'm,
not
the
one
who
wrote
it.
That
would
be
Martin
Thompson.
B
So
if
this
looks
like
a
tool
that
will
make
authoring
internet
graphs
easier
for
you,
I
would
say,
buy
him
a
drink.
I
have
found
it
to
be
a
lot
simpler
than
trying
to
mess
with
the
XML,
which
I
did
at
the
beginning
of
my
time
in
the
IETF.
But
at
this
point,
I
am
marked
down
for
basically
everything
mostly
for
reviewing
the
slides.
B
Later
I've
got
some
basic
like
what
commands
you
would
use
and
get
for
different
tasks,
and
that
is
the
end
of
what
I've
written
we're
a
lot
we're
way
under
time,
because
I
skimmed,
through
the
things
that
look
like
most
people,
were
you're
with.
But
if
there's
anything
that
you
want
me
to
go
back
and
go
into
more
detail
on
I'm
happy
to
do
that
happy
to
stick
around
the
Minister
questions.
B
B
We
know
we
have
experienced
that
circle
is
more
reliable
for
building
things
and
also
it
passes
more
information
into
the
environment
of
the
build
that
the
template
is
able
to
pull
on.
If
you
open
up
some
of
the
make
file
scripts
they're
part
of
the
template,
you
can
see
comments
like
if
this
is
Travis.
This
is
not
populated.
We
have
to
attempt
to
guess
it.
D
D
Actually,
on
that,
I
could
continue
yeah,
please
the
the
reason
I
asked
about
github
and
I
mentioned
it
lab
as
well
as
because
a
good
lab
it
could
be
self
hosted
and
there
wouldn't
be
on
you
know,
startups
going
out
of
business
or
things
like
that.
I
mean
granted
Microsoft
owning
that
how
this
pretty
reassuring,
I
guess
in
the
long
run,
but
for
some
of
the
other
tools
that
are
related
to
it.
It
might
make
sense
for
by
Jeff
tools
to
also
be
open-source
and
be
able
to
be
self
hosted
by
by
by
authors,
yeah.
B
So
a
lot
of
that
discussion
is
likely
to
happen
in
the
get
working
group
later
this
week.
Their
Charter
is
to
come
up
with
best
practices
for
get
git
and
github
use
at
the
IETF
we're
chartered
to
focus
specifically
on
github,
but
the
question
of
whether
any
of
the
tools
need
to
be
self
hosted
and
managed
by
the
IETF.
Even
if
there
are
third-party
equivalents
is
definitely
going
to
come
up.