I work for a company where one team constantly includes the generated executable file (and a bunch of other garbage) with each commit. Due to non-technical reasons, I have to constantly restructure our work on top of mine.
Here's what it looks like for me most days:
TNC (their new commits) contains:
- some useful changes
- a lot of trash
CC (clear hold) contains:
- added .gitignore
- rm a-lot-of-garbage - *
Now I want to do:
(on master)$ git rebase their_branch
This, of course, causes a conflict (modified, deleted). Since this is an almost daily task, I want to do it without fuss (enough to revise our entire history every time). So I tried:
(on master)$ git rebase their_branch -s recursive -X ours
According to the Git manual , this should cause "conflicting chunks to be automatically resolved using our version." another tree that does not conflict with our side is reflected in the result of the merger. For the binary, all the content is taken from our side. "But he doesn’t do this - he still stops and asks me to resolve the conflicts. I run the script deletion files, but it is annoying.
Can Git just force binary removal?
source share