Как получить последние 30 дней активных веток из git?

#git

Вопрос:

Есть ли какая-либо доступная команда git, которая показывает активные ветви за последние 30 дней на github ?? Например : git branch-r —нет-объединено эта команда показывает полную активную ветвь, но я хочу видеть только те ветви, которые активны с 30 дней

Ответ №1:

Бывают случаи, когда обычный git просто не подходит для этой работы, и требуется немного баш-фу.

 limit=$( date -v-30d  %s )
git branch -r --no-merged | while read branch; do
    if [ $( git show --quiet --pretty="%ct" $branch ) -lt $limit ]; then
        branch $branch has been inactive for longer than 30 days
    fi
done
 

Ответ №2:

git branch -r --no-merged [показывает] полную активную ветвь, но я хочу видеть только те ветви, которые активны с 30 дней

 branches=`git branch -r --no-merged | awk '{print $1}'`
[[ -n $branches ]] amp;amp; git log --no-walk --pretty=%D --since=30.days.ago $branches
 

или

 branches=`git for-each-ref refs/remotes --format='%(refname)' --no-merged`
[[ -n $branches ]] amp;amp; git log --no-walk --pretty=%D --since=30.days.ago $branches