Tortoise git for windows как работать

Обновлено: 02.07.2024

  1. Устанавливается putty putty.zip. Распаковываем архив. Понадобятся как минимум plink, puttygen. Можно этот шаг пропустить, поскольку необходимые программы входят в комплект TortoiseGit. Но putty очень мощная программа и ее использование никогда не будет лишним.
  2. Скачиваем и устанавливаем TortoiseGit - https://code.google.com/p/tortoisegit/. Это мощная графическая среда управления вашими репозиториями. Через нее очень удобно грузить любые файлы с вашего компьютера в любые репозитории (будь то локальные, либо удаленные) При установке выбираете SSH клиент TortoiseGitPlink. Это программа Plink из состава пакета putty, которая устанавливает SSH соединение с удаленным центральным репозиторием (для защищенного и авторизованного соединения).
  3. Устанавливается Git из проекта http://git-scm.com/download/win. Выбрать опции при установке "Git Bash here", "Use Git from the Windows Command Prompt", "Use (Tortoise)Plink" – там должен быть указан путь до программы plink, например C:\Program Files\TortoiseGit\bin\TortoiseGitPlink.exe (plink устанавливается либо вместе с tortoisegit, либо с putty). Все остальные настройки оставляем по умолчанию.
  4. Затем заходим в настройки tortoisegit. Пуск → TortoiseGit → Settings. Далее находим вкладку Git где убедимся, что опции AutoCRLF и SafeCRLF установлены (если будет вылетать ошибка, снимите эти опции), настроены имя, фамилия, email разработчика. Учтите, чтобы имя разработчика отображалось корректно в хранилище, email должен совпадать с email, указанным при регистрации на civnote.ru.
  5. Далее нам нужно будет подключить удаленные репозитории. Сначала с помощью puttygen (программа из каталога TortoiseGit) создаётся пара приватный+публичный ключ (без парольной фразы. ):

    При генерации ключа случайным образом двигаем мышью, а затем сохраняем приватный и публичный ключи на жестком диске.
  6. Публичный ключ добавляется в Ваш профиль на сайте для доступа к репозиториям (как это сделать - читать Управление репозиториями).
  7. Далее закоммитим необходимые файлы. Это вы делать уже умеете. Затем нажимаем правой кнопкой мыши по папке, в которой создан репозиторий, выбираем настройки TortoiseGit затем вкладка Git → Remote. Создаем удаленный репозиторий для этой папки. Сначала копируем адрес репозитория из вашего проекта с сайта civnote.ru, затем указываем путь до приватного ключа и создаем адрес удаленного репозитория:
  8. Теперь мы можем залить содержимое нашего репозитория на удаленный репозиторий. Для этого вновь нажимаем правой кнопкой мыши по папке, в которой создан репозиторий, затем TortoiseGit → Push. Настройки можно выбрать следующие:
  9. Приватный ключ добавляется в pageant (это программа, которая автоматически запускается TortoiseGit и висит в контекстном меню Windows справа внизу; если не запущена, находим в Пуск TortoiseGit и запускаем ее, ищите ее в папке с TortoiseGit) через клик правой кнопкой → add key. При этом в самой Тортилле можно не указывать ссылку на закрытый ключ. И можно убрать из нее опцию при Push-е "Autoload Putty key".

Здесь остается добавить то, что программа Pageant самостоятельно запускается при любом взаимодействии с внешним репозиторием. То есть указав один раз, как было указано выше, ключ для доступа к внешнему репозиторию, программа Pageant запускается автоматически и используя этот ключ авторизует вас на сервере. В дальнейшей работе с удаленным репозиторием также будет использоваться Pageant, с указанным для TortoiseGit ключом. То есть в любом случае, как ни крути, авторизация всегда идет через Pageant даже если вы добавляете ключ через TortoiseGit.

Получение существующего репозитория¶

В папке, где будут размещаться все рабочие проекты, жмём
Правой кнопкой → TortoiseGit → Git clone, вводим адрес центрального репозитория (как создать центральный репозиторий для проекта написано в следующей части Управление репозиториями)

