The previous article introduced the basic concepts and usage of Git. This article is a practical introduction based on GitHub. The main contents are:

  • Making introduction
  • Individuals and Organizations
  • Warehouse creation and maintenance
  • The Fork with a pull request
  • summary

Making introduction

GitHub is a remote code hosting platform for Git, which provides code hosting as well as other functions such as issue publishing, pull Request, report statistics, etc. The following figure shows the contributor statistics of EFCore project:

  

GitHub offers a complete set of remote collaboration solutions, making it the platform of choice for open source projects. Many well-known projects are hosted on GitHub. GitHub can create its own open source repository for free, with paid services such as private repositories and GitHub enterprise solutions.

Individuals and Organizations

GitHub provides individual repositories and organizational repositories for individual and organizational open source projects, respectively. Personal Warehouse Home page:

  

Organize warehouse home page:

  

Creating an organization:

    

Fill in the organization information:

  

Warehouse creation and maintenance

1. Create a repository (personal and team repositories are similar, as shown below)

  

2. Warehouse maintenance: For each repository, GitHub provides Code management, Issues management, Pull Request, Projects management, Wiki, Insights, and Repository Settings. The code repository can be maintained with these features:

  

The Fork with a Pull request

Fork and Pull Request are GitHub’s core functions for code sharing. Here’s how to use Fork and Pull Request to contribute code: Fork the target repository to its own repository:

  

  

Select * from ‘Fork’; select * from ‘Fork’; select * from ‘Fork’;

  

After modifying the code, push the changes to the remote repository:

  

Note: See “Good Code is Managed — Using Git to Manage Source Code” and “Good Code is Managed — Branching Workflow and Pull Request with Git.”

3. Initiate a Pull Request:

  

Creating a new pull request will display the following information (code merged from the SelimTeam repository into the yqSZt repository, code is mergable, and code difference information) :

  

The Request will be created when the “Create Pull Request” button is clicked.

4. Handle Pull Request: yqszt/MyBlog library owner, can see the corresponding information in the Pull Request TAB and merge:

  

File differences:

  

Merge Pull Request:

  

Combined results:

  

    

summary

This paper introduces how to use the lot to individual/group code warehouse, in addition to provide the basis for a lot warehouse code version management function also provides a problem management, project management, wikipedia, pull request, data statistics, and other functions, the owner of the warehouse (developer) can use a lot of project management, code management, In addition, relevant knowledge can be published through the encyclopedia, so that beneficiaries and contributors of the project can quickly obtain project information. In addition to obtaining information through the Wiki, contributors can also Issue or Pull Request questions or contribute to the project. All communication between owners and contributors can be done through Github. Github fork and Pull Request is an implementation of the integration Manager workflow mentioned in the previous article, which actually forces code review when merging pull Request code. This workflow model is suitable for local development teams. Also suitable for open source projects with developers from all over the world. In these respects Github is no longer a simple Git remote repository hosting platform, but a distributed software development management solution.

PS: Github was acquired by Microsoft, and Github will be associated with Microsoft in the future. Net ecosphere what kind of spark? Wait and see.

This paper links: www.cnblogs.com/selimsong/p…

Good code is tube out — talk about it. Net Core code management approach and implementation