Remove refs/original/heads/master from git repo after filter-branch –tree-filter?

I had the same question as asked here: New git repository in root directory to subsume an exist repository in a sub-directory

I followed this answer here: New git repository in root directory to subsume an exist repository in a sub-directory

Now, gitk --all shows two histories: one culminating in the current master, and one named original/refs/heads/master.

I don’t know what this second history is, or how to remove it from the repo. I don’t need two histories in my repository.

How do I get rid of it?

To reproduce yourself:

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'

Now we have the original poster’s problem. Let’s move the root of the git repo to project-root using the answer linked above:

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

Now, see my current problem:

gitk --all &
git show-ref

How do I get rid of refs/original/heads/master and all associated history?

3 Answers
3

Leave a Comment