Burada sorulanla aynı soru vardı: Bir alt dizinde var olan bir depoyu var etmek için kök dizinde yeni git deposu
Bu cevabı burada takip ettim: Bir alt dizinde var olan bir depoyu devralmak için kök dizinde yeni git deposu
Şimdi, gitk --all
iki tarih gösterir: biri akımla doruğa ulaşıyor master
, diğeri ise original/refs/heads/master
.
Bu ikinci tarihin ne olduğunu ya da repodan nasıl çıkarılacağını bilmiyorum. Depomda iki geçmişe ihtiyacım yok.
Ondan nasıl kurtulurum?
Kendinizi çoğaltmak için:
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'
Şimdi asıl posterin problemi var. Git bağlantısının kökünü yukarıda bağlantılı yanıtı kullanarak proje köküne taşıyalım:
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
Şimdi, şu anki sorunuma bakın:
gitk --all &
git show-ref
refs/original/heads/master
İlişkili geçmişten ve ilgili geçmişten nasıl kurtulurum ?