awaregroup / powerbi-vcs

WIP (properly) version control and collaborate on your *.pbi{tx} files
MIT License
80 stars 34 forks source link

A script to retrive only the relevant changes #7

Open sarunaskas opened 6 years ago

sarunaskas commented 6 years ago

Hi!

From what I've seen, the most relevant changes of the .pbit file are contained in the *.m file content and certain parts of the DataModelSchema file.

The .m files seem quite simple, however all of the "modifiedTime" timestamps and similar changes in DataModelSchema file really overcrowd the output.

Have you had any luck with simplifying the git log -p output of the relevant changes to the file?

It seems hard justifying the use of the extraction if locating the changes is that difficult.

P.S. This might be a noob question coming from a git beginner, but I started concidering version control just for the team-work on Power BI files :)

kodonnell commented 6 years ago

Hi @sarunaskas - in your case the *.m might provide most of the useful data, but isn't that only formulas etc.? Layouts etc. will be elsewhere. That said, I agree the modifiedTime etc. are annoyingly messy - I'll open an issue for that.

FYI you can do git diff <file> to see the diffs for a specific file i.e. you *.m ones. Will that work?

sarunaskas commented 6 years ago

I meant to say that the log output for *.m files is working well. That's only the Power Query part.

I guess, as a hypothetical Power BI developer Team leader I would like to easily see:

  1. Which queries were added/modified/deleted?
  2. Which Calculated Columns or Measures were added/modified/deleted?
  3. Which Visuals were added/modified/deleted?
  4. How were the security roles added/modified/deleted ?

These would seem to be the essential ones and so far with my testing I was only capable of checking the first one.

Collaboration on Power BI files would be a revelation to enable large scale "standalone" projects, so I hope you keep working on this!

kodonnell commented 6 years ago

Collaboration on Power BI files would be a revelation to enable large scale "standalone" projects, so I hope you keep working on this!

Yes - we're actually waiting to hear from MS about the best way to progress this. It really makes sense for them to implement a version control ready 'export to PBIT' option, as opposed to hacking around it as we are.

as a hypothetical Power BI developer Team leader I would like to easily see

We have to be careful, as you're never going to "see" things change as they appear on the report, in the same way you can't "see" what changed in a website by looking at the code. How close we get to that depends entirely on the PBIT internal structure, which was not designed for that purpose, and we don't have control. That being said, I agree that testing out some of your use cases is a good idea, and there may be pseudo-views we can add on top of things to make the output easier to interpret (e.g. "which calculated columns or measures changed?"). I haven't looked at that yet, and would welcome a PR = )