Questions on project-specific streams, branches and forking

Hi again. So my next newbie questions are on the concept of streams, branches etc.

1- Is there anyway to assign metadata to streams other than name and description? My concern is after a while the user can end up with a whole lot of streams on their list which they can’t easily distinguish to which project they belong. Stream names similar to: “Initial design”, “Structural studies” etc can exist for multiple projects. Of course we can include the project number or name in the stream name but that’s going to create another naming convention in the office that people have to remember (ie forget). Would be great if the user can assign projects and filter/group streams by that. Or admins can later assign streams to projects.

2- If I understand correctly, in Speckle, “branch” is like a new folder to put data to. It might be the use of git icons that’s confusing here. But as I understand it the branch feature is not to be used for things like a new design option based on another branch similar to creating a new feature for a software in software dev world? ie you can’t create a branch based on an existing branch and then merge back into it when you’re satisfied your changes are good. Also concepts like rebasing, cherry-picking, diffing etc don’t exist in Speckle, right? - okay just read more about this here and it seems like we’re not quite talking about duplicating git functionality here. Question now is, are some of the git features possibly on the roadmap?

Thanks again.

1 Like

Hi again :slight_smile:

  • I think the answer to your needs here would be having the concept of “Projects” as collections of streams. This is probably the only feature from v1 that we haven’t yet brought to v2. But don’t despair, it’s on our backlog! Would something like tags or the possibility to star/favorite streams be helpful too?

  • you are correct, branches can be seen as “folders”, or collections of commits. Currently we don’t have features that’d allow you to merge the contents of two branches, cherry picking or rebasing. We will definitely add some of these in the future though, probably in a simplified way than what git does. What you can already do, is use the desktop connectors to manually “merge branches” or “branch off” existing ones. So you can definitely use branches to store design options, it’s just that currently you’ll need to handle their content form the connectors and not from our Web interface. To start, we have recently enabled the possibility of loading multiple branches/commits/objects in the viewer.

Hope it makes sense! Happy to discuss more in detail :wink:

4 Likes

I think the answer to your needs here would be having the concept of “Projects” as collections of streams. This is probably the only feature from v1 that we haven’t yet brought to v2. But don’t despair, it’s on our backlog! Would something like tags or the possibility to star/favorite streams be helpful too?

Yes to all :slight_smile: but collections/projects would be of higher priority for me.

What you can already do, is use the desktop connectors to manually “merge branches” or “branch off” existing ones. So you can definitely use branches to store design options, it’s just that currently you’ll need to handle their content form the connectors and not from our Web interface. To start, we have recently enabled the possibility of loading multiple branches/commits/objects in the viewer.

By handling it from the desktop connectors, you mean creating an empty branch, receiving the contents of another branch and push it to the empty branch, right? Also is the latter, using custom code or is the functionality already implemented in the default viewer? [oops! just refreshed the page and it’s there now! :slight_smile:]

Cheers.

1 Like

Exactly! Not ideal, but it does the job :slight_smile:
Thanks for the feedback!

1 Like