|
| 1 | +# Pojęcia |
| 2 | + |
| 3 | +Poniższe pojęcia są niezbędne do zrozumienia dokumentacji API. Będą się do nich odwoływać w całości, wróć do tej strony, aby uzyskać szczegółowe wyjaśnienia. |
| 4 | + |
| 5 | +Jeśli jesteś tu nowy, zacznij od [Poradnik wprowadzający][quick-start-docs]. |
| 6 | + |
| 7 | +## Vinyl |
| 8 | + |
| 9 | +Vinyl to obiekt metadanych opisujący plik. Główne właściwości instancji Vinyl to `path` i `contents` - podstawowe aspekty pliku w systemie plików. Obiekty Vinyl mogą być używane do opisywania plików z wielu źródeł - w lokalnym systemie plików lub dowolnej opcji zdalnego przechowywania. |
| 10 | + |
| 11 | +## Adaptery Vinyl |
| 12 | + |
| 13 | +Chociaż Vinyl zapewnia sposób na opisanie pliku, potrzebny jest sposób na dostęp do tych plików. Każde źródło pliku jest dostępne za pomocą adaptera Vinyl. |
| 14 | + |
| 15 | +Adapter udostępnia: |
| 16 | +* Metoda z podpisem `src (globs, [opcje])` i zwraca strumień, który produkuje obiekty Vinyl. |
| 17 | +* Metoda z podpisem `dest (folder, [opcje])` i zwraca strumień, który zużywa obiekty Vinyl. |
| 18 | +* Wszelkie dodatkowe metody specyficzne dla ich nośnika wejścia / wyjścia - takie jak metoda `symlink`, którą zapewnia `winyl-fs`. Powinny zawsze zwracać strumienie, które produkują i / lub zużywają obiekty Vinyl. |
| 19 | + |
| 20 | +## Zadania |
| 21 | + |
| 22 | +Każde zadanie gulp to asynchroniczna funkcja JavaScript, która albo przyjmuje wywołanie zwrotne z pierwszym błędem, albo zwraca strumień, obietnicę, emiter zdarzeń, proces podrzędny lub observable. Z powodu pewnych ograniczeń platformy zadania synchroniczne nie są obsługiwane. |
| 23 | + |
| 24 | +Aby uzyskać bardziej szczegółowe wyjaśnienie, patrz [Tworzenie zadań][creating-tasks-doc]. |
| 25 | + |
| 26 | +## Globs |
| 27 | + |
| 28 | +Glob jest ciągiem literałów i / lub symboli wieloznacznych, takich jak `*`, `**` lub `!`, używanych do dopasowania ścieżek plików. Globbing to czynność polegająca na lokalizowaniu plików w systemie plików przy użyciu co najmniej jednego globu. |
| 29 | + |
| 30 | +Jeśli nie masz doświadczenia z globami, zobacz [Wyjaśnianie Globs][explaining-globs-docs]. |
| 31 | + |
| 32 | +## Glob base |
| 33 | + |
| 34 | +Glob base - czasami nazywany globem parent - to segment ścieżki przed znakami specjalnymi w ciągu globu. Jako taka, globalną bazą `/src /js/**. Js` jest `/src/js/`. Wszystkie ścieżki pasujące do globu mają tę samą bazę globalną - ten segment ścieżki nie może być zmienny. |
| 35 | + |
| 36 | +Instancje Vinyl generowane przez `src ()` są konstruowane z ustawieniem glob base jako ich właściwości `base`. Po zapisaniu do systemu plików za pomocą `dest ()`, `base` zostanie usunięte ze ścieżki wyjściowej, aby zachować struktury katalogów. |
| 37 | + |
| 38 | +Aby uzyskać więcej szczegółowych informacji, zobacz [glob-parent][glob-parent-external] repository. |
| 39 | + |
| 40 | +## File system stats |
| 41 | + |
| 42 | +Metadane pliku są dostarczane jako instancja węzła [`fs.Stats`][fs-stats-external]. Jest dostępny jako właściwość `stat` w twoich instancjach Vinyl i używany wewnętrznie do ustalenia, czy obiekt Vinyl reprezentuje katalog lub dowiązanie symboliczne. Po zapisaniu w systemie plików uprawnienia i wartości czasu są synchronizowane z właściwością `stat` obiektu Vinyl. |
| 43 | + |
| 44 | +## File system modes |
| 45 | + |
| 46 | +Tryby systemu plików określają, jakie uprawnienia istnieją dla pliku. Większość plików i katalogów w twoim systemie plików będzie miała dość permisywny tryb, pozwalający gulpowi na odczyt / zapis / aktualizację plików w twoim imieniu. Domyślnie gulp tworzy pliki z tymi samymi uprawnieniami, co uruchomiony proces, ale możesz skonfigurować tryby za pomocą opcji w `src ()`, `dest ()` itp. Jeśli masz problemy z uprawnieniami (EPERM), sprawdź tryby plików. |
| 47 | + |
| 48 | +## Moduły |
| 49 | + |
| 50 | +Gulp składa się z wielu małych modułów połączonych ze sobą w celu zapewnienia spójnej pracy. Używając [semver][semver-external] w małych modułach, możemy wydać poprawki błędów i funkcje bez publikowania nowych wersji gulp. Często, gdy nie widać postępu w głównym repozytorium, praca jest wykonywana w jednym z tych modułów. |
| 51 | + |
| 52 | +Jeśli masz problemy, sprawdź, czy bieżące moduły zostały zaktualizowane za pomocą polecenia `npm update`. Jeśli problem będzie się powtarzał, otwórz problem w indywidualnym repozytorium projektu. |
| 53 | + |
| 54 | +* [undertaker][undertaker-external] - the task registration system |
| 55 | +* [vinyl][vinyl-external] - the virtual file objects |
| 56 | +* [vinyl-fs][vinyl-fs-external] - a vinyl adapter to your local file system |
| 57 | +* [glob-watcher][glob-watcher-external] - the file watcher |
| 58 | +* [bach][bach-external] - task orchestration using `series()` and `parallel()` |
| 59 | +* [last-run][last-run-external] - tracks the last run time of a task |
| 60 | +* [vinyl-sourcemap][vinyl-sourcemap-external] - built-in sourcemap support |
| 61 | +* [gulp-cli][gulp-cli-external] - the command line interface for interacting with gulp |
| 62 | + |
| 63 | + |
| 64 | +[quick-start-docs]: ../getting-started/1-quick-start.md |
| 65 | +[creating-tasks-doc]: ../getting-started/3-creating-tasks.md |
| 66 | +[explaining-globs-docs]: ../getting-started/6-explaining-globs.md |
| 67 | +[undertaker-external]: https://github.com/gulpjs/undertaker |
| 68 | +[vinyl-external]: https://github.com/gulpjs/vinyl |
| 69 | +[vinyl-fs-external]: https://github.com/gulpjs/vinyl-fs |
| 70 | +[glob-watcher-external]: https://github.com/gulpjs/glob-watcher |
| 71 | +[bach-external]: https://github.com/gulpjs/bach |
| 72 | +[last-run-external]: https://github.com/gulpjs/last-run |
| 73 | +[vinyl-sourcemap-external]: https://github.com/gulpjs/vinyl-sourcemap |
| 74 | +[gulp-cli-external]: https://github.com/gulpjs/gulp-cli |
| 75 | +[semver-external]: https://semver.org |
| 76 | +[fs-stats-external]: https://nodejs.org/api/fs.html#fs_class_fs_stats |
| 77 | +[glob-parent-external]: https://github.com/es128/glob-parent |
0 commit comments