I ran into this situation in a previous company.
Brief background: The office I work at has no walls that divides our tables into cubicles. Its just desks arranged side by side.
I can stretch my arms sideways and be able to touch my co-workers. It is a medium sized company, with around
20-25 people per department. End background.
During Christmas season, it was common practice for co-workers to give each other small gifts, worth less than $3 each.
The gifts would be left on the desks of the recipient by the giver. The problem was this. The gift giving became the source
of rifts and drama in the workplace.
You see, if co-worker A has a problem or a rift with co-worker B, she would give a gift to everyone but not give one to co-worker B.
Now it wasn't just co-worker A and B who did this. Almost everyone did. As such, when I arrived for work, I would immediately
notice who got a gift from whom and who did not( due to no cubicle walls ). Just by the gifts alone, I would know that Jane is not
in good terms with Alice and so forth, something I do not wish to have known.
It was awkward after this in the office. I remember asking if I was in high school all over again. Now I know that a gift is a gift,
and it is up to the person who she wants to give a gift to, and it is not anybody's business. But the bad part is that some of
us have to work together and it is difficult to work with someone who you know has a problem with you.
Now I could just ignore all of this and act as if nothing has happened. Our supervisor just ignored the whole thing anyway.
Also I gave gifts to everyone, I preferred the all or nothing approach. I think this is the best way to handle this.