I’m hoping to find some guidance on how do teams of developers collaborate on a rasa project, something like Introducing GitFlow. I have seen the project management template (Project Management for Conversational AI Teams [+Template] | The Rasa Blog | Rasa) but am hoping to get more detail in the day to day.
- How do you split up development tasks, should it be split by features or files (i assume we can’t split files since each new feature in rasa requires editting multiple files).
- What are the scenarios specific to rasa development where merge conflict would occur, and how does the team minimize that?
- Which are the tasks that can be split between various roles, which roles are sharing tasks? (Examples of roles are
Product Manager
,Conversation Designer
, from Recipes for Building Conversational AI Teams | The Rasa Blog | Rasa) - Is it viable to keep a main1 branch as small as possible, so new collaborators can clone the minimum required skeleton, and only implement the feature they care about, and testing that, before merging into another main2 branch that contains all updated features ready for testing again that it still works when mixed with other stories/features. I assume this can speed up development because we minimize training time when the training files in the skeleton are small, and also assume that story flows/features that work before merging will still work after merging. Not sure if my assumptions hold true, can anyone experienced comment?
Any other collaboration tips are welcome too.