|
Kernel Traffic Latest | Archives | People | Topics |
Wine Latest | Archives | People | Topics |
GNUe Latest | Archives | People | Topics |
| Czech |
| Home | News | RSS Feeds | Mailing Lists | Authors Info | Mirrors | Stalled Traffic |
Table Of Contents
| 1. | 8 Feb 2002 - 19 Feb 2002 | (19 posts) | Czyszczenie IDE; Psychoza wśród deweloperów |
| 2. | 11 Feb 2002 - 16 Feb 2002 | (13 posts) | Serwery HTTP w jądrze |
| 3. | 12 Feb 2002 - 14 Feb 2002 | (11 posts) | Czyszczenie /proc |
| 4. | 13 Feb 2002 - 16 Feb 2002 | (21 posts) | Praca z BitKeeperem |
| 5. | 13 Feb 2002 - 14 Feb 2002 | (6 posts) | Status LKCD |
| 6. | 14 Feb 2002 - 15 Feb 2002 | (2 posts) | Dokumentacja VFS |
| 7. | 15 Feb 2002 - 17 Feb 2002 | (7 posts) | XFS i rmap |
| 8. | 19 Feb 2002 - 20 Feb 2002 | (16 posts) | Przepychanki wokół BitKeepera |
Introduction
Przez kilka ostatnich miesięcy, wiele osób naciskało mnie, abym założył konto w paypal, aby mogli mi wysyłać datki, więc je stworzyłem. Każdy, kto chce mi wysłać trochę pieniędzy, może to zrobić na mojej stronie datków paypal.
Mailing List Stats For This Week
We looked at 1678 posts in 7176K.
There were 511 different contributors. 235 posted more than once. 187 posted last week too.
The top posters of the week were:
1. Czyszczenie IDE; Psychoza wśród deweloperów
8 Feb 2002 - 19 Feb 2002 (19 posts) Archive Link: "Czyszczenie IDE w 2.5.4-pre3"
People: Pavel Machek, Andre Hedrick, Martin Dalecki
Pavel Machek wysłał kilka łat czyszczących kod IDE w 2.5, kierując je do Jensa Axboe. Jensowi łaty się spodobały, a Pavel spytał: "Czy to ,,Wygląda dobrze, zaaplikowane'', czy raczej ,,Wygląda dobrze, życzę powodzenia przy wysyłaniu Linusowi?'' :-)." Jens odparł, że włączył łaty do swojego drzewa i powinny one trafić swoją naturalną drogą do Linusa. Jednakowoż Vojtech Pavlik wysłał swoją wersję czyszczenia kodu, znacznie bardziej ingerującą w kod. Pavlowi spodobała się ta wersja, a wówczaz Martin Dalecki wysłał łatę powodującą jeszcze dalej idące zmiany. Ta łata, z kolei, spodobała się Vojtechowi, a Pavel zasugerował wysłanie ją Jesowi czym prędzej, zanim stanie się zbyt duża.
Mniej więcej w tym miejscu Andre Hedrick wtrącił się i powiedział do Martina: "Prosiłem cię już, abyś trochę zwolnił tak, abym mógł naprawić parę rzeczy. Pisałem Ci już, że Twoje pomysły są dobre, ale przyszły zdecydowanie nie w porę. Nie wątpię, że masz jakiś plan postępowania w swojej firmie zajmującej się StartUpami, ponieważ pracujesz w spółce z niemieckim kapitałem." Martin odpowiedział:
Nie mówisz chyba poważnie? Prawda? Czyżby jakaś paranoja?
Nie umiesz sobie wyobrazić kogoś, kto już nie pracuje zawodowo jako programista, ale cały czas lubi sobie pohakować? Jeśli jesteś pod wrażeniem szybkości mojej pracy i nie umiesz sobie wyobrazić, ze to co robię, to efekt kilkugodzinnej pracy w domu, to niestety nie mogę Ci pomóc...
PS. Jeśli miałbym jakiś ukryty plan, nie wysyłałbym go z domeny evision, bo wiem co nieco o systemach pocztowych ;-). I starałbym się być uprzejmym i byłbym wazeliniarzem, a tego NA PEWNO nie robię, ty s******
Andre nie odpowiedział.
2. Serwery HTTP w jądrze
11 Feb 2002 - 16 Feb 2002 (13 posts) Archive Link: "tux oficjalnie w jądrze?"
People: Joe Sloan, John Slee, Robert Love, David Lang, Luigi Genoni
Roy Sigurd Karlsbakk spytał, czy serwer http Tux znajdzie się w końcu w głównym jądrze, a Joe Sloan odparł:
Zdziwiłbym się gdyby okazało się, że nie jest to planowane, ponieważ tux ma znacznie większe możliwości niż khttpd znajdujący się obecnie w jądrze.
Tux zdecydowanie udowodnił swoją wydajność i małe zużycie zasobów.
Sądzę także, że włączenie tuxa do głównego jądra mogłoby dopomóc w jego rozwoju, ponieważ ludzie zaczęliby sobie zdawać sprawę, jakie możliwości, tak naprawdę, daje im tux...
Ale John Slee zauważył: "zostało także pokazane, że taką samą efektywność można uzyskać w przestrzeni użytkownika (przeszukaj archiwa pod kątem ,,X15''). Większość usprawnień tuxa zostało uogólnionych i już zintegrowanych z główną linią jądra."
Joe Sloan spytał, po co w ogóle khttpd było w głównym jądrze, bo "Jeśli jakikolwiek serwer web powinien znajdować się w oficjalnym jądrze, to powinien być to tux." Robert Love powiedział, że jego zdaniem, nie ma miejsca dla khttpd w jądrze i powinien zostać usunięty. Dodał: "TUX zmienia na tyle dużo kodu, że decycja o jego włączeniu nie jest oczywista, choć warto to zrobić. Jednakże sądzę, że szybko zbliżamu się do punktu, o ile już tam nie jesteśmy, gdzie sterownik sieciowy zero-copy w przestrzeni użytkownika będzie mógł działać tak dobrze, jak TUX, nie mając przy tym jego wad. To był jeden z celów Ingo, a wiele korzyści -- sendfile itp. -- są wynikiem powstania TUXA."
Odnośnie umieszczenia khttpd w jądrze, David Lang wyjaśnił:
Linus umieścił khttpd w jądrze tuż po dodaniu obsługi sendfile, IIRC mówił coś o tym, że dodając khttpd doda się jedynie parę linii kodu, gdy będzie już sendfile.
jeśli to jest naprawdę małe (IIRC <<100 linii kodu), jest tam jeszcze ponieważ wywalenie tego jest nie warte zachodu.
Benny Sjostrand spytał, czy właściwie to ktoś używa khttpd, a Luigi Genoni odparł: "Ja używam na przykład w kilku serwisach webowych i działa dobrze i bardzo stabilnie. Ale obecnie w internecie nie ma co mówić o szybkości działania. Ale serwer jest mniej obciążony niż przy Apache."
Koniec wątku.
3. Czyszczenie /proc
12 Feb 2002 - 14 Feb 2002 (11 posts) Archive Link: "RFC: jednorodność przy nazewnictwie kluczy w /proc"
People: Mark Swanson, Cameron Simpson, H. Peter Anvin, Vince Weaver
Mark Swanson zaproponował:
Chciałbym usłyszeć różne opinie na temat ujednolicenia kluczy w hierarchii /proc względem charakteru przestrzeni. W tej chwili Documentation/filesystems.proc.txt nie sugeruje żadnych standardów nazewnictwa. Np. cat /proc/cpuinfo (część wyniku)
cpu family : 5 model : 9 model name : AMD-K6(tm) 3D+ Processor stepping : 1 cpu MHz : 400.907 cache size : 256 KB fdiv_bug : no hlt_bug : no f00f_bug : no
Zauważcie, że jest spacja pomiędzy ,,cpu'' i ,,MHz'', czy ,,cpu'' i ,,family'', a nie ma jej pomiędzy ,,fdiv'' a ,,bug'' (_).
Przyczyną, dla której sugerowałbym NIE używania spacji w tym miejscu, jest to, że czyni to łatwiejszym życie programistom, którzy parsują pozycje z /proc. Dokładniej mówiąc, programiści Javy z przyjemnością użyliby /proc/cpuinfo, ale spacja w ,,kluczu'', uniemożliwia użycie java.util.Properties.load().
Cameron Simpson odrzekł:
Osobiście, od DŁUŻSZEGO czasu domagam się, aby w /proc/* wszystkie pozycje były parsowalne, tzn.:
cpu_family=5
model=9
model_name='AMD-K6(tm) 3D+ Processor'
itp. Ilość parsującego kodu z przestrzeni użytkownika, który możnaby wyrzucić jest dość duża, a jednocześnie można by tworzyć dużo prostsze skrypty operujące na tych wartościach.
zamiast tego, to są wszystko ,,śliczne'' pliki, stworzone kodem, który powienien być w przestrzeni użytkownika, a jest w jądrze (tak, to głównie printfy, ale zawsze).
H. Peter Anvin wytknął, że on i Dan Quinlan próbowali już postępować w sposób, który wskazał Mark, wysyłając jakiś czas temu łatę, ale "inne osoby nie tylko dodały klucze ze spacjami, ale wspaniałomyślnie ,,poprawiły'' nasze ,,pomyłki''..."
Danielowi Phillipsowi spodobal się pomysł Camerona o łatwo parsowalnych parach klucz/wartość, a H. Peter odpowiedział, że jemu też się podoba ten pomysł, ale może zepsuć wiele rzeczy. Luke Burton sądził, że opiekunowie aplikacji dostaną szansę uproszczenia swojego kodu, wyrzucając dużo śmieci z procedur obsługujących /proc, ale Vince Weaver powiedział:
jako opiekun ,,linux_logo'', które ostro (i być może niemądrze) grzebie w /proc/cpuinfo i tego typu rzeczach, powiem, że raczej nie będę skakał z radości z okazji tej szansy.
Pamiętajcie, że jako opiekunowie aplikacji z przestrzeni użytkownika, musimy utrzymywać zgodność ze wszystkimi wersjami, w tym wypadku oznacza to zgodność z /proc/cpuinfo dla wszystkich architektur, i do tego wszystkich jąder wstecz do 1.2.13.
Zatem zmiana /proc/cpuinfo nie uprości kodu w żaden sposób, a tak naprawdę doda jeszcze jeden niekompatybilny z innymi specjalny przypadek.
A ponieważ jądra 2.2 i 2.4 będą obecne jeszcze przez całe wieki, to spowoduje raczej powiększenie, a nie zmniejszenie objętości kodu.
Popieram czyszczenie, o ile jest wykonane prawidłowo. W takim przypadku proszę bardzo, ale nie używajcie argumentu ,,uproszczenia kodu w przestrzeni użytkownika''... bo to kłamstwo ;)
4. Praca z BitKeeperem
13 Feb 2002 - 16 Feb 2002 (21 posts) Archive Link: "[PATCH] obsługa kolejek barier"
People: Daniel Phillips, Jens Axboe, Andreas Dilger
Jens Axboe wysłał kilka zbiorów zmian BitKeepera, a Daniel Phillips spytał: "url-e BK dają dużo informacji i są bardzo użyteczne, ale są długie i _brzydkie_! Czy można coś z tym zrobić?" Jens przyznał mu rację: "Tia, też mi się podobają. Może jeśli dowiem się jak zmusić BitKeepera, aby wypluł całą informację o zmianach, będę mógł wklejać to do maila. Przyjrzę się temu i następnym razem spróbuję tak zrobić." Andreas Dilger odrzekł:
bk send -wgzip_uu -r<rev> - > foo-<rev>.bk
To zrzuci zgzipowany i zuuencodowany zbiór zmian do pliku. Aby to odczytać, odbiorca musi zrobić jedynie ,,| bk receive [repository] -avv''.
Preferowany przeze mnie format do wysyłania CSETów BK jest pokazany poniżej. Dane CSET w tej postaci dodają może 10% objętości dla dużych łat, a w przypadku bardzo małych - podwajają rozmiar. Stworzyłem także wrapper bz64 (bzip2 + base64), który nieco zmiejsza dane CSET, ale jest to użyteczne tylko, jeśli inni deweloperzy używają tego samego wrappera.
#!/bin/sh
# Skrypt formatujący wyjście zbioru zmian BK tak, aby łatwiej było go czytać.
# Andreas Dilger <adilger@turbolabs.com> 13/02/2002
PROG=bksend
usage() {
echo "użycie: $PROG -r<rev>"}
echo -e "\tgdzie <rev> jest postaci '1.23', '1.23..', '1.23..1.27',"
echo -e "\tlub '+', aby oznaczyć ostatnią wersję"
exit 1
case $1 in
-r) REV=$2; shift ;;
-r*) REV=`echo $1 | sed 's/^-r//'` ;;
*) echo "$PROG: nie podana wersja, raczej tego nie chcesz";;
esac
[ -z "$REV" ] && usage
bk changes -r$REV
bk export -tpatch -du -h -r$REV
echo -e "\n==================================\n\n"
bk send -wgzip_uu -r$REV -
5. Status LKCD
13 Feb 2002 - 14 Feb 2002 (6 posts) Archive Link: "status LKCD w jądrze Linuksa"
People: Jeff Garzik, Matt D. Robinson
Hiro Yoshioka spytał o status projektu Linux Kernel Crash Dump, a Jeff Garzik odparł:
Podczas LinuxWorld w Nowym Jorku rozmawiałem przez kilka minut z Mattem Robinsonem(sp?) o LKCD... odniosłem wrażenie, że ostatnio nastąpiły duże postępy. Do tego pracuje nad tym kilka osób z IBM-a.
Zawsze uważałem, że Linux potrzebuje takich zrzutów o wysokiej jakości w sytuacjach awaryjnych. Jest z tego wiele korzyści, ale te, które mnie osobiście najbardziej interesują to: 1000 razy lepsze raporty błędów, ponieważ dostaniemy o wiele więcej informacji o stanie systemu w momencie awarii.
Zatem mam nadzieję, że Bogowie Pingwina spojrzą przychylnym okiem na LKCD. :)
Matt D. Robinson sprecyzował:
Rzeczywiście poczyniliśmy duży postęp...
Teraz LKCD obsługuje 2.4.17 i nie powinno być zbyt trudne, aby przenieść go do 2.5.
W przeszłości już pytałem Linusa i innych o włączenie tego do jądra, ale teraz myślę, że w 2.5 taka możliwość naprawdę zasługuje na rozważenie, zwłaszcza, że można to wkompilować w jądro nie włączając go. Czyli, ludzie, którzy chcą tego, mogą sobie to włączyć, ale Ci, którzy nie chcą, nigdy tego nie zobaczą.
Zespół programistów LKCD (w tej chwili ponad 10 inżynierów) jest gotów.
Go Taniguchi powiedział, że LKCD bardzo dobrze współpracuje z 2.4.17, oszczędza wiele czasu i jest bardzo ważny dla deweloperów. Zalecił włączenie go do głównego drzewa Linuksa.
6. Dokumentacja VFS
14 Feb 2002 - 15 Feb 2002 (2 posts) Archive Link: "[ANNOUNCE] nowa dokumentacja VFS"
People: Alexander Viro, Randy Dunlap
Alexander Viro ogłosił:
Po pierwsze, od wersji 2.5.5-pre1, jest dostępny aktualny dokument o tym jak przenosić systemy plików z 2.4 na 2.5.<najnowsze>. Lokalizacja:
Documentation/filesystems/porting
BĘDZIE on stale aktualny. Innymi słowy, prześlij zmianę API, która będzie wymagała zmian w systemie plików bez odpowiedniej łaty na ten plik, a ja cię dopadnę i skrzywdzę. Poważnie skrzywdzę.
Ten sam dokument zawiera to ,,co potrzebuję zmienić, by mój system plików nie znajdujący się w drzewie był aktualny''. Śledźcie zatem zmiany.
Zwykle, jeśli zdarzą się zmiany API, osoba, która je robi jest odpowiedzialna za uaktualnianie wszystkich systemów plików w drzewie lub, w ostateczności, ostrzeganie ludzi o popsuciu. Podając listę zepsutych systemów plików.
Aktualnie lista składa się umsdos i intermezzo. Ten pierwszy zostanie naprawiony po kolejnej serii porządków w file_system_type. Drugi jest ofiarą zmian w schemacie blokowania. Pomoc ludziom od intermezzo to niezły pomysł - najlepiej pewnie w formie, która zredukowałaby zależność od bebechów VFSa.
Nowy schemat blokowania jest opisany w Documentation/filesystems/directory-locking. Szczegółowo i z dowodem poprawności.
To nie zmienia tak gwarancji oddzielności systemów plików, zatem, jeśli tylko nie zajmują się one blokowaniem na nietrywialne sposoby (intermezzo był jedynym takim przykładem w drzewie), to nie powinny wymagać zmian. Niektóre rzeczy mogą stać się nawet prostsze (to znaczy w niektórych przypadkach własne blokowanie staje się nadmiarowe i może być zaniechane). Powtórzę, aby poznać szczegóły zmian zobaczcie Documentation/filesystems/porting.
Documentation/filesystems/Locking powoli staje się akutalne. Ciągle brakuje opisu kilku metod na superbloku i naprawdę byłbym wdzięczny, gdyby goście, którzy je wprowadzali udokumentowali je.
Randy Dunlap odpowiedział:
Dobry kierunek, Al!
Wszyscy: Czy istnieją jakieś strony w sieci o systemach plików w Linuksie, coś takiego jak Rik ma dla MM/VM?
Tu jest początek, jeśli ktoś chciałby tego używać lub coś dodać:
Nie było odpowiedzi.
7. XFS i rmap
15 Feb 2002 - 17 Feb 2002 (7 posts) Archive Link: "XFS + rmap?"
People: Rik van Riel, Shawn Starr
Jim Dennis zapytał czy ktoś zanotował problemy przy używaniu XFS z nowymi łatami rmap dotyczącymi podsystemu pamięci wirtualnej, a Rik van Riel odpowiedział:
Shawn Starr używał tej kombinacji.
Jedyny problem jaki znalazł to taki, że XFS i -rmap zmieniają te same pliki z kodem źródłowym, więc musiał łączyć część kodu ręcznie.
Shawn Starr dodał, że wypuszczał łatkę, która pozwalała to łatwo zrobić. Jim zapytał gdzie można znaleźć tę łatkę, a Shawn odesłał go do http://xfs.sh0n.net/2.4. Kilka dni później ogłosił: "-shawn6 już jest. usunięte pre9-ac4 psuje quotę w XFS /EXT2/3."
8. Przepychanki wokół BitKeepera
19 Feb 2002 - 20 Feb 2002 (16 posts) Archive Link: "[PATCH *] skurczenie nowej struktury page"
People: Rik van Riel, Linus Torvalds, Larry McVoy, Andreas Dilger, Ed Tomlinson, Jeff Garzik
Rik van Riel posłał łatkę i dodał:
Dostosowałem też to do twoich ostatnich zmian z linux.bkbits.net, więc powinieneś móc to po prostu wsadzić do twojego drzewa z:
bk://linuxvm.bkbits.net/linux-2.5-struct_page
Możesz także przejrzeć łatę pod adresem:
Linus Torvalds odpowiedział:
Przy okazji, _proszę_ nie róbcie takich rzeczy jak zmienianie bitkeeperowego pliku etc/config. Właśnie teraz twoje pierwsze zbiory zmian są czymś, czego na pewno nie chcę w moim drzewie.
Oczywiście, mogę zrobić ,,bk cset -x'' na tym cholerstwie, ale faktem jest, że nie chcę mieć zupełnie niepotrzebnych ,,powrotów'' w moim drzewie, czy innych podobnych rzeczy. To jest po prostu głupie i powoduje, że historia wersji wygląda nawet mniej czytelnie niż naprawdę jest..
Rik odparł:
Woooops, probowałem zrobić coś sensownego z tym co widać na linuxvm.bkbits.net, ale nie zdawałem sobie sprawy, że będziesz to wciągał z powrotem do swojego drzewa ;((((
Postaram się nie zrobić więcej tego błędu.
Później dodał:
Ponieważ bk nie wydaje mi się pozwalać usuwać rzeczy z historii (prawdopodobnie słusznie), to sądzę, że możesz także zaimportować następującą łatę:
http://surriel.com/patches/2.5/2.5.5-p2-struct_page5
Efektem ubocznym tej łatki jest redukcja całości do jednego zbioru zmian, co nie jest tak do końca złe, jako że nie potrzebujemy zaśmiecać historii Linuksa wszystkimi mniej ważnymi zmianami tej łatki ;)
W innym miejscu, wątku o temacie: [PATCH] struktura page, nowe drzewo w bk, Rik napisał:
Usunąłem z bitkeepera stare (wadliwe) drzewo ze zmianami struktury page i umieściłem nowe w tym samym miejscu... ze wszystkimi zmianami tej struktury umieszczonymi w jedbym zbiorze zmian z komentarzem.
Możesz dokonać synchronizacji z bk://linuxvm.bkbits.net/linux-2.5-struct_page i zobaczysz, że nie ma tam już tej głupiej zmiany w etc/config.
Jeśli wolisz poczekać jeszcze jedną wersję z dodaniem tych zmian, poczekać ze względu na zmiany dokonane przez Ingo i Arjana w pte_highmem, to zrozumiem i po prostu będę cię dręczył przy następnej wersji albo w ogóle kiedyś ;)
Larry McVoy odpowiedział:
Ponieważ obydwaj tańcujecie wokół BK, to mam do was pytanie: mogę sobie wyobrazić, że tego typu cofanie się i posuwanie naprzód będzie się czasem zdarzało, ktoś robi zmianę, a potem Linus (albo ktokolwiek) mówi ,,nie ma mowy'' i deweloper wycofuje się, usuwa zmianę i ją powtarza. To jest w porządku w przypadku Linusa i Rika, bo Linus trzęsie zbiorem zmianem tak samo jak Rik, ale co z innymi, którzy coś wyciągnęli? Te zbiory zmian krążą teraz gdzieś po sieci czekając tylko na wrzucenie z powrotem do drzewa.
To jest sedno moich obiekcji związanych z tematem ,,zmiany porządku wydarzeń'', który podejmowaliśmy chwilę temu. Możesz zmieniać porządek czego tylko chcesz, ale istnieją kopie niektórych wydarzeń, które wypływają gdzieś na zewnątrz, ale mogą wrócić.
Dawno temu odbyła się dyskusja na temat czarnej listy zbiorów zmian. Pomysł polegał na tym, że w chwili gdy ktoś chciałby zmienić porządek/coś przepisać/cokolwiek, a twoje zmiany były wyciągnięte/włączone/cokolwiek, to byłoby dobrze móc stwierdzić, być może na jakiejś liście, czy ma się zbiory zmian ze śmietnika.
Moglibyśmy mieć opcję --blacklist, która cofałaby zmiany zaznaczając jednoczęsńie, że ,,nazwy'' wycofywanych zmian powinny być pamiętane w pliku BitKeeper/etc/blacklist. Następny przygotowywany zbiór zmian sprawdzałby ten plik. Warto zauważyć, że każdy zbiór zmian ma unikatową nazwę, która jest używana wewnętrznie, coś na kształt numerów i-węzłów plików. Zatem możemy zapamiętywać te nazwy. Wtedy, jeśli wykonujesz pull albo ktoś robi push, przychodzące zbiory zmian mogą być porównywane z czarną listą i usuwane, gdy zostaną na niej znalezione.
Myślicie, że to byłoby użyteczne? Czy używalibyście tego, gdyby było dostępne?
Andreas Dilger spytał: "co się dzieje z osobą, która pierwsza zrobi ,,pull'' zbioru zmian (właśnie wstawianego na czarną listę)? Jeśli to się dzieje na repozytorium, w którym żyje oryginalny zbiór zmian, to czy zbiór zmian z czarnej listy będzie wycofany i zastąpiony czymś innym?" A Rik napisał: "To jest dobre pytanie. Nie odpowiedziałem wcześniej Larry'emu, bo nie mogłem sobie wyobrazić implikacji czarnej listy i tego jak to by mogło działać..."
W innym miejscu także Ed Tomlinson odpowiedział Larry'emu, pisząc: "Moim zdaniem pomysł cset -x (będąc użytecznym) jest z gruntu zły. Jego wynikiem jest to, że musimy rozważać pomysły takie jak ten z czarną listą. Proponowałbym w zamian undo -x, które generowałoby zbiór zmian odwrotny to następującego po -x. To może prowadzić do konfliktów - a te mogą być rozwiązane na sposób bk. Jeśli bk obsługiwałoby ?złe? zbiory zmian w ten sposób, nie byłoby potrzeby posiadania czarnych list - to jest pełniejsze rozwiązanie, bo zawsze możesz użyć undo -x. " Jeff Garzik odparł: "Jasne, jeśli zmiany są odpowiednio podzielone, to nie powinieneś potrzebować tego robić... W idealnej sytuacji łatwiej Linusowi akceptować lub odrzucać ,,bk pull'' w całości. Wtedy musiałby tylko zrobić ,,bk unpull''" Larry także odpowiedział Edowi, mówiąc:
Po pierwsze, cset -x ma funkcjonalność równoważną do tego co nazwałeś undo -x. Robią to samo. Po drugie, cset -x jest _znacznie_ lepsze. Działa tak samo bez wprowadzania nowych diffów do historii. Weź sobie testowe drzewo, utwórz zbiór zmian, sklonuj to drzewo, zrób cast -x na zbiorze zmian i diffa na plikach historii wersji. Zobaczysz wtedy coś takiego:
^As 00000/00000/00455
^Ad D 1.32 02/02/20 09:50:05 lm 33 32
^Ax 32
^Ac Exclude
^AcC
^AcK50774
^Ae
Linijka ,,^Ax 32'' mówi ,,wyłącz zmianę, której numer seryjny to 32''. Na pliku nie ma żadnych odwrotnych diffów. Znacznie ładniej. Łączenia dzialają tak jak to, zawierają jedynie delty gałęzi.
Wszytko to gubi prawdziwy problem - Linus nie chce mieć historii wersji zaśmieconej czymś takim:
Pomysł 1.
Usuń pomysł 1.
Pomysł 2.
Usuń pomysł 2.
Potrzebujemy jakiegoś sposobu, aby pozwolić zmianom dostawać się do sytemu tak, by inni mogli je przeglądać, testować, łączyć z własnymi rzeczami i testować, itp. Ale gdy oni zechcą coś zrobić, musimy mieć sposób na powiedzenie innym ludziom, jakie są ich zbiory zmian.
Jestem otwarty na propozycje, to jest znacznie trudniejszy problem niż się wydaje, ze względu na fakt, że historie wersji są wszędzie replikowane, być może uzupełnione lokalnymi danymi. W odróżnieniu od CVS nie ma jednego miejsca do którego można pójść, wyedytować pliki RCS i wyczyścić niektóre zmiany.
Sharon And Joy
Kernel Traffic is grateful to be developed on a computer donated by Professor Greg Benson and Professor Allan Cruse in the Department of Computer Science at the University of San Francisco. This is the same department that invented FlashMob Computing. Kernel Traffic is hosted by the generous folks at kernel.org. All pages on this site are copyright their original authors, and distributed under the terms of the GNU General Public License version 2.0. |