Day 2: Collaboration ==================== Suggested Readings ------------------ - `Git Cheat Sheet `_ - `Git Book `_ - `Github `_ - Examples of documentation - ``_ - ``_ - ``_ - `Commarch Assignment `_ Outline of Discussions ---------------------- Community Architecture `````````````````````` Introduction to an assignment on Community Architecture: finding an existing FOSS project, profile the contributors, arranged in groups of 2-4, and presenting the profiles on Friday. Reading group: FOSS project case studies' What are the different types and characteristics of project communities out there for your students to contribute to? Give out Commarch Assignment Git and Github `````````````` After that, we'll jump into version control with Git and Github. Git Basic Commands `````````````````` Refer to cheatsheet above for more. +---------------------------------+--------------+ |Initialize a git repo |git init | +---------------------------------+--------------+ |Show current status of repo |git status | +---------------------------------+--------------+ |Add file(s) to local repo |git add | +---------------------------------+--------------+ |Commit added files to local repo |git commit | +---------------------------------+--------------+ |Show log of history |git log | +---------------------------------+--------------+ |Show log by patches |git log -p | +---------------------------------+--------------+ |Add files by patches |git add -p | +---------------------------------+--------------+ Making Your First Commit ```````````````````````` Your first local commit, part 1 - picking a project and getting the code Your first local commit, part 2 - building a local instance After lunch, we're going to do a practice run on making changes to a code base. We'll walk you through a practice example. Documentation ````````````` Manpages, documentation teams, and their workflows: how to find and contribute to them After we'll jump into documentation, the need for it, the form of it, and it's importance in the context of FOSS development. Essential Documentation Elements of Small Open Source Projects - Design Documents - Git log - Write Wiki's - Blog