Jeśli nie jesteś jednym z internetowych sklepów internetowych bez zespołu do współpracy, doświadczyłeś frustracji związanej z udostępnianiem plików. Bez względu na to, jak bardzo się starasz, gdy wiele osób pracuje nad jednym projektem bez systemu kontroli wersji, sytuacja staje się chaotyczna .
Jeśli pracujesz z programistami nad budowaniem i wdrażaniem stron internetowych, scalanie szablonów front-end i funkcjonalności back-end może być przerażającą czarną dziurą.
Problemy, takie jak nadpisywanie, utracone pliki i zbyt często spotykane zjawisko "praca nad poprzednią wersją", stale się pojawiają . Po dodaniu funkcjonalności back-end do szablonów, przeraża ich dotykanie w obawie przed zerwaniem czegoś, co programista spędził dużo czasu w drodze do pracy.
Ponadto, nawet jeśli masz wspólne repozytorium, które wszyscy wyciągają z kursów, to przynajmniej jeden członek twojego zespołu zapomniał pobrać najnowsze pliki i zamierza wysadzić w powietrze najnowsze dodatki.
W tym artykule opiszę Git, doskonały system kontroli wersji .
Kontrola wersji (znana również jako Kontrola wersji lub Zarządzanie kontrolą źródła ) to świetny sposób na rozwiązanie problemu z dzieleniem się plikami.
Podstawowa koncepcja jest taka: istnieje jedno główne repozytorium dla wszystkich plików projektu . Członkowie zespołu sprawdzają pliki, wprowadzają zmiany, a następnie ponownie je sprawdzają (lub zatwierdzają ). System kontroli wersji (VCS) automatycznie odnotowuje, kto zmienił pliki, kiedy zostały zmienione, a co z nimi było nowe lub inne.
Prosi również o napisanie małej notatki na temat zmiany, aby wszyscy uczestnicy projektu znali na pierwszy rzut oka, co zrobiliście i dlaczego. Każdy plik będzie miał historię zmian, więc możesz łatwo wrócić do poprzedniej wersji dowolnego pliku, jeśli coś pójdzie nie tak.
Dobry VCS pozwala również scalać zmiany w tym samym pliku . Jeśli Ty i inna osoba pracujesz lokalnie na tym samym pliku w tym samym czasie, po ponownym przesłaniu tych plików do głównego repozytorium system połączy oba zestawy zmian, aby utworzyć nowy i w pełni aktualny plik. Jeśli podczas łączenia pojawią się jakiekolwiek konflikty, podświetli je dla ciebie.
Prawdopodobnie używasz teraz bardzo prymitywnego VCS, aby Twoje pliki były proste. Jeśli jesteś projektantem, wygląda to tak:
Działa to wystarczająco dobrze dla PSD i innych dużych plików binarnych, które tak naprawdę nie nadają się do VCS. Ale jest o wiele lepszy sposób, aby to zrobić, zarządzając kodem źródłowym witryny.
Nawet jeśli nie pracujesz z zespołem, kontrola wersji może być ratunkiem . Tworzenie kopii zapasowych plików to jedna z najłatwiejszych rzeczy, które możesz zrobić, aby uratować się przed utratą pracy lub koniecznością rozpoczęcia od nowa.
Idea VCS wydaje się początkowo zniechęcająca, zwłaszcza, że większość dokumentacji została napisana przez programistów i dla nich . Ale gdy wykonasz ruch, aby włączyć go do obiegu pracy, okaże się, że nie jest tak twardy, jak to wygląda.
OK, więc teraz możesz zobaczyć, dlaczego system kontroli wersji jest niezbędny dla twojego zespołu internetowego. Jeśli zrobisz trochę Googling zobaczysz, że istnieje wiele opcji, w tym SVN, Mercurial, CVS, Bazaar i Git. Każdy z nich może być dobrym rozwiązaniem dla twoich potrzeb i zachęcam cię do zrobienia badań przed wyborem VCS. W tym artykule skupię się na Git , tym, którego używam codziennie. To "wschodząca gwiazda" , która zyskała popularność dzięki silnemu fanowi Linuksa, GitHub i Szyny społeczność.
Git to darmowy open source System kontroli wersji pierwotnie stworzony przez Linus Torvalds na rozwój jądra Linux. Linus to bardzo inteligentny facet; kiedy postanawia rozwiązać problem, nie robi sobie zamieszania. Jednym z wielkich wyróżników Gita jest to, że w przeciwieństwie do SVN i CVS jest to rozproszony system kontroli wersji . Oznacza to, że każdy użytkownik ma pełną kopię danych repozytorium przechowywanych lokalnie na swoim komputerze. Co jest w tym wspaniałego? Kilka rzeczy:
Git ma nieco ostrzejszą krzywą uczenia się niż SVN , ale opłaca się. Zastanów się, jak podekscytowani będą Twoi znajomi z programisty, gdy powiesz im, że korzystasz z nowej siły, jaką jest Git! Z całą powagą nie sądzę, aby krzywa uczenia się była tak stroma. SVN było dla mnie równie mylące na początku, i natrafiłem na więcej problemów z dnia na dzień, kiedy go używam.
Instalacja Gita nie jest zabawą i grami. Miałem szczęście, że mam kompetentnego programistę gotowego do pomocy, ale w Internecie jest mnóstwo zasobów, które pozwolą ci przejść przez to. Będzie działał na komputerach PC, Mac lub Linux, chociaż instalacja dla Linuksa i OSX jest znacznie łatwiejsza niż dla Windows.
Możesz pobrać najnowszą wersję Git tutaj Gdy już będziesz miał pliki, spróbuj tego Szybka porada aby zacząć pracę z procesem instalacji. W przypadku użytkowników systemu Windows krok po kroku wizualny przewodnik powinien być pomocny. Użytkownicy komputerów Mac, wypróbuj ten przewodnik GitHub
Po zainstalowaniu Git możesz stworzyć swoje repozytorium . Aby zmienić istniejący folder w repozytorium Git, użyj następujących poleceń w oknie Terminala lub Wiersza polecenia:
cd path/to/projectgit initgit add .git commit
To, co Git musi zrobić, to:
Jeśli nie znosisz wiersza poleceń, możesz to zrobić również za pomocą GUI Git . To nie jest najładniejsza rzecz, jaką kiedykolwiek widziałeś, ale jest tam, jeśli jej potrzebujesz.
Obecnie używam Git na komputerze Mac do pracy z aplikacją internetową z wieloma programistami stron. Mamy wersję "master" kodu, do którego przenosimy nasze pliki, i każdy z nich wykonuje lokalnie pełną kopię. Każdego dnia mój przepływ pracy przebiega mniej więcej tak:
Wszystkie te czynności można wykonać łatwo w oknie Terminala , ale jestem wizualną dziewczyną. Z tego powodu używam GitX , Git gui dla OSX , aby zrobić moje zatwierdzenia. Ciągle pcham i przeciągam Terminal, ale GitX ułatwia mi organizowanie moich zobowiązań i objęciem głowy tym, co robię.
U góry pokazuje, jakie zmiany zostały wprowadzone w plikach. W lewym dolnym rogu znajduje się lista nieobjętych zmianami . Aby je zatwierdzić, przeciągnij jeden lub więcej plików do obszaru "Zmiany etapowe" po prawej stronie, wpisz swój komunikat zatwierdzenia i naciśnij przycisk Zatwierdź.
Jeśli przejdę do widoku drzewa, widzę, co zostało przekazane do repozytorium. Jeśli moje pliki nie były aktualne w plikach głównych, zielone i niebieskie tagi na górze byłyby niezsynchronizowane. GitNub oferuje podobny interfejs w stylu Mac.
Jest też świetny Pakiet TextMate dostępny. Dzięki niemu możesz naciskać, ciągnąć, zatwierdzać i wykonywać więcej bez opuszczania TextMate. Jest niezwykle wydajny.
Powyżej: Zack Rusin's Git Cheat Sheet
Wciąż jestem nowicjuszem w Git, więc podrapałem się tylko o to, co możesz z tym zrobić, ale zdecydowanie widziałem światło, jeśli chodzi o kontrolę wersji i cieszę się, że w końcu dotarłem do wóz dla orkiestry.
Aby dowiedzieć się więcej o korzystaniu z Git, sprawdź te wspaniałe zasoby:
Poznajemy Git
Wpis w Wikipedii na Git
Dlaczego Git jest lepszy niż X
TED Linusa Torvalda o Git
Wycieczka po Git: podstawy
Gotowy Git
37 Sygnały Git Resources
Git For The Lazy
Instrukcja obsługi Git
Gaggle of Git Tips
GitHub's Git Cheat Sheet
Git Magic
Kontrola wersji dla projektantów
Wizualny przewodnik po kontroli wersji
Wpis w Wikipedii dotyczący kontroli wersji
Wybór systemu kontroli wersji rozproszonej
Zastanawiam się, co robi ten przycisk (lista osobna)
Napisany specjalnie dla WDD przez Mindy Wagner. Jest projektantką stron internetowych w Viget Labs i przez ponad 8 lat pracowała zarówno w druku, jak iw projektowaniu stron internetowych. Ukończyła studia z zakresu Elektronicznej Sztuki Medialnej i Komunikacji w Instytucie Politechnicznym Rensselaer.
Czy używasz Git lub innego oprogramowania do kontroli wersji? Podziel się z nami swoim doświadczeniem!