Ding!
and Ding! Stall
is your best choice to browse, order, collect and review food in NUS.
- Clone the repository into your computer locally (assuming SSH key has been setup).
git clone git@github.com:yunpengn/ding-food.git
- Notice that there are two Xcode workspaces within this repository, located in the folder
ding
andding-stall
respectively. In addition, there is a folderding-base
, which is used to act as the base library (i.e., a CocoaPod) for this project. - Make sure you have installed CocoaPods on your computer.
- Now close all Xcode windows which have been opened.
- Install dependencies for the
ding
workspace.
cd ding
pod install
- Install dependencies for the
ding-stall
workspace.
cd ding-stall
pod install
- Now, you have all dependencies installed and are ready to go.
- Open your Xcode and click
Open Another Project...
, selectding.xcworkspace
to open the first workspace, or selectding-stall.xcworkspace
to open the second workspace.
- We are using feature branch workflow rather than fork workflow.
- Whenever you are trying to fix a bug or add a new feature, created a new branch whose name describes the purpose clearly.
git branch <new_branch_name>
git checkout <new_branch_name>
- Push this new branch to the remote repository.
git push origin <new_branch_name>
git branch --set-upstream-to=origin/<new_branch_name> <new_branch_name>
- Since we encourage you to always use a new branch each time, the branch should be deleted (using GitHub interface) after the PR is merged or declined. Don't worry, GitHub uses soft delete, we can restore the branch later.
- To avoid some merge conflicts and due to many other factors, we ignore the
Pods/
folder. - Whenever you open a PR, please assign it to yourself (or anyone else if appropriate). Then, ask someone else to do PR review by assigning him/her as the reviewer.
To avoid committing OS-specific files into the remote repository, you should setup the global gitignore
file on your computer:
echo .DS_Store >> ~/.gitignore_global
git config --global core.excludesfile ~/.gitignore_global
This is because the building order of certain libraries is troublesome. To solve this problem,
- First ensure you have run
pod install
to install or update all dependencies to the latest version. - Build (rather than direct run) all frameworks once (by pressing
Command+B
). - Now, try to run the application. It should work.