Question

Alors, débutant total à Git. Lu dans les guides et je pense que les principes de base, mais je suis en difficulté y parvenir un but.

J'ai une prise en pension créé pour mon code générique source de balisage. Juste des choses que je réutilise pour chaque évasion. Il est appelé markupDNA.git

Je voudrais avoir des répertoires différents dans mes sites mac dir ~/Sites/project-N. Là où je construis sur la substance générique et faire une évasion d'un site. Je voudrais ceux-ci soient liés à ma principale git comme fourches, mais vous ne pouvez pas votre fourche repo?

Je voudrais pouvoir faire quelque chose comme ceci:

git clone <url> name
git add .
# make changes
git commit -m 'whatever'
git push

Mais je ne veux pas pousser à l'origine. Je veux pousser à une fourchette de repo markupDNA où il a été cloné. Mais il semble que cela pousse juste mes changements jusqu'à dans le maître d'origine. L'idée est de garder le markupDNA propre et juste beaucoup de fourches pour mes différents projets, dont chacun aura son propre répertoire clonée sur mon disque dur.

Toutes les idées?

Était-ce utile?

La solution

Il sera probablement beaucoup plus facile à utiliser , plutôt que d'utiliser des fourches séparées . Vous pouvez toujours avoir séparés pour chaque checkouts branche; juste clone votre repo plusieurs fois, et l'utilisation git checkout dans chacun pour passer à la branche appropriée (ou git checkout -b pour créer la branche et le vérifier à la fois). Une fois que vous avez créé les branches, vous pouvez les pousser à GitHub en utilisant git push origin <branchname>.

Autres conseils

Vous faites la bonne chose.

cd ~/Sites/
git clone ~/Dev/markupDNA/ project-N
cd project-N
git remote rename origin markupDNA
  • Nav dans le dossier où vous stockez vos projets
  • clone votre repo markupDNA de base avec le nom personnalisé
  • renommer la télécommande de sorte que si vous voulez une « origine » plus tard, vous pouvez

pour faire vrai fourchette GitHub du référentiel propre, vous pouvez utiliser ces étapes:

  1. Créer une organisation
  2. fourchette à l'organisation
  3. Renommer projet fourchue
  4. Déplacer à votre compte

Ce tutoriel donne une réponse simple et directe:

  1. Créer une nouvelle github vide forkedreporepository
  2. Clone localement:

    git clone https://github.com/YOURUSERNAME/forkedrepo.git
    
  3. Ajoutez le dépôt GitHub original à distance du nouveau référentiel local:

    git remote add upstream https://github.com/YOURUSERNAME/originalrepo.git
    
  4. Déroulez une copie du dépôt github originale à votre nouveau référentiel local:

    git pull upstream master
    
  5. Appuyez sur les fichiers de votre nouveau référentiel local nouveau référentiel GitHub:

    git push origin master
    

Ce ne sera pas reconnu par github comme une fourchette du dépôt original, bien sûr, mais cela est aussi bon qu'il obtient.

Bien sûr, vous pouvez cloner à partir d'un clone. En git il n'y a pas de concept d'une prise en pension principale. Les gens désignent souvent une prise en pension principale, mais est par convention, non pas à cause d'une raison technique.

Vous pouvez faire tout exactement comme vous décrivez et plus encore.

Par exemple, il est logique de garder une branche dans vos sites en petits groupes avec des idées pour des ajouts ou des modifications à vos trucs génériques. Vous pouvez tirer ces vers vos repo génériques et de distribuer à nouveau à partir de là.

Vous pouvez également utiliser outil d'importation de Github.

(il est fait pour l'importation de SVN, etc., mais vous pouvez l'utiliser pour cela aussi)

  • Créer un nouveau référentiel dans Github. IMPORTANT : ne pas "initialize avec un README"
  • Sur l'écran suivant, cliquez sur "Importer le code"
  • Coller l'URL du Github vous repo à importer. ( capture d'écran )

Encore une fois, cela crée un nouveau dépôt et non une véritable fourche sur Github. Mais toutes vos branches, l'histoire, etc. seront là.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top