Je veux configurer mon git (Tortoisegit) à l'aide du fichier gitconfig global tel que le nom de la télécommande par défaut lorsque je clone un référentiel n'est pas "origine", mais un autre texte définit par moi (par exemple "FOO"). p>
est-ce possible? Quelles directives sont celles? P>
merci p>
Edit: L'intention de ceci est que je crée plusieurs référentiels plus petits pour différentes tâches indépendantes (documentation!) Et je suis fatigué de chaque fois que la modification du nom de la télécommande puisqu'elle est disponible en utilisant des actions à d'autres utilisateurs. Donc, le nom de la télécommande doit être le nom de ma machine pour éviter de dérouter les autres versions GIT. Je sais que ce n'est pas la meilleure pratique, mais c'est la vie: (. P>
3 Réponses :
Je ne sais pas comment le faire à Tortoisegit, mais il est assez facile de faire en modifiant le fichier de configuration de Repo via la ligne de commande:
$ git remote rename origin foo
Cette commande n'est valable que lorsque le clone est créé. Cela ne change pas la valeur par défaut pour les nouveaux clones.
Il n'y a pas d'option de configuration globale. Vous devrez utiliser git clone --origin foo
--origin <name>, -o <name>
Instead of using the remote name origin to keep track of the upstream
repository, use <name>.
Cela modifie le nom de l'heure que je clonage le référentiel. Je souhaite pouvoir spécifier le nom une fois et à partir de ce moment-là, toutes les actions clones doivent utiliser ce nom.
Vous ne pouvez pas, alors j'offre la meilleure chose.
On dirait qu'un patch est en ordre.
Est-ce toujours vrai à partir de 2015? J'espère secrètement qu'ils ont ajouté une nouvelle option de configuration au cours des quatre dernières années ...
@YOCHANNAH pourquoi? À quelle fréquence clonage-tu des référentiels que vous devez vous inquiéter? Pourquoi voudriez-vous veux i> pour changer le nom de la télécommande d'origine?
@meagar parce que je travaille sur un projet open source et la pensée de cloner par inadvertance et de pousser à la télécommande de «maître» avant d'être prête, me donne les Heebie-Jeebies. La dénomination explicite rend cela plus facile. Comparez YOCHANNAH / AWESOMESOREPROJECT CODE> et
AWESMEODOSPROJECJECJECT / AWESMEOSSPROJECT CODE> VS Le moins clair
Origine / AWESMEOSPROJECT CODE> ET
ENCOREME / AWESMEOSSOSPROJECT CODE>. C'est beaucoup plus facile à dire lequel est lequel, maintenant, et cela me sauve du temps lorsque je clonage beaucoup de sous-projets si je n'ai pas à renommer les télécommandes aussi souvent.
COALA.IO Recommande les débutants Utilisez en amont code>, car il y a trop de scripts "utiles" sur Le 'net qui suppose
origine code> est la fourchette ou la fourchette, et ils se tiennent à pied et ils blâment l'outil. S'ils n'ont pas d'origine, les scripts les plus destructeurs échouèrent tôt.
Vous pouvez ajouter un alias pour cela comme: git config --global alias.fooclone 'clone --origin foo' code>. Ensuite, utilisez-le comme
git foxlone
@meagar, commençant par GIT 2.30.0 (2020-12-27) Ce n'est plus vrai. Maintenant, il y a clonez.defaultremotename code>, vois ma réponse pour plus de détails. Mais cela les a fallu longtemps pour l'avoir ajouté ...
git 2.30.0 (2020-12-27) introduit clonez.defaultremotename code>
la valeur de configuration décrite les suivantes:
Le nom de la télécommande à créer lors du clonage d'un référentiel. La valeur par défaut
origine code>, et peut être remplacée en faisant passer le
- Origine code> option de ligne à git-clone [1] . P> blockQquote>
tout en même temps, le
- Origine CODE> Option de ligne de commande de
a changé sa description à: p>git-clone code>
Au lieu d'utiliser le nom de la télécommande
Origine CODE> Pour garder une trace du référentiel en amont, utilisez
code>. Remplace clonez.defaultremotename code> à partir de la configuration. P> blockQuote>
Pour obtenir la valeur Utilisez P>
git config --default origin --get clone.defaultRemoteName
Fait intéressant, cela signifie qu'à partir de GIT 2.30.0 (2020-12-27) Tout script censé être générique et flexible, ne peut plus supposer qu'après git clone code> la télécommande est nommée
Origine code>. Maintenant, il doit l'appliquer avec l'argument code> d'origine code> ou ensuite utiliser
"$ (télécommande git)" code> pour interroger le nom distant. (Eh bien, il pourrait également utiliser
git config code> pour obtenir
défaultremotename code> mais il ne semble pas avoir des avantages sur
git distant code> pendant qu'il est enclin à change de configuration globale en même temps.)