I'm no fan of ICE – a very large percentage of my friends in the US are immigrants, and I generally want my country to be a welcoming one. ICE has certainly committed unethical and probably illegal acts (probably true of most federal agencies).
But to expect that a _federal agency_ will be denied service from a private entity, especially for essentially political reasons, is lunacy. It'd attract extreme negative attention from the rest of the government, and great fear from all paying customers that an internet mob could separate them from their code at any time.
We should absolutely be lobbying hard for changes to immigration law, the restrictions placed on ICE, and justice for their wrongdoings.
But I can't see how this helps improve immigration, and it certainly seems likely to cause a lot of negative consequences for GitHub. The employees are putting their employer in a "damned if they do, damned if they don't" situation.
EDIT: Just to clarify, I love the vision of a world where executives don't take actions their workers will protest. I think that in order to get there, the protests need to be reasonable, and I think this one isn't.
EDIT DISCLAIMER: I own a small amount of MSFT stock, which was not on my mind as I wrote this. I use GitHub's free service and have no other relationship I can think of with MSFT or GitHub.
In a working society, maybe. In a properly functioning government it's the job of the executive branch to find some kind of compromise and operate the government for the benefit of and according to the priorities of a reasonable approximation of all the citizens.
But that's not possible with ICE. Right now there's a large fraction of society that supports inhumane mass deportation, human rights disaster camps across the border, family separation policies (though that got rolled back, thankfully), no-knock armed police raids for visa violations etc....
And there's another large fraction of society, including the Github workers, who find that hateful and immoral. And those folks have no ability to affect policy absent waiting to vote again. Their desires and needs simply aren't being heard.
In previous administrations, that kind of hyper-partisan policymaking by the executive branch simply wouldn't have happened. Either because it's bad politics or because of some sense of order on the part of the policymakers. But it's not true now.
The root cause, basically, is that one political party in the US decided to make an "enemy" out of a population (hispanic immigrants) in order to gin up votes from people that don't like them. And the resulting skew in civic priorities has made a big mess. This is how you get civil unrest, which we're seeing right now in all sorts of contexts.
But the mess isn't the fault of the protestors or the github folks, really. You can't run a country according to the parochial needs of your half of the electorate and tell everyone else to fuck off. They start flipping tables.