Version imprimable du sujet

Cliquez ici pour voir ce sujet dans son format original

Forums MacBidouille _ La Programmation En Général _ [GIT] Créer un nouveau repository basé sur un ancien

Écrit par : SuperCed 21 Sep 2017, 13:20

Bonjour,

je travaille actuellement sur un git hébergé sur un serveur privé.

Je voudrais avoir une copie de ce repository sur github, avec la dernière version actuelle de la branche master. Par contre, je ne veux absolument pas que les gens accédant au repository github voit l'historique des commit avant aujourd’hui.

Que proposez vous pour résoudre ce problème ?

Il faut quand même que les 2 repos soient liés car les nouvelles modifs doivent être reportée sur github de temps en temps.
Il faut aussi pouvoir récupérer les pull request depuis github pour les intégrer à un moment sur le repos sur serveur privé.

Écrit par : chombier 21 Sep 2017, 18:19

Citation (SuperCed @ 21 Sep 2017, 14:20) *
Bonjour,

je travaille actuellement sur un git hébergé sur un serveur privé.

Je voudrais avoir une copie de ce repository sur github, avec la dernière version actuelle de la branche master. Par contre, je ne veux absolument pas que les gens accédant au repository github voit l'historique des commit avant aujourd’hui.

Que proposez vous pour résoudre ce problème ?

Il faut quand même que les 2 repos soient liés car les nouvelles modifs doivent être reportée sur github de temps en temps.
Il faut aussi pouvoir récupérer les pull request depuis github pour les intégrer à un moment sur le repos sur serveur privé.

Fais une copie de ton repo local, qui conservera ton historique, ensuite, il y a un gist qui explique comment faire:
https://gist.github.com/stephenhardy/5470814

Écrit par : Jaypee 23 Sep 2017, 11:36

La commande
git clone --depth=1 http....git

devrait faire ça: copie le contenu et juste une version dans l'historique.

J-P

Écrit par : SuperCed 24 Sep 2017, 18:16

Mais ça, ça te fait une working copy, or l'idée est d'avoir un autre repos git sur gitup qu'on peut cloner, mais avec un depth=1

Écrit par : Jaypee 25 Sep 2017, 06:04

la suite est là: https://stackoverflow.com/questions/29368837/copy-a-git-repo-without-history

J-P

Écrit par : SuperCed 25 Sep 2017, 13:11

ok, la solution repose sur une copie de fichiers et 2 repos git complètement distinct.

J'aurais bien voulu que les 2 repos git soit liés à un moment, mais ce n'est peut être pas possible...

Le système fonctionne aussi avec un git archive qu'on de-tar directement dans un autre répertoire, puis on push les modifs sur le serveur github.


Écrit par : yponomeute 25 Sep 2017, 14:49

Citation (SuperCed @ 25 Sep 2017, 14:11) *
J'aurais bien voulu que les 2 repos git soit liés à un moment, mais ce n'est peut être pas possible...

Tu peux définir techniquement ce que tu veux dire par "liés à un moment" ? Car là comme ça c'est très vague.

Écrit par : Jaypee 25 Sep 2017, 16:48

Est-ce un fork alors que tu recherches? C'est ce qui est utilisé en développement Open Source:

Toi:
- Repo produit avec une équipe de committers connus.

Contributeur lambda, mais qui a son propre compte GitHub
- git fork url_du_repo_produit: Il obtient une copie complète du repo produit dans son espace perso GitHub lambda
- Crée une branche pour sa contrib. Seule la copie, le "fork" est mis à jour.
- Soumet un Pull Request de sa branche vers le master du repos produit, qui sera acceptée ou pas, dans ce dernier cas, le repo produit ne subit aucun changement.

J-P


Écrit par : SuperCed 26 Sep 2017, 11:16

Ce serait bien un fork, sauf que je ne veux pas que les utilisateurs du fork voit l'historique des commit...

Propulsé par Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)