С помощью Git Вы сможете размещать свой код на GitHub, BitBucket.
Тут понадобиться программа Git Bash, это шелл сделанный на основе Cygwin, поэтому возможно использование Unix-команд, вроде cd, ls, mkdir.
Скачать его можно на git-scm
Настройка Git
Перед началом работы, необходимо настроить программу. Нам нужно установить user.name и user.email через командную строку:
git config --global user.name "My Name" git config --global user.email "My Email" Текущие данные сохраняются в файле C:\Users\username\.gitconfig
Выводит все команды:
git config
Выводит все настройки из конфига:
git config --list
Справка по работе:
git help commit
git commit --help
Создание Git-репозитория
Инициализируем папку для Git репозитория. Это нужно сделать только один раз для каждого проекта:
cd c:/myproject // переходим в папку с проектом git init // создаём репозиторий
STATUS показывает в каком статусе находится наш репозиторий:
git status
Добавляем файлы в репозиторий (проиндексируем):
git add . // добавляем все файлы git add --all //если не указан конкретный путь в параметре будут применены ко всему дереву, даже если команда была запущена внутри подкаталога git add index.html // добавляем файл index.html git add '*.txt' // добавляем файл с расширением txt git add octofamily/octodog.txt
Делаем коммит:
git commit -m "message"
Связываем папку с удаленным репозиторием, предварительно создав его
git remote add origin https://github.com/usernamegithub/test_project.git // после этой команды, система попросит вести логин и пароль
Закачиваем код на удаленный репозиторий:
git push -u origin master // в таком виде используем только первый раз, потом используем команду без флагов git push
Для скачивания репозитория используется команда:
git pull
Получение списка произведенных изменений:
git log git log --pretty=format:"%h - %an , %ar : %s" // формат вывода: h[хеш] - an[автор] , ar[когда было сделано изменение] : s[комментарий] git log --since=2.weeks // посмотреть коммиты за последние 2 недели
Клонирование репозитория:
git clone https://github.com/user/test_project.git
Ветвление в Git
Показывает в какой ветке сейчас находимся
git branch
Добавляет новую ветку с именем branch-name
git branch branch-name
Переходим в ветку branch-name
git checkout branch-name
Объединение веток
git merge
Удаление ветки в Git
Чтобы удалить ветку в локальной рабочей копии:
git branch -d branch-name
Чтобы удалить ветку в удаленном репозитории:
git push origin --delete branch-name git push origin :branch-name
Откат изменений
git checkout -- octocat.txt
Удаление файлов
git rm file.name git rm '*.txt'
Алиасы
git config --global alias.co checkout git config --global alias.ci commit git config --global alias.st status git config --global alias.br branch git config --global alias.hist "log --pretty=format:'%h %ad | %s%d [%an]' --graph --date=short" git config --global alias.type 'cat-file -t' git config --global alias.dump 'cat-file -p'