GT Study Buddy is an iOS app that enables you to connect with other students who are in the same classes as you. This app is designed for Georgia Tech students. GT iOS Club members are developing this app as of Spring 2022.
To become a contributor, drop your GitHub username and email into the iOS Club discord or email [email protected].
- In the future, you will need to follow specific instructions to obtain the
GoogleService-Info.plist
for Firebase. For now, this file is included in the repository, which is very unsecure. - Clone the repository. Open a terminal window, navigate to your desired location, and type
git clone [email protected]:wellsfletcher/GTStudyBuddy.git
. Open the project in Xcode - Change the development team to your personal account. Click on "GTStudyBuddy" at the top of the hierarchy view to navigate to build settings. Go to the "Signing & Capabilities" tab. Switch the team to your personal account
- Build the project.
- You may need to exit out of Xcode and reopen it for the project to build successfully.
- For simplicity, create a new branch by following the "Make changes to the repository" section before modifying the project.
- Sign into your GitHub account in Xcode
- Make a new branch from the develop branch. On the GitHub website, go to the develop branch. Create a new branch from the develop branch
- In Xcode, fetch changes. This makes it so you can see any new branches that were created remotely
- In Xcode, checkout your branch. Navigate to the source control tab by pressing
cmd + 2
. Checkout your branch by navigating toRemotes/origin
and right clicking on your branch name and choosingCheck Out...
- Make changes to your branch
- Commit and push your changes to your branch. Choose
Source Control/Commit...
from the menu bar. Check push to remote and make sure the correct branch is selected. Press theCommit
button at the bottom right corner - Fetch and pull changes from develop branch
- Create a pull request to merge into the develop branch
- Add wellsfletcher or one of the officers as a reviewer
- The officers will look over your changes, and will either accept your pull request or decline it and tell you what to fix
- Repeat
- Go to the Issues tab on the GitHub website to view existing issues
- Choose an issue you want. Issues labeled "Good first issue" are probably ones you want to work on. Issues labeled "minor feature" are large, advanced features that we won't implement during meetings. Feel free to try any of those too.
- Assign yourself to the issue. Otherwise, you may risk someone else implementing the feature before you and your changes not making it to production.
- When working on an issue, include the issue number in your commit messages. Make sure to proceed it with a "#" symbol. A nicely formatted commit message may look like "#11 - added alert for when the password is too short". GitHub will automatically convert the issue number in the commit message into a hyperlink to the issue. This makes it easier to track progress on issues and keep the repository organized
- When you complete an issue, write a comment on the issue that mentions one of the officers (i.e. include
@wellsfletcher
) and we will review and potentially close the issue
If you are not super familiar with Git, relax. The repository is setup so that you can't directly commit to the main
or develop
branches. You also can't merge your branch into the main
or develop
branches without your merge request being reviewed. This means it is very hard to accidentally break everything. Just be careful not to lose your own changes you've made.
Also, don't worry about making extraneous branches or commits. We don't mind :)