Second, the github--exchange cooperation excellent place
GitHub is not just a communication and collaboration tool, it is not only an open source software collaboration platform, but also a symbol of an open source culture. Open source culture in the spirit of freedom, equality, sharing ideas, has won many people's praise and promotion.
GitHub relies on version management software like Git, and of course, it also supports the use of SVN to manage its repository.
The GitHub Community composition
Generally, in a project on GitHub, we tend to play four types of roles:
- Owner: The user or organization that created the project and had the project on their GitHub account.
- Maintainers and collaborators (Maintainers and collaborators): Users who are committed to a project and contribute to the development of the project. Usually the owner and maintainer are the same user or organization, and they have write permissions to the project library.
- Contributor (Contributors): Each user who sends a pull request to the project and merges it into the project is a contributor.
- Community member (Community members): Users who frequently use and are very concerned about the project, are very active in discussing feature features and pull request.
How open-source projects work
If you find a project on GitHub that you are interested in, then you can follow this process to participate:
To build a new issue
Ask the administrator first if you want to increase the functionality and content that someone is working on, or they already have a good solution to communicate with them.
Of course, this is also the place to communicate problems.
Tip: Ask questions before searching, whether there is a similar problem, if not satisfied, you can continue to communicate under the problem.
Fork this project into your own warehouse
GitHub can quickly copy the project to your space. and clone it to your local, add the original project by adding a remote repository, often checking for new updates.
Create a separate branch
Your changes should belong to feature development, so open a name with your name or special meaning as your branch of change.
If you have a test, run the test
The goal of the test is not to allow your code to introduce new bugs, and to use the automated test framework to ensure that the system is functional when automated testing is available.
Upload your code to your own github repository and send pull request
Pull request shorthand PR, is a very good means of authority management, if you are not the core members of the project, then you will not be able to update the warehouse directly, you need to update your warehouse, and then by pulling requests, request the merge, merge your newly modified branch into the core project , which ensures that the project can be changed by a valid participant without being too chaotic to manage.
Of course, if you are responsible for the project, there are some tips, such as someone's PR is not the latest version, then you do not have to close immediately, you can politely remind him to update the version in the message, so that when he updated, the PR will also be updated synchronously.
Project Contract File
Typically, there are several files in an open source project:
- README.MD supports the project description file for Markdown syntax, which is also displayed on the GitHub Project home page
- LICENSE Copyright Agreement file to illustrate the open source agreement
- CONTRIBUTING.MD development procedures for collaborators, explaining which specifications your code submissions should follow, and what features you want to add
- . gitignore This file is a configuration file under Git
Open source software configuration management process (2)--github