GitHub is the host with the most for open source projects and programmers who want to share and collaborate on code. Here's why
GitHub is at heart a Git repository hosting service, i.e. a cloud-based source code management or version control system, but that's just the beginning. In addition, GitHub implements features for code review (pull requests, diffs, and review requests), project management (including issue tracking and assignment), integrations with other developer tools, team management, documentation, and "social coding."
Something like a social networking site for programmers, GitHub is an open environment where programmers can freely share and collaborate (even ad hoc) on open source code. GitHub makes it easy to find useful code, copy repositories for your own use, and submit changes to others' projects. As a result, GitHub has become home to virtually every open source project of any importance.
Whenever I want to explore an open source project, I start by searching for the project name. Once I find the project website, I look for its code repository link, and nine times out of 10 I wind up on GitHub.
Before we can understand what GitHub does and how GitHub works, we need to understand Git. Git is a distributed version control system, originally written by Linus Torvalds in 2005 for and with help from the Linux kernel community. I'm not here to sell you on Git, so I'll spare you the spiel about how fast and small and flexible and popular it is, but you should know that when you clone a Git repository ("repo," for short) you get the entire version history on your own computer, not just a snapshot from one branch at one time.
Git started as a command-line tool, befitting its origin in the Linux kernel community. You can still use the Git command line, if you like, but you don't have to. Instead of or in addition to the command line, you can use the free GitHub client on Windows or Mac, or any of a number of other GUIs for Git, or a code editor that integrates with Git. All of these options are initially easier to use than the command line. The Git command line comes pre-installed on most Mac and Linux systems and supports all operations; the GUIs typically support a frequently used subset of Git operations.
Git is different from older version control systems such as Subversion in that it is distributed rather than centralized. It's also quite fast, especially since most operations happen on your local repository. Nevertheless, using Git adds a level of complexity: committing code to your local repository and pushing your commits to a remote repository are separate steps. When teams forget this (or weren't taught about it) it can lead to situations where different developers are working with code bases that have diverged.
A remote Git repository can be on a server, or it can be on another developer's machine. That enables many possible workflows for teams. One common workflow involves using a server repository as the "blessed" repository, to which only reviewed, well-tested code is committed, often through a pull request issued from a developer's repository.
I've already noted that GitHub is a cloud-based Git server for code hosting and social coding, and that it implements features for code review (pull requests, diffs, and review requests), project management (including issue tracking and assignment), integrations with other developer tools, team management, and documentation.
The latest innovation in social coding from GitHub is commit co-authors, which you accomplish by adding one or more "co-authored-by" trailers to the end of a commit message. This mechanism doesn't affect the repo core per se, and doesn't change how the repo looks on plain Git, but on GitHub the chrome will show multiple committers in the commit list, and give each co-author credit in his or her contribution graph.
If you wish, you can extend GitHub using the GitHub GraphQL API. This is a significant improvement over GitHub's previous API, which was based on REST calls.
GitHub.com is a cloud hosting service that can handle a range of account types: free (public repos only) and paid ($7 per month) developer accounts, teams ($9 per user per month), and businesses ($21 per user per month). Should you wish to run GitHub Enterprise on-premises or in your own cloud instance on AWS, Microsoft Azure, Google Cloud Platform, or IBM Cloud, you can do so for the same $21 per user per month price as a hosted business account.
GitHub Enterprise adds a few useful features, such as in-app messaging to users and access provisioning integrated with LDAP directories, but gives up GitHub.com's 99.95 percent uptime SLA for hosted business accounts.
GitHub isn't the only hosted enhanced Git service, and GitHub Enterprise isn't the only on-premises product for companies. Atlassian Bitbucket competes with both of them, with slightly lower pricing and with a free five-member team level that includes unlimited private repos and the use of Bitbucket Pipelines for continuous integration. GitHub is a more popular site for open source projects and it has a much larger pool of open source developers. Bitbucket's pricing is more favorable for small startups.
GitLab competes with both GitHub and Bitbucket, both hosted and on-premises. On the surface, GitLab appears to have more lifecycle functionality than the others, but the difference from Atlassian mostly disappears if you include Jira when you evaluate Bitbucket. GitLab offers Gold-plan cloud features to open source projects for free, but that additional functionality doesn't really compensate for the larger open-source developer community on GitHub.
The DevOps seminar will help you to learn DevOps from scracth to deep knowledge of various DevOps tools such as fallowing List.
  Kubernetes.