[英]Is it possible to do a shallow git clone based on datetime?
我知道我可以通过指定--depth
标志来做一个浅克隆。 但是,这需要一个整数作为其值。 有什么方法可以使datetime
具有相同的行为吗? 我不想克隆整个存储库并检出以前的状态。
为什么是的。 至少只有 Git 2.11(2016 年第四季度)
见提交cccf74e , 提交079aa97 , 提交2997178 , 提交cdc3727 , 提交859e5df , 提交a45a260 , 提交269a7a8 , 提交41da711 , 提交6d43a0c , 提交994c2aa , 提交508ea88 , 提交569e554 , 提交3d9ff4d , 提交79891cb , 提交1dd73e2 , 提交0d789a5 , 提交45a3e52 , 提交 3f0f662 , 提交 7fcbd37 , 提交 6e414e3 (2016 年 6 月 12 日)由Nguyễn Thái Ngọc Duy ( pclouds
) 。
帮助按:维战阮( pclouds
) ,埃里克阳光( sunshineco
) ,和JUNIOÇ滨野( gitster
) 。
(由Junio C gitster
合并-- gitster
-- in commit a460ea4 ,2016 年 10 月 10 日)
git clone
现在包括:
--shallow-since=<date>:
在指定时间后创建一个带有历史记录的浅克隆。
日期格式应该是git log
显示的格式之一。
虽然测试显示原始日期:
cd shallow-since &&
GIT_COMMITTER_DATE="100000000 +0700" git commit --allow-empty -m one &&
GIT_COMMITTER_DATE="200000000 +0700" git commit --allow-empty -m two &&
GIT_COMMITTER_DATE="300000000 +0700" git commit --allow-empty -m three &&
git clone --shallow-since "300000000 +0700" "file://$(pwd)/." ../shallow11 &&
git -C ../shallow11 log --pretty=tformat:%s HEAD >actual &&
echo three >expected &&
test_cmp expected actual
“原始日期”表示:日期为自纪元以来的秒数 (1970-01-01 00:00:00 UTC),后跟一个空格,然后是时区作为与 UTC 的偏移量(带有四位数字的 + 或 -;前两个是小时,后两个是分钟)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.