Xi-CAM / Xi-cam.gui

0 stars 9 forks source link

Merge bluesky browser components #35

Closed danielballan closed 4 years ago

danielballan commented 4 years ago

I'd like to suggest this to supersede #34. This arrives at the same result, but it retains the git history. This is useful for several reasons.

  1. It increases the contributor base of this repository, which anyone evaluating Xi-cam as a potential user or potential contributor should find encouraging.

Before:

$ git shortlog -e -s -n
   105  Ronald Pandolfi <ronpandolfi@gmail.com>
    99  Ron Pandolfi <ronpandolfi@gmail.com>
    36  ronpandolfi <ronpandolfi@gmail.com>
     7  Ian Humphrey <ian.r.humphrey@gmail.com>
     3  Thomas A Caswell <tcaswell@bnl.gov>
     1  Richardk2n <Richard1.Kellnberger@web.de>
     1  dylanmcreynolds <40469975+dylanmcreynolds@users.noreply.github.com>

After:

$ git shortlog -e -s -n
   192  Dan Allan <dallan@bnl.gov>
   105  Ronald Pandolfi <ronpandolfi@gmail.com>
    99  Ron Pandolfi <ronpandolfi@gmail.com>
    36  ronpandolfi <ronpandolfi@gmail.com>
    12  Maksim Rakitin <mrakitin@bnl.gov>
     7  Ian Humphrey <ian.r.humphrey@gmail.com>
     6  Dylan McReynolds <dmcreynolds@lbl.gov>
     5  Pete R Jemian <prjemian@users.noreply.github.com>
     4  Andrew Walter <awalter@bnl.gov>
     4  Maksim Rakitin <mrakitin@users.noreply.github.com>
     4  Thomas A Caswell <tcaswell@bnl.gov>
     2  RSoXS <egann@bnl.gov>
     2  awalter-bnl <awalter@bnl.gov>
     1  Dan Allan <daniel.b.allan@gmail.com>
     1  Garrett <gbischof@bnl.gov>
     1  Mark <mpmdean@gmail.com>
     1  Richardk2n <Richard1.Kellnberger@web.de>
     1  dylanmcreynolds <40469975+dylanmcreynolds@users.noreply.github.com>
     1  gbischof <gbischof@bnl.gov>

Of course commit count is a poor proxy for "effort"; the depth of the contributor list here should be the takeaway message.

  1. For NSLS-II and APS folks to have authored commits in Xi-cam.gui provides evidence that the collaboration is working.

  2. Preserving the history also makes it easy to do code archaeology if we need to go back to try to understand why things are the way they are or when a given change was made.

I executed this merge like so:

# Pull *all* of bluesky-browser's history into the Xi-cam.gui repository.
git subtree add --prefix=bluesky-browser ../bluesky-browser master

# Place the files of interest into the xicam subdirectory.
git mv bluesky-browser/bluesky_browser/utils.py xicam/gui/bluesky/top_utils.py
git mv bluesky-browser/bluesky_browser/frameworks/qt/utils.py xicam/gui/bluesky/utils.py
git mv bluesky-browser/bluesky_browser/frameworks/qt/search.py xicam/gui/bluesky/search.py
git commit -am "Move relevant files from bluesky-browser into xicam."

# Delete all the other bluesky-browser files and their history.
git filter-branch --tree-filter 'rm -rf bluesky-browser' HEAD
danielballan commented 4 years ago

I'm not sure how those merge conflicts arose. If we agree on this approach, I will address them.

dylanmcreynolds commented 4 years ago

Good suggestion. I'll look at merging that in.