Показаны сообщения с ярлыком Настройка Git. Показать все сообщения
Показаны сообщения с ярлыком Настройка Git. Показать все сообщения

суббота, 2 апреля 2016 г.

Правильная установка Git в Ubuntu

Если в Ubuntu просто установить Git командой

sudo apt-get install git

То на текущее число получим версию 1.9.1, хотя даже для Windows уже есть версия 2.8.0!

Поэтому Git в Ubuntu надо ставить правильно:

Если у вас уже была установлена старая версия то ее надо удалить первой командой из приведенного ниже списка команд. Если Git не установлен то первую команду пропускаем. Хотя контрольный выстрел в голову ну когда не повредит :) и лучше дать все команды :) стрелять так стрелять :)

sudo apt-get remove git
sudo add-apt-repository ppa:git-core/ppa
sudo apt-get update
sudo apt-get install git
git --version

После этого версия будет 2.8.0 (на текущее число), ну или явно свежее чем простой командой приведенной в начале статьи.

четверг, 21 января 2016 г.

Правильное обновление Git с версии 2.6.4 до версии 2.7.0 под Windows 10 x64

Как я уже писал в прошлой статье, Git под Windows не обновляет прежде установленную версию, а тупо сносит ее и устанавливает новую. Соответственно все настройки которые у вас были сделаны для Bash и терминала mintty могут легко слететь если вы их не забекапили.

Поэтому первым шагом делаем копию следующих файлов:

C:\Program Files\Git\etc\profile – здесь у меня хранятся алиасы для команд Git.

C:\Program Files\Git\etc\profile.d\git-prompt.sh – здесь хранятся настройки command prompt для Bash.

C:\Users\USER_NAME\.mintty – настройки терминала mintty.

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

Ну и далее скачиваем дистрибутив тут https://git-scm.com/download/win

G270001

И запускаем установку…

G270002

G270003

G270004

G270005

G270006

G270007

G270008

И вот после этого шага начинается полная деинсталяция предыдущей установки

G270009

И потом идет чистая установка Git…

G270010

G270011

Соответственно все настройки девственно чисты. Поэтому сразу же возвращаем сохраненные файлы на свои места и проверяем версию Git…

G270012

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

В этой версии Git был изменен файл git-prompt.sh.

четверг, 10 декабря 2015 г.

Обновление Git под Windows 10 с версии 2.5.3 до версии 2.6.3

Ни когда не обновлял Git таким образом но сейчас попробуем.

Качаем дистрибутив Git от сюда: https://git-scm.com/download/win

GU001

Естественно под свою разрядность, ну или как хотите… Я скачал под свою, чтобы обновить предыдущую установку.

Ну и запускаем скачанный файл…

GU002

После нажатия Next установщик не спросил путь, так что есть надежда что обновление пройдет гладко. И на следующем этапе уже выбраны те опции что я выбирал в предыдущей установке:

GU003

Далее так же выбрана опция что я выбирал прежде:

GU004

Далее опять мой предыдущий выбор:

GU005

Далее опять мой предыдущий выбор:

GU006

И опять мой предыдущий выбор:

GU007

А вот потом он поступил не красиво :( Этот установщик, он тупо удалил предыдущую мою установку. Со всеми моими настройками. Хотя я их конечно забекапил до этого, но все равно не красиво так делать. И так как у меня запущенный Far Manager находился в каталоге Git, то произошел сбой установки, и по существу пришлось делать чистую установку.

И да, чтобы Git установился в Program Files установщик необходимо запустить с правами администратора.

Так что можно сказать что обновление провалено. Так как настройки терминала при обновлении не сохраняются :(

По существу все изменения что у меня были хранятся по пути C:\Program Files\Git\etc\profile.d в файле git-prompt.sh

Там настраивается внешний вид терминала Git. У меня, после моих настроек, он выглядит так:

GU008

пятница, 25 сентября 2015 г.

Установка Git 2.5.3 x64 на Windows 10 Pro x64

Совсем недавно, 18 сентября 2015, была выпущена новая версия Git 2.5.3. Теперь она поставляется для x64 и x32 платформ и кроме того существует и в портабельной (portable) версии для обоих платформ.

Сейчас будем разбираться с установкой и настройкой. Поехали!

1) Качаем установщик Git-2.5.3-64-bit.exe

2) И запускаем его…

