Rozdzielam repozytorium Git za pomocą opcji --subdirectory-filter gałęzi filtru, która działa świetnie, z wyjątkiem tego, że pobiera wszystko do katalogu głównego repozytorium.Filtr podkatalogu Git z istniejącą strukturą katalogów
Obecnie mam
ABC
- DEF
- GHI
- JKL
- MNO
A wynik tego polecenia:
git filter-branch -f --subdirectory-filter ABC/DEF --prune-empty -- --all
Generuje to:
GHI
JKL
Gdzie czego naprawdę chcę to:
ABC
- DEF
- GHI
- JKL
Nie widzę niczego w dokumentach Git, które pokazuje opcję filtrowania, która zachowuje (lub ustawia) strukturę katalogów i nie byłem w stanie znaleźć polecenia. Mogę uruchomić po filtrowaniu w celu zmapowania struktury jak tego chcę.
Czy to możliwe?
Pracowałem doskonale też dla mnie. Dziękujemy za przesłanie wiadomości. Dodam, że to polecenie nie zastępuje polecenia '--subdirectory-filter'; nadal to robisz. To polecenie zastępuje polecenie 'git mv * ...' zalecane przez inne dokumenty. Ale bez brzydkiego, masowego zatwierdzenia wygenerowałby 'git mv'. –
Niestety to nie działa dla mnie. Używam git-bash w systemie Windows i nie mogę powiedzieć, że nie można znaleźć pliku index.new ($ GIT_INDEX_FILE.new). Chciałbym móc skorzystać z tego rozwiązania. –
@BerinLoritsch $ GIT_INDEX_FILE jest zmienną środowiskową, którą większość używanych przeze mnie narzędzi ustawia dla ciebie; Zarówno MsysGit, jak i CygWin wraz z kilkoma wersjami git dla Windows. Jaka jest twoja dokładna konfiguracja? – JRoughan