Configurer une succursale locale pour pousser à la branche spécifique
Désolé si cette question a été posée déjà.
Suis clonage à partir d'un repo nommé "git_lab", qui a une branche nommée "test"
Quand je clonage "-b myname_test" de créer une branche locale nommée "myname_test" et clone local est nommé "myname_git_lab"
Lorsque je fais un "git pull" il extrait automatiquement et fusionne les modifications de "test" pour "myname_test", mais pour git push, j'ai besoin de spécifier le repo et le nom de la branche.
$>git remote montrer git_lab
Branche locale configuré pour "git pull":
myname_test fusionne avec test à distance
Est-il un moyen où je peux configurer "branche locale configuré pour "git push" de sorte que je n'ai pas besoin de spécifier la direction générale et des pensions de nom?
OriginalL'auteur Senthil A Kumar | 2010-11-05
Vous devez vous connecter pour publier un commentaire.
Il y a deux choses que vous pouvez faire ici.
Ensemble
push.default
àtracking
, de sorte qu'il va pousser toutes les branches de la télécommande directions de la piste, pas sur ceux qui ont le même nom, puis configurer votre branche avec un suivi approprié de l'information. (par exemple un ensemblebranch.master.remote
àorigin
etbranch.master.merge
àrefs/heads/foo
.)Pousser manuellement.
git push origin master:foo
va pousser vos locauxmaster
branche à la branchefoo
sur la télécommandeorigin
.Cependant, je proposerais que ce que vous vraiment voulez faire est de simplement faire de la direction générale des noms de la même.
(Vous pouvez définir les paramètres de config, soit avec
git config
, par exemplegit config push.default tracking
, ou en modifiant directement le .git/config file.)Ces paramètres sont en effet fait automatiquement, mais le comportement par défaut de motivation est de repousser correspondance les branches, pas de suivi des branches. Les paramètres par conséquent, normalement, ne touchent d'extraction/tirer, pas de push. Voir pousser.par défaut dans le git config page de manuel.
qu'en est git branch --set-d'amont?
C'est en effet une plus lisse que de la manière de régler manuellement la paire de paramètres de config, dans les parenthèses dans la première balle. C'est un assez récent film, donc je l'avais oublié. La poussée de la question, cependant, rend le travail avec push - et l'OP semble avoir déjà configuré le suivi de la branche de sorte que la partie importante a été
push.default
.git config push.default tracking
semble avoir fonctionné pour moi. +1.OriginalL'auteur Cascabel
Alternativement, vous pouvez modifier le fichier de config dans le .git dossier.
le suivi devrait vous aider. Modifié la réponse.
Le suivi n'a pas d'incidence sur le poussant par défaut. Et si la branche existe déjà,
git checkout --track
est certainement pas la façon de configurer les informations de suivi.OriginalL'auteur Adam Dymitruk