667
edits
Changes
no edit summary
** Create a [https://github.com/ github] account, if you haven't already, and update [[Fall 2011 Open Source Students]]
** Quiz on Thursday on Raymond's essay.
== Weeks 3, 4 (Oct 19, 26) - Distributed Revision Control with Git ==
* Introducing Git
** Client Server (SVN) and Distributed (Git)
** Snapshots vs. versioned files.
** Checksums, SHA-1
** File States:
*** Untracked (not known to git)
*** Tracked: modified, staged, committed
** The staging area
* Basic Git Commands and Concepts
** git help ''<command>''
** git init
** git clone
** git add
** git commit, git commit -m, git commit -a
** git rm
** git mv
** git status
** git log
** git diff, git diff --staged
** .gitignore
** Branches
*** HEAD, master
*** git checkout, git checkout -b
*** git branch, git branch -a, git branch -d, git branch --merged, git branch --contains
*** git merge
** Remotes
*** origin, origin/''branch''
*** git remote
*** git remote add
*** git fetch
*** git pull
*** git push
** gitk
* '''Readings/Resources'''
** [http://git-scm.com/ Download and Install git]
** [http://progit.org/book/ Pro Git, online book]
** [http://www.ericsink.com/vcbe/index.html Version Control by Example, online book]
** [http://sixrevisions.com/resources/git-tutorials-beginners/ Overview of Git Tutorials (many good ones)]
** Videos
*** [http://excess.org/article/2008/07/ogre-git-tutorial/ Git Basic Tutorial]
*** [http://www.youtube.com/watch?v=OFkgSjRnay4&feature=related Scott Chacon's more advanced tutorial of git]
*** [http://www.youtube.com/watch?v=4XpnKHJAok8 Linus Torvalds at Google discussing git's distributed nature]
** Github
*** [https://github.com/ github server]
*** [http://help.github.com/ github documentation]
* '''TODO'''
** '''Watch''' video tutorials.
** '''Read''' relevant sections in [http://progit.org/book/ Pro Git] (chapters TBA).
** '''Install'' and '''Setup''' git locally
** '''Create''' a github account
** '''Clone''' the github repo for your project(s)
** '''Blog''' about your experiences getting to know git:
*** What problems did you have?
*** What did you learn in the process?
*** What surprised you?
** Blog about your project:
*** What are you doing for 0.1?
*** What does it involve in the way of technologies?
*** What do you need to learn in order to do it, how will you learn it?
*** What fears or concerns do you have?