четверг, 11 апреля 2013 г.
GIT Cheat
Основные команды
GIT INIT (CREATE в SVN) - Создать хранилище файлов в Git
git init
GIT CLONE (CHECKOUT в SVN) - Выгрузка файлов из хранилища Git на локальный компьютер
git clone ssh://user@domain.com/repo.git
GIT STATUS - Посмотреть статус внесенных изменений
git status
GIT ADD . - Пометка файлов и папок для будущего добавления в хранилище в Git
git add .
Другой пример
git add -p my_file.txt
GIT RM (DELETE в SVN) - Пометка файлов и папок для будущего удаления из хранилища SVN
git rm file_or_directory_inside_my_project_folder
GIT DIFF - Посмотреть (сравнить) внесенные в проект изменения
Показать различия между текущей рабочей директорией и той же директорией в хранилище
git diff
GIT COMMIT -A (COMMIT в SVN) - Отправка (добавление) внесенных изменений из локальной папки в хранилище Git
git commit -a
Другой пример
git commit
GIT PULL (UPDATE в SVN) - Выгрузка последней версии файлов из хранилища Git с целью обновления локальных файлов и их замены на файлы из хранилища
git pull
Другой пример
git checkout rev
git checkout prevbranch
GIT LOG - Посмотреть кто еще переносил свои изменения в хранилище GIT
git log
Другой пример
git log -p my_file.txt
GIT TAG (COPY в SVN) - Тэгирование (копирование) и создание отдельных версий проекта в хранилище Git
Тэги создают отдельные копии проекта для будущих изменений.
В директори tags создается виртуальная копия проекта.
git tag -a my_tag_name
===============================================================
Дополнительные команды
GIT CHECKOUT (REVERT в SVN) - Отменить внесенные изменения
git checkout
===============================================================
GIT COMMANDS SUMMARY
0. BASICS
master - default development branch
origin - default upstream repository
HEAD - current branch
HEAD^ - parent of HEAD
HEAD~4 - the great-great grandparent of HEAD
1. CREATE
FROM EXISTING DATA
cd ~/projects/myproject
git init
git add .
FROM EXISTING REPOSITORY
git clone ~/existing/repository ~/new/repository
git clone git://host.org/project.git
git clone ssh://you@host.org/project.git
2. BROWSE
SHOW FILES CHANGED IN LOCAL WORKING DIRECTORY
git status
SHOW CHANGES TO TRACKED FILES
git diff
SHOW WHAT CHANGES BETWEEN FILE 1 AND FILE 2
git diff file1.txt file2.txt
SHOW HISTORY OF CHANGES
git log
SHOW HISTORY OF CHANGES FOR FILE WITH DIFFS
git log -p file.txt /some/directory/
SHOW WHO CHANGED WHAT AND WHEN IN A FILE
git blame file.txt
SHOW COMMIT IDENTIFIED BY ID
git show 1467
SHOW FILE FROM A SPECIFIC COMMIT
git show 1467:file.txt
SHOW ALL LOCAL BRANCHES
git branch
3. CHANGE
4. REVERT
RETURN TO THE LAST COMMITTED STATE
git reset --hard
REVERT THE LAST COMMIT
git revert HEAD
REVERT THE SPECIFIC COMMIT
git revert 1467
FIX THE LAST COMMIT
git commit -a --amend
CHECKOUT THE VERSION OF A FILE
git checkout 1467 file.txt
5. UPDATE
FETCH LATEST CHANGES FROM ORIGIN UPSTREAM REPOSITORY
git fetch
PULL LATEST CHANGES FROM ORIGIN UPSTREAM REPOSITORY
git pull
APPLY A PATCH THAT SOMEONE SENT TO YOU
git am -3 patch.mbox
6. BRANCH
SWITCH TO THE BRANCH
git checkout 1467
MERGE BRANCH 1 INTO BRANCH 2
git checkout branch2
git merge branch1
CREATE BRANCH NAMED SOMEBRANCH BASED ON HEAD
git branch somebranch
CREATE BRANCH NEWBRANCH BASED ON BRANCH OTHERBRANCH AND SWITCH TO IT
git checkout -b newbranch otherbranch
DELETE BRANCH
git branch -d somebranch
7. PUBLISH
COMMIT ALL YOUR LOCAL CHANGES
git commit -a
PREPARE A PATCH FOR OTHER DEVELOPERS
git format-patch origin
PUSH CHANGES TO ORIGIN
git push
MARK A VERSIION / MILESTONE
git tag v1.0
RESOLVE MERGE CONFLICTS
TO VIEW MERGE CONFLICTS
git diff
git diff --base file.txt
git diff --ours file.txt
git diff --thirs file.txt
TO DISCARD CONFLICT PATCH
git reset --hard
git rebase --skip
AFTER RESOLVING CONFLICTS, MERGE WITH
git add conflict_file.txt
git rebase --continue
Подписаться на:
Комментарии к сообщению (Atom)

Комментариев нет:
Отправить комментарий