G0001

G0002

G0003

Выставляем галки как на скриншоте ниже

G0004

В принципе, если хотите, то можете выбрать и Git GUI, но он достаточно убогий и на мой взгляд лучше пользоваться другими графическими утилитами для Git. А еще лучше просто консолью :)

Причем даже если вы эту галку снимете, то gitk (Git GUI) все равно установится, единственное что он не пропишется в реестре для контекстного меню. Ну и на том спасибо. Меньше мусора.

G0005

Далее выбираем пункт как на скриншоте ниже. Ну или выбираете тот который вам по душе :)

G0006

Далее выбираем первый пункт, ну или, опять же, как душеньке угодно :)

G0007

Ниже тоже можно выбрать пункт как на скриншоте. Но опять же это дело вкуса. Тем более что в Windows 10 "империя зла", таки сделала добрый, ну более или менее хороший терминал. В общем выбираем по вкусу :)

G0008

И вообще все эти настройки что делаются на этапе инсталляции легко меняются в конфигурационных файлах.

Далее я ни чего не выбирал

G0009

Тем более, опять же, это можно изменить в конфигурационном файле и какой параметр менять тут уже указано.

И понеслась установка!

G0010

G0012

Все! Приехали! Конечная! Git установился.

После этого в меню Start появятся следующие пункты:

G0013

Git Bash – это консоль Bash для работы c Git

Git CMD – это консоль Windosws cmd.exe для работы с Git

Git GUI – это такая бесполезная штука, запустите увидите :)

Теперь давайте проверим что все у нас работает. Для этого запустим Git Bash и Git CMD. Git Bash это консоль в NIX стиле. Git CMD – это cmd.exe.

А после запуска дадим команду git --version

G0014

G0015

Как видим все работает. Конечно можно причесать обе консоли на предмет цветов, шрифтов и т.д. и т.п.

И еще пара замечаний, видно из Git Bash он основан на MINGW (x64). И git так же доступен и из обычного cmd.exe, который вы сами можете запустить…

G0016

Ну и далее настраиваем Git на свой вкус и цвет.

Единственное что еще стоит заметить, то это то что установщик Git дописал в системную переменную PATH путь к Git:

C:\Program Files\Git\cmd

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

пятница, 1 мая 2015 г.

Настойка переменной окружения HOME для Git и плагина EGit в Eclipse

В принципе у меня и без этого все работало хорошо, но просто увидел вот такое предупреждение в Eclipse:

eclipse.buildId=4.4.2.M20150204-1700
java.version=1.8.0_45
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=ru_RU
Framework arguments:  -product org.eclipse.epp.package.java.product
Command-line arguments:  -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product

org.eclipse.egit.ui
Warning
Fri May 01 18:49:30 MSK 2015
Warning: The environment variable HOME is not set. The following directory will be used to store the Git
user global configuration and to define the default location to store repositories: 'C:\Users\<user_name>'. If this is not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and EGit might behave differently since they see different configuration options.
This warning can be switched off on the Team > Git > Confirmations and Warnings preference page.

Лечится все это очень просто. Есть описания на английском:

http://wiki.eclipse.org/EGit/User_Guide#Setting_up_the_Home_Directory_on_Windows

https://danlimerick.wordpress.com/2011/07/11/git-for-windows-tip-setting-home-and-the-startup-directory/

В общем просто создаем переменную окружения HOME вот так:

2015-05-01_191030

Хотя я проблем ни каких не заметил. Может потому что работаю в командной строке. Мне ее хватает.

пятница, 6 марта 2015 г.

Правильная установка Git на Mac OS X

Если воспользоваться установщиком Git с официального сайта

M0001

То, устанавливается не самая последняя версия Git.

Дайте команду в терминале

$ git --version

И если вы увидите что то вроде этого

