A customer portal and a backoffice can share models or interface components while keeping their own screens and responsibilities. Keeping those contracts together makes changes spanning several parts of a product easier to review.
Sharing a repository does not mean deploying everything together or sharing customer data. Deployments, access and storage need their own decisions. We use this structure when coordination adds more value than maintaining separate repositories.