2017-09-14 5 views
1

Git 2.10 introduit le git push options (git push -o "my string").Puis-je définir des options push (git push -o "...") dans git config?

De nombreuses options de ligne de commande sont configurables, et je me demandais si c'était possible pour cela aussi. Je n'ai pas pu le trouver au git-config, mais peut-être que je le néglige.

Alors, serait-il possible d'ajouter un (ensemble de) option poussoir par défaut (s), avoir ...

git push -o "r=joh.doe" 

... la valeur par défaut lors de l'exécution ...

git push 

?

Contexte: J'utilise cela avec Gerrit pour affecter directement les changements aux évaluateurs (documentation for reference - en utilisant une syntaxe compatible <push-ref>%my_string). Lorsque vous téléchargez plusieurs modifications et que vous travaillez par paires pour examiner le code de l'autre, il serait utile que je puisse ajouter cette personne en tant qu'examinateur au moment du push.

Répondre

0

Ceci est devenu configurable dans Git 2.16 (en citant release notes).

Le "--push-option =" option "git push" maintenant par défaut à une liste de chaînes configurées via la variable push.pushOption.

Ainsi, lorsqu'il est appliqué à Gerrit comme pour mon cas d'utilisation, cela devrait fonctionner pour ajouter à john.doe et réviseur publier un projet de commentaires sur le temps de poussée par défaut.

git config --add push.pushOption r=john.doe 
git config --add push.pushOption publish-comments 
1

Que se passe-t-il si vous définissez juste des alias pour faire cela?

Ex:

alias gp-doe='git push -o "r=joh.doe"' 

Vous pouvez utiliser Git Aliases aussi.

+0

Oui, cela pourrait fonctionner. J'espère juste le savoir sur les branches/télécommandes/dépôts comme git-config. – gertvdijk

1

Cette option n'est pas configurable.

Vous pouvez ajouter le relooking par Gerrit's CLIssh -p 29418 [email protected]$gerrithost gerrit set-reviewers $CHANGE -a $reviewer -p $project dans Gerrit's hookpatchset-created. Le REST APIPOST /changes/{change-id}/reviewers peut également faire le travail.

$reviewer peut être un utilisateur ou un groupe qui contient un ou plusieurs utilisateurs.

+0

Oui, je sais que vous pouvez définir cela avec l'interface de ligne de commande SSH, mais cela nécessite de parcourir toutes les modifications créées en un seul appui. Les hooks côté serveur ne sont pas très élégants pour mon cas car c'est un serveur partagé et il ne devrait pas être caché que j'ai attribué un critique. Il y a un plugin qui peut faire la même chose, mais il cache aussi * pourquoi * et cela nécessite que vous soyez le propriétaire du projet. – gertvdijk

+0

@gertvdijk dans la documentation que vous avez mentionnée, https://gerrit-review.googlesource.com/Documentation/user-upload.html#reviewers. Que diriez-vous de cette solution? – ElpieKay