Foreign code hosting libraries, many open source authors will create public projects
Speaking of GitHub, you have to start with Git.
Versioning is a powerful tool during program development. As the name suggests, version control tools can be used to record each version of the program during development. For example, I implement a feature today, submit a version, fix a bug tomorrow, and submit a version. When you complete different development tasks, you can avoid clutter by maintaining a dedicated branch. You can find a change record from a version library, or you can compare differences between different versions of a file. If you accidentally write bad, you can also restore from the previous version of the library back.
For team development, mature version control tools can be deployed in multiple places (specific forms may be different, such as Git's distributed and SVN central style, and the difference can be seen in the beginning of learning git | Cloud ' s Blog, for the program development, collaboration, publishing, backup and other operations to provide a great convenience, but also a major component of software engineering. Of course, in addition to software development, version control is also a very useful tool, the idea is applicable to many industries.
Git is a fairly well known version of the program, developed by Linux author Linus Torvalds, and is now the version control tool used by the Linux kernel and many other projects. Although initially evaluated as "operational complexity" (there are some jokes about it, it's no use even if Git claims to run offline because you have to check usage and parameters at any time), but it's very popular because it's powerful.
You can refer to the introduction of Git-book Chapter I. You can also refer to learn X in Y minutes:scenic programming Language Tours.
GitHub is a code-hosted Web site based on Git. Developers can open the code on the GitHub, can browse the code of other projects, fork to their own name to make changes, clone back to the local (without access to the private repo except) use, you can also initiate pull request to submit their own changes upstream. GitHub does a lot of work around the project (that is, the Repository in Git), such as wikis, home pages, and so on, and Graph to see how other people fork. GitHub also has gists for sharing code snippets. For more features on GitHub, refer to https://github.com/tiimgreen/github-cheat-sheet/blob/master/README.zh-cn.md.
Because Git itself is a pretty good tool, and GitHub a lot of cattle cattle project, so in addition to simple code hosting, GitHub is also regarded as a programmer SNS. www.aciia.cn