Oczyszczenie wszystkich plików nie pozbywa się historii. Musisz najpierw utworzyć gałąź, która nie ma historii, a następnie dodać pliki konfiguracyjne. Obecnie git checkout
ma opcję --orphan
, która tworzy gałąź bez historii. Poniżej znajduje się informacja o możliwości --orphan
:
--orphan < new_branch>
Utwórz nowy oddział sierota o imieniu < new_branch>, zaczęło się od < start_point> i włączyć do niego. Pierwsze zobowiązanie dokonane w tej nowej filii nie będzie miało rodziców i będzie korzeniem nowej historii całkowicie odłączonej od wszystkich innych gałęzi i zobowiązań.
Indeks i drzewo robocze są dostosowane tak, jakby poprzednio uruchomić "git checkout < start_point>". Dzięki temu możesz rozpocząć nową historię, która rejestruje zestaw ścieżek podobnych do < punkt_początkowy> przez łatwe uruchomienie "git commit -a", aby dokonać zatwierdzenia root.
Może to być przydatne, gdy chcesz opublikować drzewo z zatwierdzenia bez ujawniania jego pełnej historii. Możesz to zrobić, aby opublikować gałąź projektu o otwartym źródle, której bieżące drzewo jest "czyste", ale którego pełna historia zawiera zastrzeżone lub w inny sposób obciążone fragmenty kodu.
Jeśli chcesz uruchomić rozłączoną historię, która rejestruje zestaw ścieżek, który jest całkowicie inny niż < punkt_początkowy>, to powinieneś wyczyścić indeks i działające drzewo zaraz po utworzeniu gałęzi osieroconej, uruchamiając "git rm -rf. " z najwyższego poziomu roboczego drzewa. Później będziesz gotowy, aby przygotować nowe pliki, zasiedlać drzewa pracę, kopiując je z zewnątrz, wyodrębnianie archiwum itp
Oto link do dokumentacji checkout. Możesz również uruchomić git help checkout
.
Po utworzeniu oddziału bez historii, to po wypchnięciu go na serwer również nie będzie mieć tej historii. FWIW, pomaga mi myśleć o git push
jako "sprawić, by zdalna gałąź wyglądała tak samo jak moja lokalna". Więc jeśli masz historię i pchasz, to będzie miała historię. Jeśli tego nie zrobisz, wciśnięta gałąź nie będzie.
To wygląda bardzo podobnie: http://stackoverflow.com/questions/1384325/in-git-is-there-a-simple-way-of-introducing-an-unrelated-branch-to -a-repozytorium – Mark
@ Mark podziękowania, że robi to, czego potrzebuję. – AoeAoe