我正在开发一个包含很多分支(~100个分支)的git项目。我知道可以签出特定日期,但它只适用于一个分支,我需要的是将整个项目克隆到特定时间(特定提交)。是否可以直接进行,而无需手动(脚本)重新定位所有分支?
答案 0 :(得分:1)
您应该可以将--shallow-since=<date>与git clone
一起使用。文档并不完全清楚它是否适用于所有分支,但我认为,例如,对于相关的--depth
,它表示暗示--single-branch
,但--shallow-since
没有这样的说明。
答案 1 :(得分:1)
在评论中,您解释了您实际尝试做的事情:
目的很简单:Git项目是学生任务的存储库。每个学生都在自己的分支机构工作(大约100个);显然任务有截止日期。最简单的技巧是在截止日期到来时结账项目,
我不会为此目的使用单个存储库 - 学生可以轻易地覆盖彼此的分支,或以其他方式伪造提交。这是灾难的秘诀。
相反,这就是我要做的事情:
通过这种方式,学生只能在截止日期之前推送到存储库。
还有其他变化可能也有效。