Project coordination outline - AgileVentures/rag GitHub Wiki
- I would like to have a document that describes how:
- discussions are done
- decisions are made
- tools are used to track project items
- commits and accepts are made
- git flow recommendations
- roles are assigned to project members
- Scrum meetings (AgileVenture Projects) are done three times a day: 10.00 UTC, 15.15 UTC and 19:00 UTC
1. Currently the main repo for the project is https://github.com/AgileVentures/rag
It contains two, most important, branches: master and develop.
- develop - is the current code base that has the latest features that were accepted by the project owner
- master - has the latest features that were accepted by the customer
2. Project developers have their own repos which are initially forked off the main repo.
- Log in to your GitHub account at
http://github.com - Got to
https://github.com/AgileVentures/ragand click the Fork button up in the top left corner. That will fork the repo to your GitHub account. - Open your terminal and navigate to the folder where you want to store the AutoGraders project.
- Clone the project from your GitHub account to your local machine using
git clone https://github.com/YOUR_GITHUB_USERNAME/rag - Remember that the current codebase is the develop branch. Use
git checkout develop - Visit Development environment set up for further info.
3. When somebody starts implementing a story from pivotal tracker Current list:
- he is marked as a story owner in PT
- he fetches the latest changes from the main repo develop branch
- he creates a new branch in his repo (which is branched off the latest develop branch) with a name that corresponds to the name of the story
4. Developers that wish to collaborate on that story:
- should fetch/fork the latest story branch changes from the story owner's repo
- should push their changes to their own repo and create a pull request for the story owner
5. When the story is complete:
- the story owner checks that all tests are passing (rspec and cucumber)
- checks if the story branch has the latest changes from the main repo's develop branch
- merges the latest develop branch changes into the story branch
- checks that all tests are passing (rspec and cucumber)
- creates a pull request for the project owner to be pulled into the main repo develop branch (pull request should have comments...)
- deploys (if a demo is necessary) the story branch into his own staging server
6. Conventions for commit and pull requests messages:
- summarize the entire commit/PR on the first line in less than 50 characters
- leave a blank line, then add a detailed explanation of what’s been changed.
For example:
Change the message displayed by hello.rb
- Update the #sayHello method to output the user's name
- Change the #sayGoodbye method to a friendlier message
7. Recommendations on using Git: (upstream, fetch, pull, merge, branch, etc.)
https://www.pivotaltracker.com/s/projects/853345
-
Create a story in icebox
-
Description, tasks, owner, points, activity, epics, chores, bugs.
-
Add a discussion point to the Agenda
-
Discuss, approve, move into backlog
-
Start, Finish, Deliver, Accept, Reject.
- Travis and CI