teambit / bit

A build system for development of composable software.
https://bit.dev
Other
17.91k stars 930 forks source link

fix component history by marking snaps prior to tag-from-scope as hidden #9281

Closed davidfirst closed 3 weeks ago

davidfirst commented 3 weeks ago

Here is the issue this PR attempt to resolve. When components are developed on lanes and merged back, the component history in bit log often displays redundant snap-tag pairs for each merge, where each snap holds meaningful changes, but the subsequent tag, when created by tag-from-scope (_tag), duplicates these without adding new information. This redundancy leads to:

Solution: The hidden property is added to the Version object to filter out specific snaps after tagging, specifically when using the _tag command (or tag-from-scope). This command is commonly used when merging lanes and often results in redundant snap-tag pairs. When _tag creates a tag from the last snap on a lane, it copies the same file configuration and contents, leading to duplicate entries in the component history. By setting hidden = true on the snap after the tag is created, only the tag remains visible in bit log and bit blame, while the snap (containing redundant data) is hidden. This prevents clutter in history views and ensures that only the most meaningful tags appear in version tracking commands.