GUIDE TO PROJECTS ON GITHUB
Repository organizes single project. It contains folder, files, video, spreadsheets and data sets with information about project. Branch is a way to work on different versions of repository at a time. The default branch is main. Commits are saved changes on Github, with a description explaining why a particular change was made. Pull request includes proposing changes and requesting others to review and pull in your contribution to merge into thier branch. Merging pull request means bringing changes together.
CREATING REPOSITORY 💼
CREATING BRANCH ⚓
COMMIT CHANGES 🎉
CREATE PULL REQUEST ✋
MERGE PULL REQUEST 🔀
It is light weight, branch-based workflow that supprts teams and projects where deployements are made regularly. When you create a branch in project, you’re creating an environment where you try out new ideas. Changes you make on a branch dont affect main branch, so you are free to experiment and commit changes, safe in the knowledge that your branch won’t be merged until it’s ready to be reviewed by someone you’re collaborating with.Your branch name should be descriptive because it is created off main when working on a feature or fix.
Version control system tracks (VCS) history of change as people and teams collaborate on projects together. As the project envolves, teams can run tests, fix bugs, and contribute new code with the confidence that any version can be recovered at any time. Developers can also review project history to find…
Distributed Version control system (DVCs) is commonly used for open source and commercial software development. They allow access to every file, branch and iteration of project, and allow every user access to full and self-contaimed history of all changes. Developers can work anywhere and collaborate asynchronously from any time zone.
BASIC GIT COMMANDS
GitHub builds collaboration directly into thye developmenmt process. Work is organized into repositories, where developers can outline requirements or directions and set expectations for team members. Developers simply create a branch to work on updates, commit changes to save them, open a pull request to propose and discuss changes, and merge pull requests once everyone is on same page.
They are public web pages hosted and published by GitHub. Use Jekyll Theme chooser to load a pre-made theme. You can modify your content and style them remotely i.e. the web or locally on your computer.
Creating a fork is producing personal copy of someone else’s project. It acts as a sort of bridge between original repository and your personal copy. You can submit PULL Requests to help make other people’s project better by offering your changes upto the original project.Pull Requests are an area of discussion.
It is core of Social coding on GitHub.
With more and more people joining GitHub and adding projects everyday, keeping up with them all can be difficult. This can be fun and easy by following users or watching reposityories, or simply showing interst by starring, or using explore to find out new people and projects.
Digital Object Identifiers are the backbone of academic reference and metric systems. If you’re a researcher writing software, this will explain you how to make the work you share on GitHub by archiving one of your GitHub repositories and assigning a DOI with the data archiving tool Zenodo
Issues are great way to keep track of tasks, enhancements, and bugs for your project. They’re kind like email -exept that can be shared and discussed with rest of your team. Most software projects have bug tracker of some kind. GitHub’s tracker is called issues, and has its own section in repository.It is special because of our focus on collaboration, references, and excellent text formatting.
TYPICAL ISSUE
They are group of issues that correspond to a project, feature, or time period. People use them in many different ways in software development. Some milestones are…
It organize different types of issues. Issues can have as many labels as you want, and you can filter one or more labels at once. Some labels are…
Assignee is one person that’s responsible for moving the issue forward. They are selected the same way milestones are, through the grey bar at top of issue.
There are 2 ways to recieve notifications,email and web. Notifications are GitHub’s way to keep up to date with your issues. You can use them to find out new repositories, or just to know when someone need’s your input to move forward on an issue. How you recieve notifications…
It’s way to reference other GitHub users inside of GitHub issues. Inside description or any comment of the issue, include the @username of another GitHub user to send them a notification. Use /cc syntax to include people in issues.
It looks function not working. Maybe a broser bug? @user1 @user2
If you dont know specific users to include who might be able to help you, reference the team with @mentions. If browser-bug is team under klopo organization…
/cc@klopo/browser-bugs
Often time issues are dependent on other issues, or at least relate to one of them and you’d like to connect the two. You can refer issues by typing in a hashtag(#) plus the issue number
Hey @user1, I think problem started in #49
By doing this, we create an event inside of issue #49. If there is issue in another repository, just include the issue number inside of the commit message. By prefacing your commits with “Fixes”, “Fixed”, “Fix”, “Closes”, “Closed”, “Close” when commit is merged into main, it will close the issue. It is great way to add visibility into history of project.
At top of each page, there is a search box that lets you search through issues.You can scope results by…
Outside issue section, there are 2 other pages that help summarize what’s going on with issues across all of your repositories.
If you use organizations,each one has its own Issue Dashboard that separates out issue within the organization. It is for broader listing of all your issues across many projects. It can be a great tool. Issue section of dashboard collect issues differently…
Pulse is snapshot of everything that happened in last repository in the past week(day,past 3 month). It’s a great way to catchup with repositories when you’ve been away and don’t want the granularity notifications offer when watching a repository.
It is easy-to-use syntax for styling all forms of writing on the GitHub platform. It is a way to style text on web. You can control the display of document, formatting words such as bold or italic, adding images, creating lists, etc. I t is regular text with few non-alphabetical character thrown like #, *, >. Places to use Markdown…
DOCUMENTING PROJECTS 📄
Good Documentation is key to success of any project. Making accessible documentation enables people to learn about a project, making it easy to update ensures that documentation stays relevant. Common ways are README files and WIKIS. Wikis help you present in-depth information about project. Readme’s are quick and simple way for other users to learn more about your work. Formats of Readme are…
Other documentation includes
◾ ◾ ◾