How To Collaborate On A Github Repository

Professional Biography:
In the technology realm, others see code. I see art. My journey as a software engineer is fueled by a steadfast conviction in the power of creativity to transform our world and the ability of technology to unleash human potential.
As a self-taught developer from Nigeria, I have taken a unique route fueled by a constant inquiry and an insatiable thirst for invention. I spent my five years as a developer growing from a lone learner to a versatile full-stack developer and enthusiast for artificial intelligence. Today, my technological landscape spans web development, artificial intelligence, and blockchain technologies, each established through learning about multiple frameworks.
Technical Skills:
In terms of technical skills, I possess a broad breadth and depth. I know multiple programming languages - Python, JavaScript, Ruby, and C - and possess exceptional knowledge of multiple web technologies - React, Next.js, Node.js, Django, and upcoming frameworks. When I approach code development, I don't just think of it as code. I think of it as compositions. Each line of code is like a musical note bringing functionality together to create a symphony.
Professional Philosophy:
More than skills, I have a vision to create opportunities. Having seen dauntless ambition and unmet creativity in uninviting environments, I believe technology has the possibility of leveling the playing field. I find coding far more relevant than code; to me, it's about giving people a chance to unearth their expression and potential.
Current Frontiers:
I'm currently digging deep into the intersections of AI, web development and blockchain technologies. My excitement surrounding cryptocurrencies and programmable assets stems from a mindset I have toward a more fluid, easier to access digital ecosystem. I view these technologies as tools for innovation rather than things that are far off in the future.
In this article, I'll be giving you tips on how to do the following;
- create a repository on github
- add a collaborator to your repository
- clone repository (for both you and your partner)
- work collaboratively on the same repository
let's do this!
Create A Repository
I'll be showing you how to do it with your PC. Doing it on your phone would be similar.
- Go to github.com

you would need to login if you haven't already
- Head over to your repositories

- Click on
Newto create a new repository
- Provide a name and a description for your project then click on
Create repositorybelow.
Add A Collaborator
I'll be showing you how to do it with your PC. Doing it on your phone would be similar.
- Go to github.com

you would need to login if you haven't already
- Head over to your repositories

- Find the repository you want add a collaborator to. When you find it, click on it.
Alternatively, you can go to the repository using a link. If your github username is
flyingfishand the repository name isfoobar, the the link would behttps://github.com/flyingfish/foobar. - Navigate to the repository settings

- Find
Collaboratorsand click on it. It's using on the left part of the screen.
You might be asked to authenticate. Authenticate using your github mobile (if you have the mobile app) or password.
- You can now search for your partner using their username. This would give them access to your repository

Clone Repository
Now this step involves having a PAT or Personal Access Token. You can find out out to get yours [here].(https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)
To clone the repo, both you and your partner need to include your PAT in the url. So lets say the following information was yours;
username = flyingfish
PAT = ghp_1234567890
And your partner's information looked like this;
username = julienbarbier
PAT = ghp_101010110101
Then the name of the repository is foobar. If you want to clone it, you'll type;
git clone 'https://ghp_1234567890@github.com/flyingfish/foobar.git'
For your partner, they'll clone it like this;
git clone 'https://ghp_101010110101@github.com/flyingfish/foobar.git'
Notice that your partner still uses your repo (
flyingfish/foobar) to clone .
Collaboration Is Key
To collaborate efficiently without making a mess or creating conflicts, you and your partner need to work on separate branches. So, create a new branch and have your parner do the same; none of you should work directly on the default branch.
I'll be making a few assumptions
1.Your branch name is the same as your username
- Your default branch is
main(sometimes, it could bemaster)
Your workflow would now look like this
- checkout to your branch. This step should only be done once - immediately after cloning.
git checkout flyingfish
- get all changes locally
git pull origin main
- make changes and make commits, then;
- make all changes reflect on github
git push -u origin flyingfish
- repeat...
This would be all you need to get the ball rolling. I hope this article would be useful to you as we keep doing #hardthings






