web-dev-qa-db-fra.com

Télécharger une branche spécifique d'un projet github

Pour abréger l'histoire, pour exécuter un modèle de réseau de neurones convolutionnel, j'ai besoin d'une version spéciale de nolearn, qui a une URL de la forme https://github.com/dnouri/nolearn/ arbre/1659e4811e498dc1f442d8e6486d0831f85255b4/nolearn . Cependant, il n'y a pas de Download as Zip boutons sur la page, et je ne peux pas le télécharger avec

git clone https://github.com/dnouri/nolearn -branch 1659e4811e498dc1f442d8e6486d0831f85255b4/nolearn

Simplement,

git clone https://github.com/dnouri/nolearn/tree/1659e4811e498dc1f442d8e6486d0831f85255b4/nolearn

ne fonctionne pas aussi.

Même, je n'ai aucune idée de ce que dois-je rechercher dans Google!

Remarque: il s'agit de la dernière version qui fournissait un support pour la classe Objective, c'est-à-dire la commande from lasagne.objectives import Objective n'est plus supporté!

8
Ali Shakiba

En dehors de Subversion (SVN), git a des espaces de noms séparés pour les répertoires (dossiers du système de fichiers), les branches et les balises. Ainsi https://github.com/dnouri/nolearn/tree/1659e4811e498dc1f442d8e6486d0831f85255b4/nolearn n'est pas, en soi, une branche. 1659e4811e498dc1f442d8e6486d0831f85255b4 est un ID de validation, utilisé ici pour faire référence à la révision créée par la validation. dnouri/nolearn est le nom du référentiel sur GitHub (référentiel nolearn sur le compte dnouri) et le dernier nolearn dans l'URL est un répertoire dans le contenu de la révision 1659e4811e498dc1f442d8e6486d0831f85255b4.

La manière "normale" d'obtenir ce code avec git serait:

  1. répliquer le référentiel sur votre machine locale

    git clone https://github.com/dnouri/nolearn.git
    

    (Vous pouvez trouver cette URL sur la page du référentiel https://github.com/dnouri/nolearn , dans le champ 'URL clone'.)

  2. entrer dans le référentiel local

    cd nolearn
    
  3. consultez la révision souhaitée

    git checkout 1659e4811e498dc1f442d8e6486d0831f85255b4
    
  4. changer dans le répertoire respectif à l'intérieur du référentiel

    cd nolearn
    
10
das-g

Cela peut vous aider:

Comment cloner une seule branche dans git?

Où précise:

git clone <url> --branch <branch> --single-branch [<folder>]

Docu:

Git Clone

- [non-] simple branche

Clonez uniquement l'historique menant à la pointe d'une seule branche, soit spécifié par l'option --branch, soit par la télécommande de la branche principale HEAD pointe vers. Lors de la création d'un clone superficiel avec l'option --depth , c'est la valeur par défaut, à moins que --no-single-branch ne soit donné pour récupérer les historiques à proximité des pointes de toutes les branches. clonage initial. Si le HEAD sur la télécommande ne pointait sur aucune branche lors du clonage --single-branch, aucune branche de suivi à distance n'est créée.

23
mayo
4
landareex