Github IBM Template
Github IBM Template
Training Material
1
TABLE OF CONTENTS
2
Chapter 1: What is GitHub?
GitHub is a prevalent web-based stage that gives adaptation control
utilizing Git, a conveyed form control framework made by Linus
Torvalds. GitHub encourages collaboration on program advancement
ventures by facilitating stores, following changes, and giving a extend of
apparatuses to oversee code and collaborate with other engineers. Here’s
a closer see at what GitHub offers and how it works:
Version Control
Git Integration: GitHub employments Git to oversee changes to source
code over time. It permits different designers to work on the same
extend at the same time without interferometer with each other's work.
Commit History: Clients can track and audit the history of changes
made to the code base, counting who made changes and why.
Repositories
Public and Private Repositories: Users can make open storehouses
(unmistakable to everybody) or private stores (limited get to). Open
storehouses are frequently utilized for open-source ventures, whereas
private ones are utilized for exclusive or touchy work.
Forking and Cloning: Users have the ability to clone (download)
repositories to their local machines for development purposes and fork
(make a copy of) repositories to work on their own version.
Collaboration Tools
Pull Requests: Developers propose changes to a project via pull
requests. These changes can be reviewed and discussed before being
merged into the main codebase.
Issues: To keep track of work, feature requests, and bugs, users can
create issues. Within the repository, issues can be assigned, tagged, and
discussed.
Dividing and Combining: Using GitHub, individuals can establish
branches to separately work on different features or repairs. This makes
it easier to manage various development streams without interfering
with the primary codebase.
Branching and Merging
Branches: GitHub allows users to create branches to work on different
features or fixes independently. This helps in managing different lines
of development without affecting the main codebase.
3
Merging: After a branch's development is finished, it can be merged
back into the main branch, often known as main or master, to
incorporate the modifications into the main source code.
Continuous Integration and Continuous Deployment (CI/CD)
GitHub Actions: GitHub Actions are integrated continuous integration
and delivery technologies. With these, users can respond to events like
pull requests or code contributions by automating work routines,
including launching apps or performing tests.
Code Review and Feedback
Code Review: Pull requests help with code review by enabling team
members to offer suggestions for enhancements and to remark on
individual lines of code prior to changes being merged.
Collaborative Feedback: GitHub offers a central location for teams to
discuss code, review changes, and provide comments.
Documentation
README Files: Each repository can include a README file that
provides information about the project, such as how to install, use, and
contribute to it.
Wiki: GitHub supports a wiki for more extensive documentation and
project information.
Integration with Other Tools
Third-Party Integrations: GitHub can be integrated with other
external tools and services, such as deployment platforms, testing
frameworks, and project management systems.
Creating a Repository
Setup: On GitHub, create a new repository that will act as the hub of
your project.
4
Cloning the Repository
Local Development: Use Git to clone the repository to your local
computer. This makes a copy of the code and lets you operate offline.
Making Changes
Edit Code: Edit the documents within your local repository. Stage the
changes and commit them to your local branch when you're ready.
Commit Changes: Utilize Git to generate commits that include your
modifications and informative notes.
Pushing Changes
Update Remote: Your modifications are reflected in the remote
repository when you push your contributions to GitHub.
Creating a Branch
Feature Development: Make a new branch dedicated to working on a
particular feature or fix. This contributes to the main branch's stability.
Merging
Integration:The pull request can be merged into the target branch after
it has been approved. Your modifications are now incorporated into the
main code base.
Resolving Issues
Track Progress: Track tasks, features, or bugs using issues. To give
context for how they solve particular issues or requests, you can link
issues to pull requests.
5
Chapter 3: The Need for GitHub
GitHub addresses several key needs and challenges in modern software
development and project management. Here’s a detailed look at why GitHub is
essential for many teams and projects:
1. Version Control
2. Collaboration
3. Code Review
4. Documentation and Issue Tracking
5. Continuous Integration and Deployment (CI/CD)
6. Collaboration with Open Source Community
7. Project Management
8. Security and Access Control
9. Integration with Other Tools
10. Visibility and Communication
6
Chapter 4: Why GitHub so popular?
The reason GitHub is so popular is because of its vast integration
possibilities, community support, powerful collaboration tools, and user-
friendly design. Both small and large teams use it because it provides an all-
in-one platform for version control, project management, and automation.
Its widespread adoption is further facilitated by its function as the focal
point for open-source projects, as well as by its ongoing development and
the backing of significant IT firms.
1. Ease of Use
2. Collaboration Features
3. Community and Open Source
4. Integration and Extensible
5. Automation and CI/CD
6. Documentation and Project Management
7. Security and Compliance
8. Visibility and Transparency
9. Support for Diverse Work flows
10. Brand and Ecosystem
Go to https://github.com/login
Click on the "Sign in" button located in the top-right corner of the page.
7
Click "Sign in"
Once you've entered your credentials, click the "Sign in" button to access
your GitHub account.
8
Enter a “Username” and click Continue
Once the account was created, have to verify the email id by giving the
launch code. Then Sign In to the GitHub page.
9
Create a Repository
1. Log In to GitHub
Go to GitHub's homepage and click the "Sign in" button in the top-
right corner.
Enter your credentials and log in to your GitHub account.
Once logged in, click the "+" icon in the upper-right corner of the
page.
Select "New repository" from the drop down menu.
Repository Name: Enter a name for your repository. The name should
be descriptive and relevant to the project.
Description (Optional): Provide a short description of what the
repository is for. This helps others understand the purpose of the
repository.
Visibility: Choose the visibility of your repository:
10
Private: Only you and people you invite can view and contribute to this
repository.
Add files to your local repository, stage them, and commit changes
using Git commands
“cd your-repository-name
git add
11
git commit -m "Initial commit"
Manage Repository
Create a Branch
Find the drop-down menu for the branch selector on the repository page.
This is often located in the upper left corner of the repository and is
frequently marked with the name of the active branch (main, master,
etc.).
12
Confirm Branch Creation
Once created, you will be switched to the new branch. You can now
make changes and commit them to this branch.
13
Make a Commit
Making a commit in Git involves recording changes to your local
repository using both the Git command line and GitHub’s web interface.
Edit a File
14
Make Changes
Commit Changes
Review Changes
Review the changes that will be merged. You can see the files changed
and the diffs between the branches.
15
Click the "Create pull request" button.
Title: Provide a clear and descriptive title for the pull request.
Description: Add a description explaining the changes made, the reason
for the pull request, and any other relevant information.
Assignees: Optionally, assign reviewers or team members who should
review the pull request.
Labels: Optionally, add labels to categorize the pull request (e.g., bug,
feature, enhancement).
16
comments.
17