Here is a small introduction for what Github is and what some of its features are.
To understand GitHub, you must first have an understanding of Git.
Git is an open-source version control system that is similar to other version control systems like Subversion, CVS, and Mercurial to name a few.
You can read more about git is here Git-scm.com and that is what I recommend.
GitHub is a Git repository hosting service, but it adds many of its own features. While Git is a command line tool, GitHub provides a Web-based interface. It also provides access control and several collaboration features, such as wikis and basic task management tools for every project.
A good way to start with Github
A good way to start using GitHub is to create your own repository on Github by clicking the Create a new repository button on the right side when you have created a new profile.
Then you just follow the steps until you see a screen where you can clone your project down to your own computer.
when you have cloned that and pushed it to the
master branch you can go to GitHub and refresh the page.
Now you should be able to see a new screen with your new pushed code.
About Pull requests
Pull requests let you tell others about changes you've pushed to a repository on GitHub. Once a pull request is opened, you can discuss and review the potential changes with collaborators and add follow-up commits before the changes are merged into the repository.
Issues are often acting as a place to report software bugs. As a maintainer of the project, you can use the issues to organize tasks you need to accomplish such as adding new features or add known bugs.
You can associate issues with pull requests so that when you merge a pull request, your issue will automatically close. If you're using a project to track and prioritize your work, you can see what project an issue is a part of by viewing the projects section within the issue.
A fork is a copy of a repository that you manage. Forks let you make changes to a project without affecting the original repository. You can fetch updates from or submit changes to the original repository with pull requests.
Any user or organization on GitHub can fork a repository. Forking a repository is similar to copying another repository, with two major differences:
You can use a pull request to suggest changes from your fork to the original repository, also known as the upstream repository.
You can bring changes from the upstream repository to your local fork by synchronizing your fork with the upstream repository.
Deleting a fork does not delete the original upstream repository. In fact, you can make any changes you want to your fork--add collaborators, rename files, generate GitHub Pages--with no effect on the original.
Why use GitHub
I’m using GitHub because a lot of the frameworks/packages I use is on GitHub and its the best service I can think of to handle collaboration with issues and pull requests.
Other services like Github?
There is a lot of services like Github to name a few is: