J'ai eu la même question que celle posée ici: Nouveau référentiel git dans le répertoire racine pour subsumer un référentiel existant dans un sous-répertoire
J'ai suivi cette réponse ici: Nouveau référentiel git dans le répertoire racine pour subsumer un référentiel existant dans un sous-répertoire
Maintenant, gitk --all
montre deux histoires: une culminant dans le courant master
et une nommée original/refs/heads/master
.
Je ne sais pas ce qu'est cette deuxième histoire, ni comment la supprimer du repo. Je n'ai pas besoin de deux historiques dans mon référentiel.
Comment m'en débarrasser?
Pour vous reproduire:
mkdir -p project-root/path/to/module
cd project-root/path/to/module
mkdir dir1 dir2 dir3
for dir in * ; do touch $dir/source-file-$dir.py ; done
git init
git add .
git commit -m 'Initial commit'
Nous avons maintenant le problème de l'affiche originale. Déplaçons la racine du dépôt git vers la racine du projet en utilisant la réponse ci-dessus:
git filter-branch --tree-filter 'mkdir -p path/to/module ; git mv dir1 dir2 dir3 path/to/module' HEAD
rm -rf path
cd ../../../ # Now PWD is project-root
mv path/to/module/.git .
git reset --hard
Maintenant, voyez mon problème actuel:
gitk --all &
git show-ref
Comment puis-je me débarrasser de refs/original/heads/master
toute l'histoire associée?