background preloader

Git

Facebook Twitter

Странный глюк Git, чуть не стоивший 10 часов работы. Я провел весь вчерашний день, напряженно работая, чтобы закрыть долгую и порядком надоевшую задачу.

Странный глюк Git, чуть не стоивший 10 часов работы

Было достаточно поздно, когда я закомитил изменения и отправил на пуш. Гит привычно ругнулся что не может, потому что есть свежие правки. Окей, pull, push. Теперь вроде нормально, можно идти спать. Проверю на тестовом сервере и потом пошлю ссылку коллегами, решил я напоследок. На следующий день я еще раз сделал деплой на тестовый сервер, но он упорно показывал старую версию. Что же произошло и как это исправить? Через некоторые время Google вывел меня на пост Recovering From a Disasterous Git-rebase mistake, в котором у парня проблемы были точь-в-точь как мои. К счастью, в случае с Git не все потеряно. Git checkout -b itsavedmyass b6d7cf192c46 После чего надо переключиться в рабочую ветку и смержить потерянные правки.

До сих пор не понятно, что привело к таким катастрофическим последствиям. David Grayson's blog: Getting git 1.8.0 to work with PuTTY/plink/pageant 0.62. Машина времени в git. В последнее время мои коллеги начинают знакомство с git'ом.

Машина времени в git

И один из интересующих их вопросов — как откатиться до определённой ревизии. В интернете можно найти набор команд, но хочется, чтобы было понимание каждой из них. Баловство с комадами git'а без понимания может привести к потере истории разработки. В этой статье я хочу рассказать о командах git checkout и git reset с ключами --soft и --hard. Итак, начнём краткий ликбез по машине времени, предоставляемой git'ом. Здесь кружочками обозначены коммиты. Заострим наше внимание на двух указателях: master и HEAD. master указывает на самый старший коммит в ветке под названием master (эта ветка создаётся при инициализации репозитория).

Указатель HEAD в нашем случае указывает на master, а master — на коммит d79fb… Архиважно понять, что текущее состояние неизменённых файлов, находящихся под контролем версий, есть тот коммит, на который указывает HEAD. Перенос указателя HEAD (git checkout) Откат по истории коммитов: Git Wizardry. Resources For Learning Git. Git is an extremely powerful and sophisticated system for distributed version control.

Resources For Learning Git

Apart from offering a novel approach to source code management, Git offers a great deal of features. Sadly, learning how to use Git can be confusing for anyone, not just beginners. As a result, in this roundup, we have collected some of the best resources for learning Git to help you initially get started with Git, and then, eventually mastering it. Git – The Simple Guide by Roger Dudler If you are looking for a quick resource to help you get started with Git, this one by Roger Dudler will prove really useful to you.

5. Making changes. Goals To learn to monitor the working directory’s state 01 Changing the “Hello, World” page Let’s add some HTML-tags to our greeting.

5. Making changes

Change the file contents to: File: hello.html <h1>Hello, World! 02 Checking the status. Коаны Гита. По мотивам «Коанов Вима».

Коаны Гита

ТишинаЧто-то одно, но хорошоТолько богамХобгоблинДлинное и короткое Python-программистка передала свой файл ~/.gitconfig мастеру Гиту. Среди строчек кода было следующее: [alias]; Явное лучше подразумеваемового. Если мы хотим выполнить слияние,; нам следует сделать это самим.pull = pull --ff-only Мастер Гит кивнул. «Но мастер Гит, разве я не просила в моей конфигурации использовать только fast-forward?» Мастер Гит посмотрел на неё, кивнул и ничего не сказал. «Тогда почему же вы не предупредили меня о проблеме с моей конфигурацией?»

Мастер Гит ответил: «В ней не было проблем.» Месяцы спустя, когда программистка по другой причине читала git --help config, она достигла просветления. Unix-программистка работала на кубикловой ферме. «Для меня честь встретить вас, мастер Гит», — сказала она. «Несомненно», — ответил мастер Гит. «Как я могу перейти к другой ветке?» Что нам стоит Git настроить! Дарова, хабр!

Что нам стоит Git настроить!

(ничего оригинальнее не придумал) Сомневаюсь что эта заметка тянет на полноценный пост, но я все же оставлю ее здесь. О чем же пойдет речь? Все мы слышали о Git. Все мы знаем что он — хорош. Так, мне уже немного надоело писать этот, по сути, бессмысленный вступительный текст, так что давайте уже начнем что-то делать. Что такое .gitconfig и зачем он нужен? В стандартной поставке системы контроля версий Git есть замечательный файл — .gitconfig. Не знаю как на других системах, но в Linux он лежит в ~. Открываем .gitconfig в удобном для вас текстовом редакторе (для меня это nano). Подсветка вывода. Git - the simple guide - no deep shit! Git - the simple guide just a simple guide for getting started with git. no deep shit ;) by Roger Dudler credits to @tfnico, @fhd and Namics this guide in deutsch, español, français, indonesian, italiano, nederlands, polski, português, русский, türkçe, မြန်မာ, 日本語, 中文, 한국어 Vietnamese please report issues on github Infuse analytics everywhere with the AI-powered embedded analytics platform.

git - the simple guide - no deep shit!

Start your free trial.ads via Carbon setup. Git book.