flotpython/recreation

dites-moi comment vous utilisez github

Opened this issue · 27 comments

bonjour à tous

@hquatreville @JiPiBi

deux d'entre vous ont des soucis en ce moment avec github

je suis un peu ennuyé pour vous aider car j'utilise git directement sur mon ordi, mais j'ai l'impression que vous vous utilisez plutôt des outils fournis sur le web directement par la plateforme github; est-ce que j'ai bon jusque là ?

je suis du coup personnellement complètement démuni par rapport à ces outils-là que je ne connais pas du tout; je peux essayer de vous aider mais il vous faudra me dire exactement ce que vous faites, ce à quoi vous vous attendez et ce qui se passe à la place.

ou aussi sinon je sais que github distribue aussi un outil qui s'utilise en local - github desktop;

Mais je ne veux non plus vous faire perdre votre temps: si vous êtes intéressés à apprendre git on peut persévérer un peu, sinon il ne faut pas que ça se retrouve au milieu..

bref...

je viens d'essayer de créer un fichier chez jipibi, je n'ai pas vu de souci particulier, à nouveau dites-moi bien ce que vous faites

C'est la première fois que je mets les pieds sur Github donc je découvre petit à petit.

Pour le moment, j'utilise Github directement on the WEB mais au vue des commentaires, je suis en train, de réaliser qu'il y a moyen de tout synchroniser en local.

Comme je suis sous linux et que la marche à suivre est esquissé dans un autre commentaire, je vais essayer de me débrouiller.

Bon, on n'est pas rendu, la première commande ne fonctionne pas, j'imagine qu'il faut que d'une façon ou d'une autre, je puisse entre mon nom d'utilisateur et mon mot de passe. car ça donne :

$ sudo git clone git@github.com:flotpython/recreation.git
[sudo] Mot de passe de hubert :
Clonage dans 'recreation'...
The authenticity of host 'github.com (140.82.118.3)' can't be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'github.com,140.82.118.3' (RSA) to the list of known hosts.
git@github.com: Permission denied (publickey).
fatal: Impossible de lire le dépôt distant.

Veuillez vérifier que vous avez les droits d'accès
et que le dépôt existe.

Ca avance ...

a) Ubuntu m'a proposé d'installer Git-cola, je me suis dit que c'était une meilleure idée que GitKraken qui n'existe qu'en tar.gz dont je sais par expérience que c'est la promesse d'ennuis futurs.
b) J'ai pu configurer mon nom d'utilisateur et cloner flotpython/recreation
c) J'ai regardé dans mon répertoire, il me semble que seule la branche master est cloné

Je me pose maintenant deux questions :

  1. puis-je récupérer le fichier le la brache comment ?
  2. si je modifie en local mon fichier .py avec mon édieur préféré (spyder en l'occurence dont j'aime bien la coloration syntaxique), faut-il tirer ou pousser pour le modifier sur github ?

Push donne le message d'erreur suivant :
Pushing to git://github.com/flotpython/recreation.git
fatal: remote error:
You can't push to git://github.com/flotpython/recreation.git
Use https://github.com/flotpython/recreation.git

OK; il faut que je vous parle des accès à github

en gros, il y a deux méthodes différentes:

  • si vous utilisez l'URL en https://blabla
    vous utilisez donc le protocole https; c'est assez casse pied car on se fait demander un mot de passe à chaque fois

  • c'est pourquoi on préfère - en tous cas je préfère - utiliser l'url en git://blabla
    cette fois on passe par ssh; mais pour l'utiliser il faut avoir donné sa clé publique à git;

pour ça vous allez dans la rubrique Settings, puis ssh keys;

screen shot 2018-11-09 at 22 20 46

screen shot 2018-11-09 at 22 22 08


si en fait tout ça c'est du chinois pour vous rabattez vous sur la méthode basée sur https;

$ git clone https://github.com/flotpython/recreation.git recreation2

je mets recreation2 en supposant que vous avez déjà un répertoire recreation

dans ce repo-là quand vous pousserez on vous demandera votre identifiant/mot de passe github

@hquatreville
je ne vous conseille pas de faire sudo pour cloner votre repo; ça va donner un répertoire qui appartient à root, c'est contre-productif, faites le clone sous votre nom

@hquatreville

plutôt que de vous indiquer comment changer de branche, ce qui risque d'être plus troublant qu'autre chose si vous ne maitrisez pas git, je vous conseille de simplement récupérer le ficher de la branche vie le web; quand vous regardez un fichier il y a un bouton 'Raw' qui permet de récupérer le contenu

e.g.
https://raw.githubusercontent.com/flotpython/recreation/comments-hquatreville/bridge/hquatreville/bridgelib.py

vous pouvez utiliser curl ou wget pour aller le chercher comme ça, le réinjecter dans la branche master et pousser ensuite

À nouveau j'ai utilisé git dans l'idée que ça nous ferait gagner du temps, mais si ça n'est pas le cas il ne faut pas forcément s'entêter

En fait je me dis qu'il faudrait peut-être que je fasse un MOOC sur git un jour ;-)

