This course is addressed to those who are already experienced computer users and developers on another operating system, but have limited or no experience working in a Linux environment; and/or have already done some work on Linux systems and are looking to gain a good working grasp of Git.
- Experience as a developer on any operating system
- Experience in working at the command line is not necessary, but would be helpful
- A Linux system is necessary, either a physical or a virtual machine, and any modern distribution will work. Please note that installation instructions are provided in the course material, if needed.
Open source software has become the dominant model for how the world's technology infrastructure operates, from the smallest microprocessor to the largest supercomputers. Use of Open Source Software leads to better and faster development. Widespread collaboration puts more eyeballs on your code and has transformed the way people and corporations think and how things get done today.
In the first part of this course, we will survey how open source software works, including advantages of using it, methods of working in OSS communities, governance models and licensing choices.
In the second part of this course, we consider Linux systems and cover a wide set of topics, including installation, desktop environments, text editors, important commands and utilities, command shells and scripts, file systems and compiling software.
In the third part, we give a thorough introduction to Git, the source control system that arose out of the Linux kernel community, that enables widely distributed development to operate efficiently.
In just a few years, Git has risen to become the dominant system on the planet for collaborative development, with literally millions of projects using it.
This course will take between 50 and 60 hours to complete and contains 43 hands-on lab exercises that will allow you to practice your skills, as well as a similar number of knowledge check quizzes, and more than 20 videos showing you how to accomplish important tasks.
In this course you will:
- Obtain a strong foundation for working comfortably and productively in open source development communities
- Learn to work comfortably and productively in a Linux environment
- Master important Linux methods and requisite tools
- Learn to use Git to create new repositories or clone existing ones
- Learn to use Git to commit new changes, review revision histories, and examine differences with older versions
- Learn to use Git to work with different branches, merge repositories, and work with a distributed development team.