I currently have two separate repositories, say A and B for building two products. There are a large number of common code exist in both repositories. I want to create a repo C to host those common code and remove them from both A and B. My question is: how to clone, checkout, commit either one of the product code together with the common code, i.e., (A, C) or (B, C) consistently? Can it be done in SourceTree?