Skip to content

Commit

Permalink
rename for software engineering hands on
Browse files Browse the repository at this point in the history
  • Loading branch information
gonsie committed Jul 10, 2024
1 parent 88bfb63 commit 7241db2
Show file tree
Hide file tree
Showing 11 changed files with 121 additions and 87 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -29,31 +29,55 @@
<div class="reveal">
<div class="slides">
<section id="sec-title-slide"><h1 class="title">Introduction to Git</h1><p class="subtitle"></p>
<h2 class="author">Elsa Gonsiorowski</h2><h2 class="date">July 12, 2023</h2><p class="date">Created: 2023-07-11 Tue 10:33</p>
<h2 class="author">Elsa Gonsiorowski</h2><h2 class="date">July 11, 2024</h2><p class="date">Created: 2024-07-08 Mon 16:49</p>
</section>
<section id="sec-table-of-contents"><div id="table-of-contents" role="doc-toc">
<h2>Table of Contents</h2>
<div id="text-table-of-contents" role="doc-toc">
<ul>
<li><a href="#/slide-org6c27478">1. Introduction</a></li>
<li><a href="#/slide-org16342ec">2. What is Version Control</a></li>
<li><a href="#/slide-org33dbc49">3. Configuring Git</a></li>
<li><a href="#/slide-org76ca491">4. Networking Activity</a></li>
<li><a href="#/slide-org0ad3a97">5. Continue Your Journey</a></li>
<li><a href="#/slide-orgb397c30">6. Credits</a></li>
<li><a href="#/slide-org2ad2c04">1. Mindset</a></li>
<li><a href="#/slide-orga7c2a25">2. Introduction</a></li>
<li><a href="#/slide-org74737ab">3. What is Version Control</a></li>
<li><a href="#/slide-orgceaa3b2">4. Configuring Git</a></li>
<li><a href="#/slide-orgaf768da">5. Networking Activity</a></li>
<li><a href="#/slide-orge7d4879">6. Continue Your Journey</a></li>
<li><a href="#/slide-org134feac">7. Credits</a></li>
</ul>
</div>
</div>
</section>

<section>
<section id="slide-org6c27478">
<h2 id="org6c27478"><span class="section-number-2">1.</span> Introduction</h2>
<section id="slide-org2ad2c04">
<h2 id="org2ad2c04"><span class="section-number-2">1.</span> Mindset</h2>
<div class="outline-text-2" id="text-1">
</div>
</section>
<section id="slide-orgfe9f683">
<h3 id="orgfe9f683">Course Goals</h3>
<section id="slide-org4f196dd">
<h3 id="org4f196dd">Software Engineering</h3>

<div id="org561d5cd" class="figure">
<p><img src="images/margaret-hamilton.jpg" alt="margaret-hamilton.jpg" height="50%" text-align="left" />
</p>
</div>
</section>
<section id="slide-org0f0b395">
<h3 id="org0f0b395">Tools of the Trade</h3>
<ul>
<li>work with a repository on your computer</li>
<li></li>

</ul>
</section>
</section>
<section>
<section id="slide-orga7c2a25">
<h2 id="orga7c2a25"><span class="section-number-2">2.</span> Introduction</h2>
<div class="outline-text-2" id="text-2">
</div>
</section>
<section id="slide-org2eb2400">
<h3 id="org2eb2400">Course Goals</h3>
<ul>
<li>What is version control and why is it important</li>
<li>Configuring git, using <code>git config</code></li>
Expand All @@ -65,16 +89,16 @@ <h3 id="orgfe9f683">Course Goals</h3>

</ul>
</section>
<section id="slide-org3c402ad">
<h3 id="org3c402ad">Poll</h3>
<section id="slide-org5a5d1c4">
<h3 id="org5a5d1c4">Poll</h3>
<ul>
<li class="fragment appear">How many folks have used git <i>at all</i> before?</li>
<li class="fragment appear">How many folks have a GitHub account?</li>