git version 1.9.3 (Apple Git-50)

то это статья для вас. Если вы видите версию 2.3.1 (на момент написания статьи) последняя была такая, то тогда у вас все хорошо.

И так сперва устанавливаем Homebrew, если он у вас еще не стоит.

Просто скопируйте и вставьте эту строку в терминал и запустите ее.

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

После того как Homebrew установиться дайте в терминале команду

brew install git

После того как Git установится дайте команду

export PATH=/usr/local/bin:$PATH

чтобы прописать путь к новой установке Git.

И далее смотрим версию Git

$ git --verrsion

Должны увидеть что то типа этого

Git_Mac_OS_X

git version 2.3.1

Все! Далее чтобы обновлять Git  достаточно дать команду

brew upgrade git

Просто не правда ли!?

Пример обновления Git в Mac OS X 10.10.2 через Homebrew

brewGitUpgrade

Вот и получили самую свежую версию Git на Mac OS X

вторник, 24 февраля 2015 г.

Задание псевдонимов команд Git в Bash

В этой статье уже разбиралось создание псевдонимов (alias), которые хранятся в конфигурационных файлах Git.

Но там все же была необходимость вводить слово git перед командой.

Псевдонимы команд (alias) можно так же задать через конфигурационный файл bash с именем profile в каталоге C:\Program Files (x86)\Git\etc.

Я, для примера, добавил в конец файла пару строче (не считая комментарий):

# My aliases for Git
alias l='git log --oneline --decorate'
alias lg='git log --oneline --decorate --graph –all'

Теперь запускаем Git и даем последовательно команды l и lg.

bash_alias_for_git

Но когда вы будете делать подобное вы должны понимать что делаете. Те алиасы которые вы будете создавать не должны быть такими же, как уже существующие команды git, bash или windows.

Например, вы не можете сделать алиасы ls, mv, ping и т.д. и т.п.

Прежде чем создавать алиас таким образом, сперва введите его в консоли GitBash и если вам будет ответ что команда не найдена, то смело можете его использовать.

четверг, 5 февраля 2015 г.

Настройка русских шрифтов в Git

Вернее сказать настройка правильного отображения русских шрифтов (кириллицы) в Git.

В этом посте я приведу несколько примеров использования кириллицы в Git. Сразу хочу сказать, что Git по умолчанию нормально работает с юникод, поэтому лучше сразу вести вести все свои проекты в юникод, если это возможно конечно.

И так сперва рассмотрим как Git работает с русским языком в юникод.

Создадим каталог UTFtest и в нем репозитарий Git. Дополнительных настроек ни каких не делаем, кроме как задаем имя и email пользователя.

UTF00001

Теперь создаем текстовый файлик TestUTF.txt в кодировке юникод. Я использовал для этого Notepad++, но можно и любой другой, главное чтобы он поддерживал создание файлов в юникод без BOM.

UTF00002

В настройках Notepad++ отключение BOM выглядит так

UTF00003

И так мы создали файлик, теперь, посмотрим статус, добавим файл в индекс и сделаем первый коммит.

UTF00004

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

Добавим в наш файлик вторую строчку.

UTF00005

Теперь опять посмотрим статус, добавим изменения в индекс и закоммитим.

UTF00006

Помним, что мы редактировали файлик в кодировке юникод (UTF) без BOM.

Теперь посмотрим простой лог наших изменений.

UTF00007

Git вывел краткую информацию о наших коммитах. Кто, когда, комментарий и контрольную сумму каждого коммита.

Теперь посмотрим дельту, разницу между нашими коммитами, то есть более подробно, что было изменено.

UTF00008

Как видим Git показал нам что было изменено в файле во втором коммите при сравнении его с первым коммитом.

Пока не будем вдаваться в подробности всего вывода информации. Сейчас главное что русский текст комментариев к коммитам, а так же русский текст в текстовом файле при выводе дельты в логе отображается правильно.

От сюда вывод, что Git по умолчанию использует UTF-8 и как следствие с русским языком проблем не возникает.

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

