As with all things in life when money changes hands, someone is giving something and is receiving money in exchange. What is important to understand is what the thing is that is being given. In employment, the thing that is being given is commonly (and incorrectly) considered to be the work that is done. However, if you actually read your employment contract, that's not actually what is being given. That is being given is the time you spend doing it. You are giving up your time and being paid for it. And don't forget, like all beings in the universe, we have a limited amount of time to be here, and so you have to value the time you have and not give it away for free, because it's not free to you.
Now, this is important, because when you work unpaid overtime, you are giving away your time for free. You are doing something for the company and not being paid for it. Does the company ever do that in reverse? Do they give you money for free, or anything aside from what they have to to keep you at the company? Probably not. So likewise, don't give them your time for free. When you have worked your daily time (4 hours I guess per day), get your work to a stable state, and come back and work on it tomorrow.
With this, you should be reasonable with your boss as to how long it will take to get something done, and keep your boss up to date if that changes. Don't promise something will be done on Monday if it will cost you working 40 hours over this weekend to get it done; instead say it will be done in 2 weeks, and work at your 20 hours per week pace. If your teammate is this type of person who likes to give away their time for free, that's their business and not yours; people who do this tend to be over-stressed, over-anxious, burn out quickly, and, in some cases, have a higher rate of suicide. If your teammate is like that, counsel them that what they are doing is not healthy, but at the end of the day, let them burn themselves out, but don't let them take you with them.
If this teammate thinks they are impressing the boss by working lots of unpaid overtime, they're not. Most good bosses don't actually appreciate that and don't expect that, once they know about it. You should tell your boss that the estimate of the project is including working a bunch of unpaid overtime and see what the boss says; a good boss, upon hearing this news, will not be happy and force you to extend your deadline to something more reasonable. And if your boss says something like "ok, then work the overtime" or whatever, that's how you know you have a crappy boss who's not worth impressing anyway; in this case, work just your 20 hours and get done whatever you can, and if that causes you to be fired, it's not a big loss because that boss was a bad boss anyway.