Skip to content

Commit 01c0513

Browse files
author
Matthew McCullough
committed
Merge pull request #208 from github/section-headers
Tune up opening slides to each module of class
2 parents f54b410 + 9428541 commit 01c0513

File tree

1 file changed

+73
-11
lines changed

1 file changed

+73
-11
lines changed

advanced/beta.md

Lines changed: 73 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,22 @@ This curriculum will be your companion to the GitHub Advanced class taught by th
88

99
{% capture slide %}
1010
### Understanding Git
11+
* Based on classic graph and hashing concepts
12+
* SHA1 as the core hashing algorithm
13+
* Linked-list-like data structure
14+
* Built-in data integrity
1115
{% endcapture %}
1216
{% include slide-section %}
1317

14-
* Directed acyclic graph
18+
{% capture slide %}
19+
#### Data structure
20+
* Directed acyclic graph of commits
21+
* Commit object
1522
* Tree object
1623
* Blob object
17-
* SHA1
24+
* SHA1 hash of commit, tree, blob
25+
{% endcapture %}
26+
{% include slide-section %}
1827

1928
{% capture svg_path %}../assets/diagrams/commit-data-structure.svg{% endcapture %}
2029
{% include svg %}
@@ -42,7 +51,7 @@ HEAD@{today}
4251

4352

4453
{% capture slide %}
45-
### Common branching strategies
54+
### Branching strategies
4655
{% endcapture %}
4756
{% include slide-section %}
4857

@@ -103,8 +112,13 @@ These are called Branching Strategies, but are just as easily called *Team Colla
103112
* Continuous integration
104113

105114
#### Further reading
106-
* [Validated Build Promotions with Git, GitHub, and Jenkins](http://www.youtube.com/watch?v=Gd8OfAmKkMQ)
115+
[Validated Build Promotions with Git, GitHub, and Jenkins](http://www.youtube.com/watch?v=Gd8OfAmKkMQ)
107116

117+
<iframe width="640" height="480" src="//www.youtube-nocookie.com/embed/Gd8OfAmKkMQ?rel=0" frameborder="0" allowfullscreen></iframe>
118+
119+
[Git and GitHub Workflows at the Utah JUG](https://speakerdeck.com/matthewmccullough/git-and-github-workflows-at-the-utah-jug)
120+
121+
<script async class="speakerdeck-embed" data-id="111dc3201094013231b066d414c0f9a8" data-ratio="1.77777777777778" src="//speakerdeck.com/assets/embed.js"></script>
108122

109123
{% capture slide %}
110124
### Git-core GUIs
@@ -805,26 +819,74 @@ A sample `.gitconfig` file:
805819
{% endcapture %}
806820
{% include slide-section %}
807821

808-
#### Summary
822+
{% capture slide %}
823+
#### What are refspecs?
809824
* Specification for retrieval and pushing
810825
* Implied on fetch, pull, and push
811826
* Altered by option switches like `--tags`
812827
* Stored in `.git/config`
813828
* Ability to retrieve Pull Request branches
829+
{% endcapture %}
830+
{% include slide-section %}
831+
832+
{% capture slide %}
833+
#### Refspec examples
814834

815835
```
836+
# Source and destination refspecs
816837
$ git fetch [repo-url] [source]:[destination]
838+
839+
$ git fetch [repo-url] master
840+
* branch master -> FETCH_HEAD
841+
842+
$ git fetch origin refs/pull/1/head
843+
* branch refs/pull/1/head -> FETCH_HEAD
844+
```
845+
{% endcapture %}
846+
{% include slide-section %}
847+
848+
{% capture slide %}
849+
#### Refspec to retrieve pull requests
850+
851+
```
817852
$ git config --add remote.[upstream].fetch "+refs/pull/*/head:refs/remotes/[upstream]/pull/*"
818853
```
854+
{% endcapture %}
855+
{% include slide-section %}
856+
857+
858+
{% capture slide %}
859+
#### Git Refspec Documentation
860+
* [Git `rev-parse` command and reference specifications](https://www.kernel.org/pub/software/scm/git/docs/git-rev-parse.html)
861+
* [ProGit book chapter on refspecs](http://git-scm.com/book/en/Git-Internals-The-Refspec)
862+
{% endcapture %}
863+
{% include slide-section %}
864+
865+
819866

820867
{% capture slide %}
821868
### Additional Resources
869+
This course covers many advanced uses of Git and GitHub, and yet there is still more to explore. We've included some of the most useful resources for our students with insatiable appetites.
870+
{% endcapture %}
871+
{% include slide-section %}
872+
873+
{% capture slide %}
874+
#### Advanced Git Videos
875+
* [Advanced Git, presented at JavaZone](http://vimeo.com/49444883)
876+
* [Mastering Advanced Git, O'Reilly video series](http://bit.ly/ogitvid2)
877+
* [The Fringes of Git, Git internals video](http://www.youtube.com/watch?v=qh-R0-7Ii_U)
878+
{% endcapture %}
879+
{% include slide-section %}
880+
881+
{% capture slide %}
882+
#### Tools
883+
* [`gh`, GitHub command line utility](https://github.com/jingweno/gh)
884+
* [oh-my-zsh, ZSH plugin framework](https://github.com/robbyrussell/oh-my-zsh)
822885
{% endcapture %}
823886
{% include slide-section %}
824887

825-
* [Advanced Git presented at JavaZone](http://vimeo.com/49444883)
826-
* [Master Advanced Git Video Series](http://bit.ly/ogitvid2)
827-
* [The Fringes of Git](http://www.youtube.com/watch?v=qh-R0-7Ii_U)
828-
* [Git Notes & GitHub](http://vimeo.com/34273537)
829-
* [GitHub Command line client](https://github.com/jingweno/gh)
830-
* [Oh-my-zsh ZSH configuration](https://github.com/robbyrussell/oh-my-zsh)
888+
{% capture slide %}
889+
#### Git Documentation
890+
* [Git `man` page command documentation](https://www.kernel.org/pub/software/scm/git/docs/git.html)
891+
{% endcapture %}
892+
{% include slide-section %}

0 commit comments

Comments
 (0)