CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Git couper une branche

Cj1993
Cj1993
Niveau 12
27 octobre 2016 à 09:02:40

Salut,

Sur une branche, j'ai malencontreusement laissé des informations critiques depuis plusieurs commit dans un fichier source (clé api) :snif: depuis j'ai fait un nouveau commit en enlevant la clé. J'aimerais savoir comment je peux faire pour enlever l'information des précédents commits.
- Soit en enlevant juste le fichier posant problème sur les X derniers commits.
- Enlever tout les commits contenants l'info sauf le dernier ou elle n'y est pas.

Je maitrise pas assez git pour faire un truc propre :o))
Si quelqu'un a une idée.

Merci d'avance :)

Pseudo supprimé
Pseudo supprimé 27 octobre 2016 à 09:33:27

http://stackoverflow.com/questions/9725156/remove-old-git-commits

Tu veux faire ça ?

lisarael
lisarael
Niveau 13
27 octobre 2016 à 10:10:19

Voilà : https://rtyley.github.io/bfg-repo-cleaner/

Ça marche très bien.

Cj1993
Cj1993
Niveau 12
27 octobre 2016 à 11:41:22

Le 27 octobre 2016 à 09:33:27 tolsadus a écrit :
http://stackoverflow.com/questions/9725156/remove-old-git-commits

Tu veux faire ça ?

Mais si je fais un rebase sur les 4 derniers commit je perds aussi tout le code que j'avais ajouter en plus la clé API en plus ?

TechnoViolet
TechnoViolet
Niveau 5
29 octobre 2016 à 07:21:19

Facile

  1. Crée un commit de fixup qui corrige ta bourde
  2. fais un rebase interactif (git rebase -i)
  3. déplace la ligne de ton commit de fixup juste en dessous du mauvais commit
  4. remplace "commit" par "fixup"

Enjoy

TechnoViolet
TechnoViolet
Niveau 5
29 octobre 2016 à 07:22:39

Et si tu fais une connerie avec le rebase, tu fais git reflog pour voir l'historique d'actions, et git reser --hard <hash avant le rebase foireux>

Cj1993
Cj1993
Niveau 12
29 octobre 2016 à 12:49:07

Une fois que j'aurais fait la manip que tu dit comment faire le push sur un repo distant pour que tout soit propre sur le github aussi?

lisarael
lisarael
Niveau 13
29 octobre 2016 à 20:09:36

Je vais me répéter, hein, mais en même temps, j'ai l'impression que t'es pas allé voir mon lien : https://rtyley.github.io/bfg-repo-cleaner/

C'est l'outil que tu cherches, c'est fait pour ça, ça marche très bien, je l'ai déjà utilisé pour le même genre de situation que toi, faut juste lire un peu de doc.

Cj1993
Cj1993
Niveau 12
29 octobre 2016 à 20:52:24

Le 29 octobre 2016 à 20:09:36 lisarael a écrit :
Je vais me répéter, hein, mais en même temps, j'ai l'impression que t'es pas allé voir mon lien : https://rtyley.github.io/bfg-repo-cleaner/

C'est l'outil que tu cherches, c'est fait pour ça, ça marche très bien, je l'ai déjà utilisé pour le même genre de situation que toi, faut juste lire un peu de doc.

Oui excuse moi j'ai oublié de répondre.
J'ai essayé cet outil mais j'ai pas réussi à faire ce que je voulais. Je crois que j'ai foiré une étape.
Quand je lance le programme avec :
$ bfg --replace-text passwords.txt my-repo.git
Dans passwords.txt je mets la clé api que j'ai laissé trainer ça devrait être bon non ? ça marche simplement comme un "remplace all" non ?

Cj1993
Cj1993
Niveau 12
30 octobre 2016 à 00:30:09

Le 29 octobre 2016 à 21:53:01 GouKen91 a écrit :
git push --force origin <branch> pour réécrire l'historique que github.
Sinon tu suis la procédure de Technoviolet

Ah merci c'est le fameux --force que j'avais oublié.
Bon finalement j'ai fait avec BFG, ça a bien marché.Assez puissant comme truc :)

Merci à tous, mais je vais quand même voir comment j'aurais pu me débrouiller sans outil externe aussi.

Message édité le 30 octobre 2016 à 00:31:50 par Cj1993
Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Programmation
  • Création de sites web
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment