Script para automatizar la clonación de todos los repos a local asociado con la count de git

Estoy trabajando en un script para automatizar la tarea de get todos los repositorys de una url git hub y luego clonarlos en local, si el clon ya está presente, debemos actualizar los últimos cambios.

He estado investigando

  1. Git bash, pero no pude encontrar la manera de get todos los repos y la url para clonarlos asociados con la count.

  2. He buscado octokit para c #, pero no estoy seguro de si es ideal para esta tarea.

Git bash, pero no pude encontrar la manera de get todos los repos y la url para clonarlos asociados con la count.

Es un simple rizo, usando la API de GitHub . Ver por ejemplo esta esencia

#!/bin/bash # Set the user: user="rd2b" # Lists github repositories: curl -s https://api.github.com/users/$user/repos | sed -n 's/.*clone_url.*"\(.*\)".*/\1/ p' # Clone all repositories: for i in `curl -s https://api.github.com/users/$user/repos | sed -n 's/.*clone_url.*"\(.*\)".*/\1/ p'` do git clone "$i" "github-$(basename $i)" done 

Deberá adaptar el script para:

  • probando la existencia de una carpeta local para un repository dado
  • si la carpeta existe, cd y haz un git pull (o al less una git fetch ).

Si tiene un gran número o repositorys de GitHub, es posible que deba tener en count la pagination .
Vea esta esencia como un ejemplo .