В поле «Load Putty Key» выбираем путь до приватного ключа. Здесь самое главное не устроить путаницы с разными ключами. Лучшим решением является удаление всех созданных ранее вами ключей и использование одного ключа.
Кстати, каждый раз, как происходит запрос к внешнему хранилищу TortoiseGit автоматически запускает программу pageant и добавляет туда ваш приватный ключ. Данная программа бывает глючит, особенно при использовании нескольких ключей. Здесь могу дать только один совет - принудительно вырубать ее и заново обращаться к внешнему репозиторию через TortoiseGit.

После настройки Git вы можете перейти к настройке репозитория, как описано в статье Управление репозиториями.

web программирование, администрирование и всякая всячина, которая может оказаться полезной

Git — распределённая система управления версиями файлов. Проект был создан Линусом Торвальдсом для управления разработкой ядра Linux.

Особенность разработки с использованием git - отсутствие единого глобального репозитория (вспоминаем SVN). Каждый разработчик может работать с собственным локальным репозиторием и при необходимости синхронизировать изменения с репозиторием на сервере.

До начала работы с Git (GitHub) рекомендуется ознакомиться с минимумом базовых понятий, без усвоения которых работать будет очень тяжело (абзац специально для любителей рвануть с места в карьер.. )

Программное обеспечение для работы с Git (GitHub) в Windows