</ul>
</section>
<section id="slide-org7ff2acb">
<h3 id="org7ff2acb">Git Caveats</h3>
<section id="slide-org27ed525">
<h3 id="org27ed525">Git Caveats</h3>
<ul>
<li>Git is powerful</li>
<li>Git has a terrible user design</li>
Expand All @@ -83,8 +107,8 @@ <h3 id="org7ff2acb">Git Caveats</h3>

</ul>
</section>
<section id="slide-org9e840b0">
<h3 id="org9e840b0">Setup</h3>
<section id="slide-org93f1a64">
<h3 id="org93f1a64">Setup</h3>
<ul>
<li>This is a 2 hour interactive session, there is so much more to learn!</li>
<li>Please type along!</li>
Expand All @@ -101,40 +125,40 @@ <h3 id="org9e840b0">Setup</h3>
</section>
</section>
<section>
<section id="slide-org16342ec">
<h2 id="org16342ec"><span class="section-number-2">2.</span> What is Version Control</h2>
<section id="slide-org74737ab">
<h2 id="org74737ab"><span class="section-number-2">3.</span> What is Version Control</h2>
<p>
<a href="https://swcarpentry.github.io/git-novice/01-basics.html">SC: Automated Version Control</a>
</p>
</section>
<section id="slide-orgebb02a9">
<h3 id="orgebb02a9">VC Through Naming</h3>
<section id="slide-org8379e6e">
<h3 id="org8379e6e">VC Through Naming</h3>

<div id="org76ca640" class="figure">
<div id="org3c983f7" class="figure">
<p><img src="images/phd101212s.png" alt="phd101212s.png" />
</p>
</div>
</section>
<section id="slide-org15288bc">
<h3 id="org15288bc">VC in Parallel</h3>
<section id="slide-org6ab66da">
<h3 id="org6ab66da">VC in Parallel</h3>

<div id="orgd8c1854" class="figure">
<div id="orgf9cd99f" class="figure">
<p><img src="images/versions-merge.drawio.svg" alt="versions-merge.drawio.svg" class="org-svg" />
</p>
</div>
</section>
<section id="slide-org0fdd348">
<h3 id="org0fdd348">Key Features</h3>
<section id="slide-orgc1dc63f">
<h3 id="orgc1dc63f">Key Features</h3>
<ul>
<li>Version control is unlimited undo (but not at a granular level)</li>
<li>Version Control allows many people to work in parallel</li>

</ul>
</section>
<section id="slide-orgb11ad72">
<h3 id="orgb11ad72">Other VC Systems</h3>
<section id="slide-org958dc49">
<h3 id="org958dc49">Other VC Systems</h3>

<div id="org09cf37f" class="figure">
<div id="org17e19c5" class="figure">
<p><img src="images/snapshots.png" alt="snapshots.png" />
</p>
</div>
Expand All @@ -143,10 +167,10 @@ <h3 id="orgb11ad72">Other VC Systems</h3>
<i>from <a href="https://git-scm.com/book/en/v2/Getting-Started-What-is-Git%3F"><span class="underline">Pro Git</span> by Scott Chacon and Ben Straub</a></i>
</p>
</section>
<section id="slide-org27d7abc">
<h3 id="org27d7abc">How Git Works</h3>
<section id="slide-org87518a0">
<h3 id="org87518a0">How Git Works</h3>

<div id="orgb23f9b1" class="figure">
<div id="org204cbeb" class="figure">
<p><img src="images/deltas.png" alt="deltas.png" />
</p>
</div>
Expand All @@ -155,36 +179,35 @@ <h3 id="org27d7abc">How Git Works</h3>
<i>from <a href="https://git-scm.com/book/en/v2/Getting-Started-What-is-Git%3F"><span class="underline">Pro Git</span> by Scott Chacon and Ben Straub</a></i>
</p>
</section>
<section id="slide-org79c76bc">
<h3 id="org79c76bc">Key Git Feature</h3>
<ul>
<li>The <i>deltas</i> are important</li>
<li>Represent a distinct set of changes</li>
<li>Accompanied by a <i>commit message</i></li>
<section id="slide-orgb509711">
<h3 id="orgb509711">Git Commit</h3>

