Group Projects with Github
So recently I have begun working with Shopify with another developer (feel free to skip ahead if you have heard me drag on about this before). We have been trying to use React to build out a front end for some ecommerce. I can honestly say that I am no expert in how to work together but as always, I feel I can give you a decent first impression and some pointers.
First off, Git skills are essential for any developer job you are looking for. Even it it isn’t specifically using GitHub, a lot of companies use their own version which tends to operate very similarly. Getting into the habit of commit changes to GitHub is a skill in its own. Creating a remote repository becomes second nature if you are working on a project. A skill that went unnoticed for me was the ability to use fetch/merge/pull. These are essential for working with a group. Some initial basic tips, use fetch and merge if you are unaware of what is coming your way. You can get shelled with a plethora of changes, some may not be compatible with the updates youve made. Being able to see what someone is changing can be very beneficial whereas pull is great in a group of two or three. I have been in constant contact with the other developer and we have been working together over slack calls, knowing the changes they’ve made and working on something to pair with it makes me much more confident in being able to use git pull for their changes. Syntax is key though.
I would love to tell y’all that my knowledge on this topic is a culmination of several pieces of documentation. It kind of was but to be honest, the most headway I made in understanding this was from this page. This really put things into place. Before stumbling upon this, I found that I could forget the correct syntax and then begin to backtrack through the stack overflows and documentation I had found previously. Finally landing on the result I was looking for. The previous link connected it for me. If I call git pull /home/bob/myrepo main, I am pulling the updated copy of my partners repository. If you do not have any major conflicts, it will update it for you. If there are conflicts, it will point them out and ask how to handle them. Inversely, my partner could use a git pull on home/nick/<name of repo> main and update their app with the changes I have made.
I feel like I could go on for a few more paragraphs and or pages to discuss the options but I will table that for another day. I hope some of these tips help point you in the right direction. As always, happy coding friends!