Filtre-şube --ağaç-filtre sonra git repo/usta başları/başvuruları kaldırmak?
Burada sorulan aynı soru vardı: New git repository in root directory to subsume an exist repository in a sub-directory
Ben bu cevabı burada takip: New git repository in root directory to subsume an exist repository in a sub-directory
Şimdi, gitk --all
iki geçmişlerini gösterir: master
mevcut ve bir original/refs/heads/master
adlı sonuçlanan.
Bu ikinci tarih nedir, ya da repo çıkarmak için nasıl bilmiyorum. Benim depo içinde iki tarihin ihtiyacım yok.
Bundan nasıl kurtulabilirim?
Kendinizi yeniden oluşturmak 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 Gönderen sorunu var. Hadi git proje-kök repo kök cevabı yukarıda bağlantılı kullanarak hareket
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, benim şimdiki sorun:
gitk --all &
git show-ref
Nasıl refs/original/heads/master
ve tüm ilgili tarih kurtulurum?
CEVAP
refs/original/*
size filtre-şube karışıklık durumunda bir yedek olarak. İnan bana, bu birgerçekteniyi fikir.
Sonuçları kontrol ettik, ve ne istediğini çok eminsin bir kez yedeklenir ref kaldırmak için:
git update-ref -d refs/original/refs/heads/master
ya da eğer çok hakem için bunu yaptım, ve hepsini silin.
git for-each-ref --format="%(refname)" refs/original/ | xargs -n 1 git update-ref -d
(Doğrudan-şube filtre kılavuz dan alınmıştır.)
Filtre-şube olan varsa Eğer . bu bulmak başkaları için senin için, ama geçerli değil: ^em>kaldırıriçerik önemli disk alanı kaplıyor, ayrıca reflogs sona erecek ve artık kullanılmayan silmek için git reflog expire --expire=now --all
git gc --prune=now
nesneleri çalıştırmak isteyebilirsiniz. (Uyarı: tamamen, tamamen geri alınamaz. Bunu yapmadan önce emin olun.)
Gıt ile Satır sonları filtre-şube düze...
Nasıl git-svn uzak bir şube getirdim s...
AngularJS - filtre boş sonuç için yer ...
Python HTML temizleyici / temizleyici ...
Ne kadar uzak bir repo için yerel bir ...