repoctl: ajout de update-origin
This commit is contained in:
parent
cc1b45d0fc
commit
856c948eeb
77
repoctl
77
repoctl
|
@ -10,12 +10,17 @@ USAGE
|
|||
$scriptname ACTION URL [options]
|
||||
|
||||
ACTIONS
|
||||
create URL [description]
|
||||
Créer un nouveau dépôt avec la description spécifiée
|
||||
Utiliser l'option -u pour mettre à jour origin dans le dépôt courant
|
||||
avec l'url du dépôt nouvellement créé
|
||||
u|update-origin URL
|
||||
Mettre à jour origin dans le dépôt courant avec l'url spécifié
|
||||
|
||||
list URL [VARs...]
|
||||
c|create URL [description]
|
||||
Créer un nouveau dépôt avec la description spécifiée
|
||||
OPTIONS
|
||||
-u, --update-origin
|
||||
mettre à jour origin dans le dépôt courant avec l'url du dépôt
|
||||
nouvellement créé, comme avec l'action update-origin
|
||||
|
||||
l|list URL [VARs...]
|
||||
Lister les dépôts dans l'organisation spécifiée. Si aucune organisation
|
||||
n'est spécifiée dans l'url, lister les dépôts *accessibles* par
|
||||
l'utilisateur (cela inclut les dépôts des organisations auxquelles
|
||||
|
@ -23,11 +28,11 @@ ACTIONS
|
|||
VARs est une liste de variables à afficher pour chaque dépôt, séparés
|
||||
par le caractère tabulation. La valeur par défaut est full_name
|
||||
|
||||
get URL [VARs...]
|
||||
g|get URL [VARs...]
|
||||
Afficher les propriétés du dépôt spécifié. VARs est une liste de
|
||||
variables à afficher pour le dépôt, séparés par le caractère tabulation.
|
||||
|
||||
edit URL var=value...
|
||||
e|edit URL var=value...
|
||||
Modifier les propriétés du dépôt. Consulter l'API pour la liste exacte
|
||||
des propriétés pouvant être modifiées. Avec gitea 1.9.3, il y a au moins
|
||||
celles-là:
|
||||
|
@ -37,7 +42,7 @@ ACTIONS
|
|||
private
|
||||
default_branch
|
||||
|
||||
delete URL
|
||||
d|delete URL
|
||||
Supprimer le dépôt spécifié"
|
||||
}
|
||||
|
||||
|
@ -125,6 +130,50 @@ function gogs_setvars() {
|
|||
|
||||
################################################################################
|
||||
|
||||
function _update_origin() {
|
||||
estep "Mise à jour de l'origine"
|
||||
git remote set-url origin "$repourl"
|
||||
}
|
||||
function _update_origin_push() {
|
||||
if ask_yesno "Faut-il faire git push?" O; then
|
||||
git push --all && git push --tags
|
||||
else
|
||||
enote "Ne pas oublier de faire 'git push --all && git push --tags'"
|
||||
fi
|
||||
}
|
||||
function _update_origin_pull() {
|
||||
if ask_yesno "Faut-il faire git pull?" O; then
|
||||
git pull
|
||||
else
|
||||
enote "Ne pas oublier de faire 'git pull'"
|
||||
fi
|
||||
}
|
||||
|
||||
function update_origin_action() {
|
||||
case "$rtype" in
|
||||
#gitolite) ;;
|
||||
gogs|gitea)
|
||||
gogs_setvars
|
||||
gogs_update_origin_action "$@"
|
||||
;;
|
||||
*) die "$rtype: type de dépôt non supporté";;
|
||||
esac
|
||||
}
|
||||
function gogs_update_origin_action() {
|
||||
local repourl
|
||||
if [ -n "$user" -a "$user" != "$gogs_user" ]; then
|
||||
# dépôt d'une organisation
|
||||
repourl="$gogs_url/$user/$path"
|
||||
else
|
||||
# dépôt d'un utilisateur
|
||||
repourl="$gogs_url/$gogs_user/$path"
|
||||
fi
|
||||
_update_origin
|
||||
_update_origin_pull
|
||||
}
|
||||
|
||||
################################################################################
|
||||
|
||||
function create_action() {
|
||||
case "$rtype" in
|
||||
#gitolite) ;;
|
||||
|
@ -165,10 +214,8 @@ result: $result"
|
|||
echo "$result" | json_get "${vars[@]}"
|
||||
|
||||
if [ -n "$update_origin" ]; then
|
||||
isatty && estep "Mise à jour de l'origine"
|
||||
git remote set-url origin "$repourl"
|
||||
|
||||
isatty && enote "Ne pas oublier de faire 'git push --all'"
|
||||
_update_origin
|
||||
_update_origin_push
|
||||
fi
|
||||
}
|
||||
|
||||
|
@ -310,7 +357,7 @@ update_origin=
|
|||
args=(
|
||||
--help '$exit_with display_help'
|
||||
-c,--create action=create
|
||||
-u,--update-origin update_origin=1
|
||||
-u,--update,--update-origin update_origin=1
|
||||
-l,--list action=list
|
||||
-g,--get action=get
|
||||
-e,--edit action=edit
|
||||
|
@ -318,6 +365,9 @@ args=(
|
|||
)
|
||||
parse_args "$@"; set -- "${args[@]}"
|
||||
|
||||
if [ -z "$action" -a -n "$update_origin" ]; then
|
||||
action=update-origin
|
||||
fi
|
||||
if [ -z "$action" ]; then
|
||||
action="$1"; shift
|
||||
fi
|
||||
|
@ -327,6 +377,7 @@ repoctl_init "$1"; shift
|
|||
[ -n "$repourl" ] || die "Vous devez spécifier l'url du dépôt"
|
||||
|
||||
case "$action" in
|
||||
u|update|update-origin) update_origin_action "$@";;
|
||||
c|create) create_action "$update_origin" "$@";;
|
||||
l|list) list_action "$@";;
|
||||
g|get|s|show) get_action "$@";;
|
||||
|
|
Loading…
Reference in New Issue