</ul>
<div id="orge218a41" class="figure">
<p><img src="images/diff-terminal.png" alt="diff-terminal.png" />
</p>
</div>
</section>
</section>
<section>
<section id="slide-org33dbc49">
<h2 id="org33dbc49"><span class="section-number-2">3.</span> Configuring Git</h2>
<section id="slide-orgceaa3b2">
<h2 id="orgceaa3b2"><span class="section-number-2">4.</span> Configuring Git</h2>
<p>
<a href="https://swcarpentry.github.io/git-novice/02-setup.html">SC: Setting Up Git</a>
</p>
</section>
<section id="slide-orgf829c9b">
<h3 id="orgf829c9b">Configuring from the Command Line</h3>
<section id="slide-org8bbbcb5">
<h3 id="org8bbbcb5">Configuring from the Command Line</h3>
<div class="org-src-container">

<pre class="src src-shell" ><code trim>git config --global user.name <span style="color: #E1404A;">"Ada Lovelace"</span>
git config --global user.email <span style="color: #E1404A;">"ada@lovelace.io"</span>
git config --global core.editor <span style="color: #E1404A;">"emacs -nw"</span>
<pre class="src src-shell" ><code trim>git config --global user.name "Ada Lovelace"
git config --global user.email "ada@lovelace.io"
git config --global core.editor "emacs -nw"
git config --global init.defaultBranch main
</code></pre>
</div>
</section>
<section id="slide-org430c1de">
<h3 id="org430c1de">Help with Config</h3>
<section id="slide-org1a167c4">
<h3 id="org1a167c4">Help with Config</h3>
<div class="org-src-container">

<pre class="src src-shell" ><code trim>git config --list
Expand All @@ -193,8 +216,8 @@ <h3 id="org430c1de">Help with Config</h3>
</code></pre>
</div>
</section>
<section id="slide-orgfa249af">
<h3 id="orgfa249af">Current Config <code>~/.gitconfig</code></h3>
<section id="slide-orga791106">
<h3 id="orga791106">Current Config <code>~/.gitconfig</code></h3>
<pre class="example" >
[core]
editor = emacs -nw
Expand All @@ -207,22 +230,22 @@ <h3 id="orgfa249af">Current Config <code>~/.gitconfig</code></h3>
</section>
</section>
<section>
<section id="slide-org76ca491">
<h2 id="org76ca491"><span class="section-number-2">4.</span> Networking Activity</h2>
<div class="outline-text-2" id="text-4">
<section id="slide-orgaf768da">
<h2 id="orgaf768da"><span class="section-number-2">5.</span> Networking Activity</h2>
<div class="outline-text-2" id="text-5">
</div>
</section>
<section id="slide-org7a93cd3">
<h3 id="org7a93cd3">Working Example</h3>
<section id="slide-orgb92e3f8">
<h3 id="orgb92e3f8">Working Example</h3>
<ul>
<li>We are going to create a "database" or <i>repository</i> of people you've met at the summer school</li>
<li>We will track changes using git and keep it all on GitHub</li>
<li>The following slides are simple instructions that you need to work through, follow along with me!</li>

</ul>
</section>
<section id="slide-org5df673c">
<h3 id="org5df673c"><b>Activity: Make Friends</b></h3>
<section id="slide-org2da6558">
<h3 id="org2da6558"><b>Activity: Make Friends</b></h3>
<ul>
<li class="fragment appear">Create a new file to track your friends, including first name and institution
<ul>
Expand All @@ -241,8 +264,8 @@ <h3 id="org5df673c"><b>Activity: Make Friends</b></h3>

</ul>
</section>
<section id="slide-orge3f5166">
<h3 id="orge3f5166"><b>Activity: Friends Challenge</b></h3>
<section id="slide-org81706fe">
<h3 id="org81706fe"><b>Activity: Friends Challenge</b></h3>
<ul>
<li>Open <i>just</i> your text editor on your laptop</li>
<li>Swap laptops with a neighbor</li>
Expand All @@ -252,23 +275,31 @@ <h3 id="orge3f5166"><b>Activity: Friends Challenge</b></h3>

