У мене виникло те саме запитання, що і тут: Нове сховище git у кореневому каталозі, щоб замінити наявне сховище в підкаталозі
Я слідував за цією відповіддю тут: Нове сховище git у кореневому каталозі для завантаження наявного сховища в підкаталозі
Зараз, gitk --all
показано дві історії: одна, що завершується течією master
, і одна названа original/refs/heads/master
.
Я не знаю, що це за друга історія чи як її видалити з репо. Мені не потрібні дві історії в моєму сховищі.
Як я його позбудуся?
Щоб відтворити себе:
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'
Тепер у нас є проблема оригінального плаката. Давайте перемістимо корінь git repo в проект-root, використовуючи відповідь, пов'язану вище:
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
Тепер дивіться мою поточну проблему:
gitk --all &
git show-ref
Як я можу позбутися refs/original/heads/master
і всю пов’язану історію?