J'ai essayé de suivre la procédure pour creer une clé et la copier dans git , mais ca ne marche pas plus
donc je ne vais pas m'enteter ,
Je reste surpris que ce soit aussi compliqué , je ne me rapelle pas que cela s'était passé comme celà dans ma précédente experience github mais je ne travaillais qu'avec mon compte et pas un compte partagé

si en fait tout ça c'est du chinois pour vous rabattez vous sur la méthode basée sur https;

$ git clone https://github.com/flotpython/recreation.git recreation2

je mets recreation2 en supposant que vous avez déjà un répertoire recreation

dans ce repo-là quand vous pousserez on vous demandera votre identifiant/mot de passe github

pour info, j'utilise la méthode décrite ci-dessus : en utilisant Git en ligne de commande, je clone d'abord en https, je créé/modifie les fichiers et répertoires en local, puis je push en https avec identifiant/mot de passe

Avec git-cola, j'ai cloner sans problème mais impossible de faire un push.

Pour commencer, je ne comprend pas bien ce que signifie faire un push. Je connais dropbox où la synchrinisation est automatique ou ftp mais la, je ne comprend pas bien ce qui se passe.

La copie d'écran ci-dessus ne m'est pas vraiment utille car le menu n'existe pas sur mon système (Ubuntu)

Mais pas de panique. Le problème essentiel est, IMHO, de disposer d'un bon outil pour débutant. Et ça prend du temps.

une session typique pourrait être :

$ git clone https://github.com/flotpython/recreation.git

pour cloner le dépôt en local

$ cd recreation/puissance4/etilem

pour me déplacer dans le répertoire où je compte faire des modifs

$ git status

pour voir, après mes modifs de fichiers ou de répertoires ce qu'il y a de différent par rapport au clone initial

$ git add *

pour prendre en compte les fichiers modifiés

$ git commit

pour "officialiser" ces modifs dans un commit, il faut alors renseigner le journal (message qui apparaît à chaque commit)

$ git log

pour voir le journal actif

$ git push

pour publier dans le dépôt distant

J'ai testé la procédure indiquée par Etitem et ça fonctionne.

C'est pas très pratique mais au moins, on y arrive.

Par contre j'ai testé
Git-cola
GitKraken
gitg

Je n'ai réussi à en utiliser aucun. Tous refusent de se connecter et/ou de se configurer correctement.
C'est souvent le problème avec les GUi quand oin ne comprend pas la logique du système.

En tout cas merci à Etitem

En tout cas merci à Etitem

de rien !

j'ai oublié de dire que l'on pouvait aussi faire un :

$ git pull

au lieu de refaire un clonage à chaque fois

la ligne de commande est un peu déroutante au début, mais on apprécie plus tard sa puissance dans pas mal de domaines !

Bonjour
Je suis toujours bloqué dans github , non seulement dans recreation mais aussi dans mes propres repositories, j'avais complétement supprimé mon compte , puis essayé de le recréer , mais depuis mon PC cela ne marchait pas, j'ai du passer par mon smartphone.
Mais le résultat reste le meme

Par contre sur git lab j'ai après avoir passé un peu de temps appris à generer une clé SSH , à la copier dans les settings , à initialiser la connexion et à cloner des repertories sur mon PC et à faire des echanges en utilisant le GIT de Windows.(un peu plus simple pour moi que la commande en ligne qui m'a cependant servi à initialiser le process)
Si vous avez des idées pour me dire comment debloquer mon compte, je suis preneur : je ne peux faire aucune mise à jour de README ou créer un nouveau fichier (le commit en bas est vert pale et non cliquable) : je crois que je peux juste creer des repositories et utiliser la messagerie de Issues :-(

J'ai une nouvelle info , en essayant d'editer mon fichier py : j'ai vu le message suivant en haut dans un cadre en bleu clair :
You’re editing a file in a project you don’t have write access to. Submitting a change to this file will write it to a new branch in your fork JiPiBi/recreation, so you can send a pull request.

J'ai eu un retour de l'assistance GitHub qui me dit que le pb serait du à ma old configuration .
Effectivement sur un PC moderne et un smartphone , j'arrive à creer , mais il semble qu eje n'ai pas de droit en ecriture car je passe par un pull request : la suite est entre quelles mains ?

bonjour,

si vous n'avez pas fait de modifs en local, pourquoi ne pas supprimer tout le dépôt "recreation" et tenter de le cloner à nouveau, ainsi le répertoire .git à la racine du dépôt sera à jour avec la version en ligne sur GitHub ?

Je suis absolument désolé car je me suis de toute évidence emmêlé le clavier, j'avais l'impression qu'on était le bon nombre, je n'avais pas pris le temps de bien vérifier les utilisateurs un par un..

bref: l'utilisateur JiPiBi n'avait en effet jusqu'à aujourd'hui pas les droits, je viens de rectifier le tir, vous avez dû recevoir un mail d'invitation, ça va aller beaucoup mieux une fois que vous aurez accepté

je vous renouvelle mes excuses car ça doit être vraiment frustrant.. il faudrait que je fasse moins de choses à la fois, où que je me fasse installer un cerveau de rechange :-)

J ai répondu par mail mais pas encore visible?
Par contre je vous confirme que même depuis mon smartphone je peux modifier un fichier readme et faite un commit sans passer par pull