从日期获取git上的活动分支
如果可能的话,我如何找到在特定日期和时间在git上签出的分支?我知道我可以在某个分支上的某个日期时间获得提交,但我需要知道它是否在该分支上您可能已经对从日期获取git上的活动分支,git,Git,如果可能的话,我如何找到在特定日期和时间在git上签出的分支?我知道我可以在某个分支上的某个日期时间获得提交,但我需要知道它是否在该分支上您可能已经对--decoration选项git log感到满意了 如果需要更多的杠杆,可以添加一点分支--contains。我刚刚调制了这一系列: 细分: for sha in $(git rev-list --all -1 --since=2013-12-23 --until=2014-01-01) do git log --decorate -1
--decoration
选项git log
感到满意了
如果需要更多的杠杆,可以添加一点分支--contains
。我刚刚调制了这一系列:
细分:
for sha in $(git rev-list --all -1 --since=2013-12-23 --until=2014-01-01)
do
git log --decorate -1 "$sha"
git branch -a --contains "$sha"
done
它会打印出类似于
commit ebb4186a95fd210afdc31b490bbf6279a798d61a
Author: Seth Heeren <sgheeren@gmail.com>
Date: Wed Dec 25 02:50:59 2013 +0100
fixing compilation issue
* master
remotes/bitbucket/HEAD -> bitbucket/master
remotes/bitbucket/master
根据修订图和/或默认值的时髦程度,您可能还需要添加日期顺序。给定本地存储库,您可以使用git reflog显示本地存储库上所有分支更改和提交的历史记录。通过这种方式,您可以跟踪您提交的分支 但是,如果其他人在本地存储库上进行了提交(并将其工作推送到其他存储库,如github),您就不可能再回答这个问题 git中的“分支”只是一个包含所有历史记录的单一提交,直到存储库的第一次提交。不同的分支机构分享其大部分历史是很常见的。因此,旧提交通常是所有分支的一部分 如果您只是想知道给定的提交是否包含在给定的分支中,那么可以使用
git branch--contains
/-a--a--a这在git本身是不可能的。你为什么想知道你到底想做什么?看来你对你的问题有误解。可以在任何时间从任何一个存储库同时签出多个分支。如果您发现在特定分支上的特定时间有一个提交,那么根据定义,提交是在该分支上的。。。
commit ebb4186a95fd210afdc31b490bbf6279a798d61a
Author: Seth Heeren <sgheeren@gmail.com>
Date: Wed Dec 25 02:50:59 2013 +0100
fixing compilation issue
* master
remotes/bitbucket/HEAD -> bitbucket/master
remotes/bitbucket/master
--all select from all HEADs (following the parents)
--since/--until this would be your date criteria
-1 limit to a single commit
/-a--a--a <-- branch1
x--x--x--x
\-b--b--b <-- branch2