Autorka prezentacji: Barbara Litwińska
Konfiguracja
(git config)Podstawy pracy z gitem i moje pierwsze repo
(git init, status, add, rm, commit, log, diff, reset)Praca ze zdalnym repozytorium
(git clone, pull, merge, push)Ustawiamy swoje dane:
git config --global user.name „...”
git config --global user.email ...
Konfiguracja może być przechowywana w plikach:
/etc/gitconfig
~/.gitconfig
.git/config
Aby wyświetlić wszystkie ustawienia:
git config –-list
Wywołane w istniejącym katalogu utworzy podkatalog .git zawierający szkielet repozytorium
Initialized empty Git repository
Plik może znajdować się w czterech stanach:
Podglądamy repozytorium
On branch master
nothing to commit, working directory clean
(Ukryje plik secret.js)
(Spowoduje, że git zignoruje wszystkie pliki o rozszerzeniu .txt
Czas wprowadzić zmiany!
Dodanie wszystkich zmian:
git add .
Dodanie konkretnego pliku:
git add my_file
Jednak nie chcę śledzić tego pliku..
git rm --cached my_file
Jestem gotowa na zapisanie moich zmian!
git commit -m 'my first commit :-)'
git commit . -m 'my first commit'
http://xkcd.com/1296/
Wyświetlamy wszystkie commity:
git log --graph –-pretty=oneline
Co zmieniło się od ostatniej operacji commit?
Wyświetl różnice w jednej linii:
git diff –-color-words
Cofanie ostatnich commitów:
git reset HEAD~1
Ściąganie plików ze 'sceny':
git reset HEAD .
git reset HEAD my_file
Klonowanie istniejącego repozytorium:
git clone https://github.com/basial/CodeCarrotsJS.git
Dodawanie zdalnego repozytorium :
git remote add origin git@github:basial/CodeCarrotsJS.git
Wyświetlanie listy wszystkich zdalnych repo:
git remote -v
Usuwanie:
git remote remove origin
Dodajmy nasze zmiany do zdalnego repozytorium!
Pierwszy push:
git push -u origin master
Później już tylko:
git push
https://help.github.com/articles/generating-ssh-keys/
ls -al ~/.ssh
ssh-keygen -t rsa -C "your_email@example.com"
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa
Ściąganie zmian ze zdalnego repozytorium:
git pull
Co jeśli jeden plik został zmieniony zdalnie i lokalnie?