J'ai un projet PHP public dans un repo GitHub, qui ne contient qu'une seule branche (maître).
Je veux avoir une branche / branche distincte qui est privée pour moi (j'ai payé pour les dépôts GitHub privés). Je voudrais pouvoir fusionner les modifications de la branche / branche privée au repo public, et vice versa.
Dans cet esprit, voici mes questions:
- Puis-je avoir une succursale privée sur un repo public?
- Puis-je convertir mon propre dépôt public dans ma propre branche / branche privée?
- Si les deux éléments ci-dessus sont possibles, quelle est la meilleure voie à suivre? Si ni l'un ni l'autre, comment dois-je procéder?
github
git-branch
fork
Lézard
la source
la source
Réponses:
la source
Sur GitHub, votre référentiel est public ou privé; vous ne pouvez pas "privatiser" de manière sélective une seule succursale.
Vous pouvez cloner votre dépôt public sur votre machine locale, créer une branche si nécessaire, et simplement ne pas pousser vos branches "privées" en amont (en spécifiant quelle branche pousser vers l'origine:
git push origin master
ougit push origin branch-i-want-to-be-public:master
).Afin de tirer parti de GitHub pour votre développement public et privé, je suggérerais de forger votre branche publique dans GitHub, de changer les paramètres du nouveau fork sur "Private", puis de cloner la version privée sur votre machine locale. Lorsque vous êtes prêt à rendre les modifications publiques, transférez tout jusqu'à votre fork privé sur GitHub, puis utilisez des pull requests pour copier sélectivement les branches dans le référentiel public.
Pour rendre un référentiel privé sur GitHub, vous devez disposer d'un compte mis à niveau (payant) . Si vous ne faites que basculer le compte gratuit, vous pouvez toujours utiliser le premier processus que j'ai suggéré - cloner public vers la machine locale, branche et pousser des branches "publiques" spécifiques à l'origine - sans avoir besoin d'un dépôt privé.
Si vous avez un compte GitHub payant ou si vous utilisez un autre service qui propose des fourchettes publiques et privées et des pull requests (tel que BitBucket ), vous pouvez utiliser l'une des approches ci-dessus pour rendre votre code public.
la source
Il existe une autre solution que je trouve meilleure car elle ne se traduit pas par des dépôts en double sur la même machine.
Le résultat final est 1 référentiel avec 2 télécommandes. 1 public, 1 privé.
Il suffit de faire attention à ce que vous voulez nommer en conséquence.
la source
D'après ce que je sais, non.
Non, vous ne pouvez pas diviser un dépôt complet (branches 1-n) dans une seule branche. Eh bien, en fait, vous pourriez, si vous ne faites que bifurquer la seule branche du repo complet. Ajoutez-le simplement en tant que télécommande ou démarrez à partir d'un clone.
Vous pourriez également être intéressé par les caisses éparses .
n / a
n / a
la source