Public foundations class notes on 2013-10-30
authorMatthew McCullough <matthew@github.com>
Thu, 31 Oct 2013 03:54:39 +0000 (21:54 -0600)
committerMatthew McCullough <matthew@github.com>
Thu, 31 Oct 2013 03:54:39 +0000 (21:54 -0600)
classnotes/2013-10-30-public-git-foundations-class.md [new file with mode: 0644]

diff --git a/classnotes/2013-10-30-public-git-foundations-class.md b/classnotes/2013-10-30-public-git-foundations-class.md
new file mode 100644 (file)
index 0000000..c5eb45a
--- /dev/null
@@ -0,0 +1,326 @@
+---
+layout: bare
+title: Public Git Foundations Training
+description: Public Git Foundations Training Class Notes
+tags: [notes]
+path: classnotes/2013-10-30-public-git-foundations-class.md
+eventdate: 2013-10-30
+---
+
+## Teacher
+* Matthew McCullough ([Twitter](http://twitter.com/matthewmccull), [GitHub](https://github.com/matthewmccullough))
+
+## Course Materials, Links
+* [Course Slides](http://teach.github.com/presentations/)
+* [Git Teaching Materials](http://teach.github.com)
+* [Course Slides Source](https://github.com/github/teach.github.com/tree/gh-pages/presentations)
+* [Post-event Git and GitHub questions](https://github.com/githubtraining/feedback/)
+* [Free Office Hours Sessions](http://training.github.com/web/free-classes/)
+
+## Resources
+
+* [Adding SSL Certificates for GitHub.com (Common for Windows XP)](http://stackoverflow.com/questions/3777075/https-github-access/4454754#4454754)
+* Disabling SSL Certificate Checks for Git:
+
+        git config --global http.sslVerify false
+* [Open Source Git Ignore Templates](https://github.com/github/gitignore)
+* [Book Authoring on Git and GitHub](http://teach.github.com/articles/book-authoring-using-git-and-github/)
+* [Post Receive Hooks](https://help.github.com/articles/post-receive-hooks)
+* [GitHub Training Videos](http://training.github.com/resources/videos/)
+* [Using Git with Media Temple](http://carl-topham.com/theblog/post/using-git-media-temple/)
+* [GitHub Training Feedback and Follow-up Questions](https://github.com/githubtraining/feedback/issues?state=open)
+* [GitHub Commit Status API for Continuous Integration](https://github.com/blog/1227-commit-status-api)
+* [Git Credential Cache for HTTP](http://teach.github.com/articles/lesson-git-credential-cache/)
+* [GitHub Issues Cheatsheet](http://teach.github.com/articles/github-issues-cheatsheet/)
+* [Jenkins Git Plugin](https://wiki.jenkins-ci.org/display/JENKINS/Git+Plugin)
+* [Ship of Theseus - Related to Similarity Index](http://en.wikipedia.org/wiki/Ship_of_Theseus)
+* [git-p4 Perforce Script](http://answers.perforce.com/articles/KB_Article/Git-P4)
+* [Unix watch command](http://en.wikipedia.org/wiki/Watch_(Unix\))
+* [SHA-1 Hash Collisions](http://git-scm.com/book/ch6-1.html#A-SHORT-NOTE-ABOUT-SHA-1)
+* [NPD Git Cheatsheet](http://ndpsoftware.com/git-cheatsheet.html)
+* [More Git Cheatsheets](http://teach.github.com/articles/git-cheatsheets/)
+
+## Installation
+* Git Installation
+    * [The Git-SCM Web Site (All Platforms)](http://git-scm.com)
+    * [The GitHub for Windows Client and Command Line](http://windows.github.com)
+* Minimum is 1.7.ANYTHING, but can have issues with HTTPS credential prompting.
+* Best is 1.8.0 or higher
+
+## Suggested Books, Articles
+* [Free ProGit Book](http://git-scm.com/book)
+* [Getting started with Version Control](http://teach.github.com/articles/lesson-new-to-version-control/)
+* [The GitHub Flow](http://scottchacon.com/2011/08/31/github-flow.html)
+* [DVCS Workflows Book](https://github.com/zkessin/dvcs-workflows)
+* [Git Workflow Links](https://pinboard.in/u:matthew.mccullough/t:git+workflow)
+
+
+## Command Line History
+
+## Console History
+
+    git --version
+    git init project1
+    cd project1
+    mate first.txt
+    git status
+    git add first.txt
+    git status
+    git commit -m "My first commit"
+    git status
+    cd ..
+    cd projectfromgui
+    git status
+    vim first.txt
+    git status
+    cd ..
+    git clone https://github.com/githubstudent/introcpp.git
+    cd introcpp
+    git fetch
+    cd introcpp
+    cat introcpp.cpp
+    git branch -a
+    git show remotes/origin/master
+    git diff master remotes/origin/master
+    git pull
+    cat introcpp.cpp
+    git clone https://github.com/githubstudent/hellogitworld.git
+    cd hellogitworld
+    ls
+    mate matthewmcconhisfork.txt
+    git status
+    git add matthewmcconhisfork.txt
+    git commit -m "Matthews file change"
+    z teach.github.com
+    ack proxy
+    cd classnotes
+    ack proxy
+    git push
+    pwd
+    clear
+    pwd
+    cd ..
+    cd hellogitworld
+    git graphlive 25
+    ungit
+    git graphlive 25
+    git branch feature1matthew
+    git checkout feature1matthew 
+    treelive 10
+    touch FEATURECODEDONTHEBRANCH.txt
+    git add .
+    git commit -m "Feature file"
+    git checkout master
+    git checkout feature1matthew 
+    mkdir dozen
+    cd dozen
+    generaterandomfiles 12 sample txt
+    git add .
+    git commit -m "One non-bakers dozen"
+    git checkout master
+    cd ..
+    pwd
+    clear
+    git checkout feature1matthew 
+    mkdir thousands
+    cd thousands
+    generaterandomfiles 9001 sample txt
+    git add .
+    git commit -m "Over nine thousand"
+    git checkout master
+    cd ..
+    git checkout feature1matthew 
+    clear
+    git status
+    git branch
+    github
+    git checkout master
+    git diff master feature1matthew 
+    git show feature1matthew:thousands/sample999.txt | mate
+    cd ..
+    ls
+    git clone https://github.com/githubstudent/myfirstwebproject.git
+    cd myfirstwebproject
+    git branch -a
+    git checkout acrazyidea
+    cd ..
+    cd hellogitworld
+    ls
+    mvn test
+    git pull
+    git status
+    git merge --no-ff --no-commit breakthetest
+    git merge --no-ff --no-commit origin/breakthetest
+    mvn test
+    git merge --abort
+    git status
+    clear
+    ls
+    vim fix.txt
+    git status
+    git stash
+    git status
+    git checkout master
+    git stash pop
+    git status
+    git stash 
+    git stash list
+    vim pom.xml
+    git stash 
+    git stash list
+    git stash pop
+    git reset --hard
+    git status
+    git stash pop
+    git commit -a -m "Changes"
+    ls
+    vim src/Division.groovy
+    git stash
+    vim src/Division.groovy
+    git commit -a -m"Explicit return"
+    git stash pop
+    git status
+    git diff
+    git reset --hard
+    git status
+    git s
+    git diff
+    # day two
+    cd hellogitworld
+    git status
+    git checkout master
+    clear
+    cd hellogitworld
+    git graphlive 25
+    touch file1.txt
+    git add .
+    touch file2.txt
+    git add .
+    historytailzsh 5 10
+    touch file3.txt
+    git status
+    git commit -m "All three of the files that belong to this feature"
+    git add file3.txt
+    git commit --amend 
+    git reflog
+    git reset --soft f29c6be
+    git status
+    git reflog
+    git reset --hard 81d2569
+    git status
+    git branch featuremergerecursive
+    mate masterfile.txt
+    git status
+    git add .
+    git commit -m "Master branch changes"
+    git checkout featuremergerecursive 
+    mate featurefile.txt
+    git add .
+    git commit -m"Feature work"
+    git checkout master
+    git merge featuremergerecursive 
+    git log --format=raw -1
+    git reflog
+    git reset --hard 920e632
+    git checkout featuremergerecursive 
+    git rebase master
+    git checkout master
+    git merge featuremergerecursive 
+    clear
+    git status
+    git branch rebasewithconflict
+    ls
+    vim build.gradle
+    git commit -a -m"Hotfix junit to 4.8.3"
+    git checkout rebasewithconflict 
+    vim build.gradle
+    git commit -a -m"Upgrade JUnit to 5"
+    ls
+    vim src/Square.groovy
+    git commit -a -m"Tune up the return"
+    git rebase master
+    vim build.gradle
+    git rebase --continue
+    git add build.gradle
+    git rebase --continue
+    git checkout master
+    git merge rebasewithconflict 
+    clear
+    git log 
+    git log --all
+    git log --all --graph
+    git log --all --graph --oneline
+    z git_git
+    git log --author=Kyle
+    git log --author=Kyle --committer=Junio
+    git log --author=Kyle --committer=Junio -S fix
+    git log --diff-filter=M --stat
+    git log --diff-filter=D --stat
+    which -a git-graphlive
+    cat /Users/mccm06/.dotfiles/scripts/git-graphlive
+    cd -
+    git fetch
+    git remote -v
+    git reset --hard origin/master
+    vim build.gradle
+    git commit -a -m "Fixes #2 by bumping up the Gradle version to .333"
+    git push
+    git revert fdc333c
+    git push
+    git log --oneline -6
+    git tag -a RELEASE_5.0 78f4771
+    git push origin RELEASE_5.0 
+    git tag -S RELEASE_SIGNED HEAD
+    git tag -s RELEASE_SIGNED HEAD
+    tig 
+    github
+    git difftool -t p4merge HEAD..HEAD~3
+    git difftool -t opendiff HEAD..HEAD~3
+    git difftool -t kdiff HEAD..HEAD~3
+    git difftool -t myaraxis HEAD..HEAD~3
+    git difftool -t myaraxis HEAD~3 HEAD~5
+    clear
+    git branch mergeconflict
+    vim pom.xml
+    git commit -a -m "Four eight one on master"
+    git checkout mergeconflict 
+    vim pom.xml
+    git commit -a -m "Three nine one on feature"
+    git checkout master
+    git merge mergeconflict 
+    git mergetool
+    git status
+    git merge --abort
+    git rev-parse HEAD
+    git rev-parse master
+    git rev-parse 4873
+    git show master^
+    git show master^^
+    git show master^^^^^
+    git show master^^^^^^^^
+    git show master~5
+    git log -1 --pretty=raw
+    git tag REMEMBERTHISPOINTBEFORELUNCHHUNGERSETIN master~3
+    git reset --hard origin/master
+    open .
+    git branch mergeme
+    vim build.gradle
+    git commit -a -m"Gradle version bump"
+    mate src/Division.groovy
+    git commit -a -m "Explicit return"
+    git checkout mergeme
+    git status
+    git add -A .
+    git status
+    git commit -m "Moved all the files"
+    git checkout master
+    git merge mergeme -m"It just works"
+    cat src/groovy/Div.groovy
+    which -a svn
+    cd ..
+    git svn clone https://github.com/matthewmccullough/dotfiles/trunk dotfilestr
+    svn co  https://github.com/matthewmccullough/dotfiles/trunk
+
+
+## Chat History
+