Before the merges, your repo looks something like
...-- * -- * -- * -- * master
...-- * -- * -- * -- * b1
After git merge/rebase master, only master consists of the merged history:
-- * -- * -- * -- * -- * master
/
...-- * -- * -- * -- * b1
After git merge/rebase b1, only b1 consists of the merged history:
...-- * -- * -- * -- * master
\
-- * -- * -- * -- * -- * b1
You probably want the first scenario, where you normally branch off master and would want the full history including all previous merges. However, if b1 is a long-lived branch, you may occasionally do the second merge as well, so that b1 keeps up-to-date with master.