Для этого создам текстовый файл в Far Manager, добавлю его в индекс, закоммитю, добавлю в файлик еще одно строчку и снова сделаю коммит.

UTF00009

Хотя в редакторе Far manager служебного кода BOM не видно, но он там есть Улыбка

На заметку: В редакторе Far manager, так же можно отключить создание BOM метки.

Все! Мы убедились, что при использовании кодировки UTF-8 ни каких проблем с русским языком, как в комментариях к коммитам, так и с просмотром русского текста в дельте логов, не возникает. И при этом не надо делать ни каких дополнительных настроек.

Исключение может составлять только если у вас есть файлы с русскими именами. Приведу примерчик. Создам файл Русский.txt. И посмотрим статус и содержимое каталога в консоли.

UTF00010

Вот как выводит консоль имена файлов на русском языке.

Чтобы это подправить дадим команду

$ git config --local core.quotepath false

И снова посмотрим статус и содержимое каталога в директории

UTF00011

Теперь Git стал нормально отображать русские названия файлов. А вот линуксовая утилитка ls с русским не подружилась (вернее сказать bash не подружился), но это ни какого отношения к Git не имеет.

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

$ ls --show-control-chars

UTF00013

Теперь добавим на наш файлик Русский.txt в индекс и закоммитим его. Потом добавим в этот файл строку и снова закоммитим. А затем посмотрим дельту

UTF00012

Как видим с русским языком снова все хорошо. То есть дополнительная настройка понадобилась только в том случае, когда есть файлы с названиями на русском языке.

Теперь настроим Git на работу с русской кодировкой Windows (CP 1251)

Создадим каталог CP1251 и Git репозитарий в нем. Затем создадим файлик Win.txt в стандартной кодировке Windows. Посмотрим статус, добавим этот файл в индекс и закоммитим его.

UTF00014

Напомню что все это дается с установками Git по умолчанию.

Теперь добавлю в файлик Win.txt еще одну строчку и закоммичю его, а затем посмотрим дельту, то есть разницу между первым и вторым коммитом.

UTF00015

И так смотрим разницу между коммитами

UTF00016

Ууууупс! Что за ерунда???? Видим что комментарии к коммитам отображаются правильно, так как они в юникоде (UTF-8), а вот содержимое файлов у нас идет кодами, что не очень то удобно, верней вообще не удобно. Это происходит потому, что вывод команды git log, так же происходит в UTF-8.

Попробуем поправить ситуацию. Дадим команду

$ git config --local core.pager "iconv.exe -f cp1251 -t utf-8 | less"

Данная команда переопределяет вывод пейджера (программы less, стандартной линуксовой программы постраничного вывода). Она конвертирует кодовую страницу cp1251 в UTF-8, как видно из синтаксиса команды iconv.exe.

iconv.exe идет вместе с дистрибутивом Git, поэтому нет смысла качать дистрибутив с сайта. Единственное ей могут понадобится дополнительные библиотеки, которые можно скачать тут. Нужно выбрать Dependencies (zip)

UTF00018

Теперь посмотрим еще раз дельту

UTF00017

Мы видим что теперь содержимое файлов в дельте отображается правильно, а вот комментарии к коммитам стали отображаться не правильно. Это произошло потому, что весь вывод команды git log, конвертируется и строчки комментариев были рассмотрены как-будто они в кодировке cp1251.

Попробуем исправить и это командами

$ git config --local i18n.commitEncoding utf8

$ git config --local i18n.logoutputencoding cp1251

Я несколько раз поправил файлик. Посмотрим два последних коммита и их дельту.

UTF00019

Как видно почти все отображается нормально. Исключение составляет только вывод после команды git commit (я его подчеркнул красной чертой и подсветил желтым). С этим можно конечно смирится если очень хочется вести проект в кодировке Windows CP1251. Как поправить этот маленький недочет я не знаю. Может кто подскажет – буду очень признателен.

Просто git log без дельты тоже выводит все нормально

UTF00020

Файл настроек Git для данного проекта CP1251 выглядит так:

UTF00022

UTF00021

Но вообще лучше вести проекты в UTF-8