</ul>
</section>
<section id="slide-org1a53efd">
<h3 id="org1a53efd">Watch me!</h3>
<section id="slide-orgbcf8acf">
<h3 id="orgbcf8acf">Watch me!</h3>
<ul>
<li>Figure out what has changed</li>
<li>Commit changes in separate hunks</li>

</ul>
</section>
<section id="slide-orgcaa9717">
<h3 id="orgcaa9717"><b>Activity: Extra Time</b></h3>
<ul>
<li>Find someone's repo on GitHub</li>
<li>Make a change to their friends file</li>

</ul>
</section>
</section>
<section>
<section id="slide-org0ad3a97">
<h2 id="org0ad3a97"><span class="section-number-2">5.</span> Continue Your Journey</h2>
<div class="outline-text-2" id="text-5">
<section id="slide-orge7d4879">
<h2 id="orge7d4879"><span class="section-number-2">6.</span> Continue Your Journey</h2>
<div class="outline-text-2" id="text-6">
</div>
</section>
<section id="slide-orge68c0e5">
<h3 id="orge68c0e5">This is just the beginning</h3>
<section id="slide-org689a8f5">
<h3 id="org689a8f5">This is just the beginning</h3>
<ul>
<li>More things to learn:
<ul>
Expand All @@ -280,17 +311,17 @@ <h3 id="orge68c0e5">This is just the beginning</h3>

</ul>
</section>
<section id="slide-orgc1d331c">
<h3 id="orgc1d331c">Git Hosting Services</h3>
<section id="slide-org7a688da">
<h3 id="org7a688da">Git Hosting Services</h3>
<ul>
<li>GitHub, GitLab, BitBucket, and many more</li>
<li>Additional concepts: permissions, "pull request" or "merge request"</li>
<li>Additional tools: issue tracking, wiki, web/documentation hosting, CI/CD</li>

</ul>
</section>
<section id="slide-org1242f58">
<h3 id="org1242f58">Get Social</h3>
<section id="slide-orgddaec91">
<h3 id="orgddaec91">Get Social</h3>
<ul>
<li>Sign up for GitHub
<ul>
Expand All @@ -303,17 +334,17 @@ <h3 id="org1242f58">Get Social</h3>

</ul>
</section>
<section id="slide-org6e64d60">
<h3 id="org6e64d60"><b>Activity: GitHub Secret</b></h3>
<section id="slide-orga8decf3">
<h3 id="orga8decf3"><b>Activity: GitHub Secret</b></h3>
<ul>
<li>Create a new repo called <i>username</i></li>
<li>Add a <code>README.md</code> file</li>
<li>Visit your GitHub Profile (<code>github.com/username</code>)</li>

</ul>
</section>
<section id="slide-org9c41803">
<h3 id="org9c41803">Git Lessons</h3>
<section id="slide-org9019358">
<h3 id="org9019358">Git Lessons</h3>
<ul>
<li><a href="https://swcarpentry.github.io/git-novice/">Software Carpentry: Git Novice</a></li>
<li><a href="https://training.github.com">Git Cheetsheet</a></li>
Expand All @@ -322,8 +353,8 @@ <h3 id="org9c41803">Git Lessons</h3>

</ul>
</section>
<section id="slide-org118e91d">
<h3 id="org118e91d">Advanced Git Resources</h3>
<section id="slide-orgebb0852">
<h3 id="orgebb0852">Advanced Git Resources</h3>
<ul>
<li><a href="https://skills.github.com">GitHub Skills</a></li>
<li><a href="https://learngitbranching.js.org">Learn Git Branching Interactively</a></li>
Expand All @@ -333,8 +364,8 @@ <h3 id="org118e91d">Advanced Git Resources</h3>
</section>
</section>
<section>
<section id="slide-orgb397c30">
<h2 id="orgb397c30"><span class="section-number-2">6.</span> Credits</h2>
<section id="slide-org134feac">
<h2 id="org134feac"><span class="section-number-2">7.</span> Credits</h2>
<p>
Content inspired by <a href="https://swcarpentry.github.io/git-novice/index.html">Software Carpentry's Version Control with Git</a> course.
</p>
Expand Down
Loading

0 comments on commit 7241db2

Please sign in to comment.