Вообще, git - приложение консольное (все-таки разрабатывался для Linux), однако к нему имеются вполне приятные графические интерфейсы (У тех, кто работал с Tortoise SVN, наверняка, лучше всего получится освоить TortoiseGit)

    msysgit - консольный клиент git - качать Git-1.7.1-previewXXXXXXXXXXXX.exe (

Теперь непосредственно к работе с файлами:

Выбираем каталог-папку для хранения локальных репозитариев, правой кнопкой мыши и в контекстном меню выбираем пункт Git Create repository here (или Git Clone, если хотим работать с уже имеющимся репозитарием)

В свойствах (Settings) в разделе Git-Remote выбираем Add и добавляем Private Key (файл), сгенерированный ранее и сохраненный на диск. Копируем URL и название с сайта github (раздел Source или Admin)

После работы над файлами (и каталогами) выделяем все, которые хотим добавить - щелчок правой кнопкой и TortoiseGit-Add. Ещё один щелчок правой кнопкой Tortoise Git - Commit -> Master.

Первый Commit коммом

git checkout somefile — вернуть somefile к состоянию последнего коммита
git checkout HEAD

Метки: git

Автор будет признателен, если Вы поделитесь ссылкой на статью, которая Вам помогла:
BB-код (для вставки на форум)

html-код (для вставки в ЖЖ, WP, blogger и на страницы сайта)

ссылка (для отправки по почте)

Спасибо, благодаря этой статье сэкономил кучу времени

Caché-Git — это модуль контроля версий для Caché Studio, который обеспечивает вызов диалоговых окон TortoiseGit непосредственно из Studio и полуавтоматическую синхронизацию рутин между Caché и локальным репозиторием.

В каждой области выбираются пакеты, проекты, классы, рутины, dfi-файлы, csp-страницы, csp-приложения которые будут остлеживаться Caché-Git.

Всякий раз при сохранении отслеживаемой программы, она будет экспортироваться на диск в репозиторий. При открытии программа будет загружаться из репозитория, если версия, находящаяся в нём свежее.

Caché-Git работает только на компьютерах, на которых установлен и сервер и клиент Caché. Caché-Git не будет работать при соединении с удалённым сервером.

Где взять

Установка Caché-Git

Коротко

На время установки отключить read-only на CACHELIB и импортировать файл с проектом в область %SYS. Для нужных областей (например SAMPLES и USER) назначить класс %SourceControl.Git как класс контроля версий.

Подробно

На время установки вы должны включить возможность записи в базу CACHELIB. Это делается через «Портал управления системой». Выберите «Администрирование системы > Конфигурация > Конфигурация системы > Локальные базы данных». Щёлкните на ссылке «редактировать» в строке с CACHELIB и в выпадающем списке «Только чтение?» выберите «Нет». После установки Caché-Git флаг можно будет вернуть обратно.

В Caché Studio выберите область %SYS и импортируйте («Инструменты > Импортировать локально») файл c Caché-Git. Всё, можно опять запрещать запись в CACHELIB.

Теперь нужно установить области, в которых для контроля версий будет использоваться Caché-Git. Для этого в «Портале управления системой» выберите «Администрирование системы > Конфигурация > Дополнительные настройки > Система контроля версий». Для нужных вам областей отметьте класс %SourceControl.Git и нажмите «OK». Пример в этом туториале будет работать с областью SAMPLES, поэтому выберите класс %SourceControl.Git как класс системы контроля версий для неё.

После установки, в Caché Studio при выборе области, в которой Caché-Git назначен как система контроля версий, появится меню «Git».

Настройка

Чтобы настроить Caché-Git выберите меню «Git > Settings» в Caché Studio и укажите два параметра:

  • Путь к файлу tortoiseproc.exe. Это файл из программы TortoiseGit
  • Путь к временной папке, в которой будут создаваться локальные репозитории.

Настройки TortoiseGit вызываются через меню «Git > Tortoise Git Settings».

Работа с локальным репозиторием

Откройте область SAMPLES. Чтобы проинициализировать репозиторий в области, выберите меню «Git > Create repo» и нажмите пару раз «OK». Меню Git приобретёт полный вид.

В инспекторе выберите элемент, который вы хотите добавить в Git, щёлкните по нему правой кнопкой и в контекстном меню Git выберите «Add to SourceControl».

Затем выберите пункт меню «Git > Commit». В нижней части открывшегося окна выберите все файлы и добавьте (щелчок правой кнопкой > Add) их к версионным. Если файлов нет — поставьте галочку Show Unversioned Files. Напишите комментарий к коммиту. Нажмите OK, а затем Close.

Файл sc-list.txt содержит список элементов, которые отслеживаются Caché-Git. Он нужен для того, чтобы передавать между двумя репозиториями информацию о программах, которые контролируются Git.

Два важных параграфа

Всякий раз, когда вы добавляете новый элемент к Caché-Git или сохраняете уже существующий, этот элемент экспортируется во временную папку, поэтому при вызове команд TortoiseGit (таких как, например, commit, push, revert и так далее) нет необходимости выгружать все программы (Git >Export All), которые отслеживаются Caché-Git.

При импорте наоборот. Во-первых, при pull или revert может измениться значительная часть программ. Во-вторых, вызов окон TortoiseGit из Caché Studio асинхронный и нет возможности узнать, когда то или иное окно закрыто и закончилась операция обновления файлов. ПОЭТОМУ. После всех операций, выполненных TortoiseGit, которые могут менять содержимое рабочей папки, выберите пункт меню «Git > Import All». Это команды — Clone, Pull, Fetch, Revert. Всякий раз, когда при выполнении одной из этих команд в окне вывода будет появляться напоминание «Choose Import All menu after work with Git»

Работа с удалённым репозиторием

Загрузить содержимое своего репозитория на сервер можно, выбрав пункт меню «Git > Push» и указав в поле «Arbitrary URL» адрес репозитория.

Подключение к репозиторию

Каждый локальный репозиторий Caché-Git хранится внутри подпапки папки указанной как временной при настройке (обычно, это c:\temp). Имя этой подпапки совпадает с именем области (namespace), например c:\temp\USER или c:\temp\SAMPLES.

git openSSH or Tortoise plink

Git.exe появится после установки Git for Windows , так что следите за очерёдностью действий.

git openSSH or Tortoise plink

Затем нужно приступить к генерации ключей. Я выбираю опцию Generate PuTTY key pair

git openSSH or Tortoise plink

git openSSH or Tortoise plink

Ключи нужно сохранить в директорию на Вашем ПК.

Название и путь до директории желательно запомнить.

Затем Вам нужно посетить страницу загрузки ключей SSH Keys и загрузить туда свой PUBLIC key.

Начинаться он должен с ssh-rsa.

Проще всего скопировать его из окна putty

git openSSH or Tortoise plink

В случае успеха Вы попадёте на

git openSSH or Tortoise plink

Далее нужно указать путь до ключа в настройках TortoiseGit. Я не знаю где он сейчас находится в самих настройках. Раньше был в пункте Remotes, если я не ошибаюсь.

Настройки выглядят следующим образом, но мы не будем там ковыряться а введем путь до ключа на следующем шаге.

git openSSH or Tortoise plink

Чтобы получить точный url который Вы хотите клонировать зайдите в нужную ветку (branch) и нажмите на кнопку Clone.

git openSSH or Tortoise plink

Выберите Clone with SSH. Чтобы скопировать этот адрес нужно нажать на значок копирования.

git openSSH or Tortoise plink

git openSSH or Tortoise plink

Кликаем правой кнопкой и выбираем Git Clone

git openSSH or Tortoise plink

Вставляем адрес, который мы до этого скопировали из GitLab в поле URL

Затем показываем путь до приватного ключа и нажимаем OK.

git openSSH or Tortoise plink

git openSSH or Tortoise plink

Ветки - Branches

Когда вы работаете с Git важно разобраться с принципом работы веток.

Если Вы разработчик, то стандартная ветка для Вас скорее всего называется dev.

В неё Вы делаете свои коммиты или пуши, а старший программист потом объединяет их в ветку master

Посмотреть на список всех веток можно в разделе Repository → Branches

git openSSH or Tortoise plink

Там будут ветки master, dev и любые какие придумали разработчики.

Иногда они могут быть привязаны к определённым историям в планировщике задач (например Pivotal Tracker ) а могут просто появляться для проверки каких-то гипотез.

git openSSH or Tortoise plink

Чтобы поменять ветку, с которой Вы синхронизировали папку на Вашем компьютере.

Теперь будем рассматривать комплексные утилиты оболочки работы с Git. Начнем TortoiseGit.

Скачиваем сам дистриб

TG0001

Я выбрал под свою разрядность вы выбираете под свою.

И если надо там же можно скачать языковый пакет русского языка для TortoiseGit

TG0002

TG0003

TG0004

TG0005

TG0006

TG0007

TG0008

Ну и до кучи уж поставим русский язык. В настройках легко можно переключиться на английский.

TG0009

TG0010

Жмем старт и идем в настройки

TG0011

TG0012

Далее идем в раздел Git и видим предупреждение на враждебном нам буржуйском языке

TG0013

Что в переводе означает

TG0014

Это нам говорят про это. Ставим галку чтобы нам это больше не показывали. Мы и так про это знаем.

Далее убираем не нужные контекстные меню, дабы они не засоряли его. В крайнем случае все можно вернуть обратно. Я оставил только этот пункт, чтобы сразу можно было посмотреть лог репозитория из контекстного меню проводника:

TG0015

На скрине ниже я показал этот пункт и весь раскрытый пункт контекстного меню TortoiseGit

TG0016

Ну а теперь кратенько по возможностям программы. По существу все операции с репозиторием Git можно выполнять из графического интерфейса. Глюки в программе есть конечно, но они не сильно страшные.

Из всего этого добра мне понравилось красивый просмотр логов (как раз пункт меню который я оставил):

TG0017

Ну и сравнение файла из различных коммитов. Правда это чуток заморочено тут, но все же можно сделать.

И так сравним версии файла из коммита 2 и коммита 4. На коммите 2 делаем правый клик мышью

TG0018

Далее видим скрин что ниже и убираем там все эти нули. Если не убрать то вылетит ошибка и жмем раскрывающийся список RefBrowse

TG0019

TG0020

Далее видим это и выбираем четвертый коммит

TG0021

TG0022

Жмем Compare revisions и видим сравнение файла test.txt из коммитов 2 и 4

TG0023

Так же можно воспользоваться графическим интерфейсом для слияния веток. Но как то оно мне там не очень понравилось. Привычней уже при помощи командной строки это делать и разрешать конфликт уже при помощи графических утилит. Кстати, TortoiseGitMerge можно, так же настроить в Git, как внешние утилиты сравнения и слияния. Что я и сделаю. Об этом читайте в следующем посте.

Читайте также: