我正在寻找一种在不同网站项目之间跟踪和共享代码的方法。有些代码相同,有些则不同。有没有办法排除特定克隆上 git 存储库中的文件夹?
理想情况下我想要这样的布局:
回购:
站点 1:
站点2:
站点 3:
如果我使用 .gitignore 执行此操作,文件夹不会推送到存储库,但仍会被拉取。 (因此文件夹 A 将下载到站点 2 和 3)。
执行此操作的另一种方法是使用
git sparse-checkout
。
例如:
git clone --no-checkout --filter=blob:none <your_repo_url>
cd <your_repository_name>
git sparse-checkout set --no-cone '/*' '.folder_you_want_to_exclude/*'
git checkout <new_branch>
我希望这有帮助。