如何从 cygwin“日期”获取过去 12 个月的数据并使用月份进行 git 同步

发布于 2024-12-07 03:16:08 字数 396 浏览 0 评论 0原文

我正在尝试比较过去 12 个月的仓库树在月底时的情况,看看发生了什么变化。我是一个新手 - 到目前为止,我的代码基本上如下所示:

for Month in Jan Feb Mar Apr May Jun Jul Aug Sep

git checkout $(git rev-list --before "$month 1 2011" -n 1 HEAD)

我希望在过去 12 个月内完成这项工作,追溯到上一年。我希望它是动态的 - 如何创建一个循环,在过去 12 个月内迭代,并在当月结束?我希望月份值成为一个变量,我可以在 for "..." 和我的 git checkout ... 行中使用。

谢谢!

I'm trying to compare the trees of a repo as they were at the end of the month for the past 12 months, to see what changed. I am a newb - so far my code basically looks like this:

for month in Jan Feb Mar Apr May Jun Jul Aug Sep

git checkout $(git rev-list --before "$month 1 2011" -n 1 HEAD)

I'd like to make this work for the last 12 months, going back to the previous year. I want it to by dynamic - how do I make a loop that iterates over the last 12 months, ending on the current month? I want the month value to be a variable I can use both in for "..." and in my git checkout ... line.

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

天煞孤星 2024-12-14 03:16:08

您可能想尝试这样的事情:

for i in {1..12}; do
    git checkout $(git rev-list --before "$(date -d "$(date -d +%Y-%m-15) -$i months" +%Y-%m)-01" -n 1 HEAD)
    ...
done

You might want to try something like this:

for i in {1..12}; do
    git checkout $(git rev-list --before "$(date -d "$(date -d +%Y-%m-15) -$i months" +%Y-%m)-01" -n 1 HEAD)
    ...
done
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文