Страницы

26 июля 2013 г.

Создаем патч последнего коммита одной командой.

Обещал не затягивать со статьями цикла про Git, но, к сожалению не получается. Сумасшедшая неделя выдалась. Чтоб совсем уж не молчать, буду выкладывать небольшие полезные фишки, благо на такую маленькую статью надо не более 10 минут :) Назовем это Tips&Tricks.

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

Для создания патчей существует комманда git format-patch. Она достаточно мощная, имеет много опций, если интересно - почитайте тут. Но если все, что вам нужно - создать патч на последний коммит в текущей ветке, просто выполните

git show HEAD > %path%

Где %path% - путь, куда нужно сохранить файл.

Быстро, просто и главное - работает.

19 июля 2013 г.

Все, что вы хотели узнать про Git, но боялись спросить. Часть 2. История.


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

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

12 июля 2013 г.

Все, что вы хотели узнать про Git, но боялись спросить. Часть 1. Init & commit

Обещал не затягивать, так что, вот и первая статья цикла про Git. Мы научимся создавать репозиторий и коммитить код. Все просто, можете считать это разминкой перед более серьзеными задачами.

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

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

Итак, приступим.

10 июля 2013 г.

Все, что вы хотели узнать про Git, но боялись спросить. Вводная.


Если вы пишете код и еще не пользуетесь Git - вы определенно должны попробовать. Серьезно, просто попробуйте, и через небольшой промежуток времени будете удивляться, как же вы жили без него. Если вы работаете один - Git наделит вас уверенностью в себе, ведь с ним практически невозможно потерять какие-либо изменения. Если же вы командный игрок, то в любом случае уже используете систему контроля версий. Переходите на Git. Он действительно того стоит. Раньше я пользовался SVN - сменив его на Git я как-будто пересел с трактора на спорткар. (И нет, мне не платят за рекламу, я действительно искренне им восторгаюсь :)

Эта статья - вводная в цикле про работу с Git. Я поставил перед собой цель создать удобный курс, на который смогу ссылаться в будущем. Не спорю, существует множество готовых туториалов и учебников. Но большинство из них рассматривает команды Git в отрыве от реальности, по сути, это просто справочники. Я же постараюсь рассмотреть конкретные задачи, с которыми сталкиваются разработчики, начиная с ежедневных операций (обновление кода из удаленого репозитория, применение собственных изменений) и заканчивая сложными ситуациями, такими разрешение конфликтов, восстановление потерянных изменений и многое другое.

9 июля 2013 г.

Пишем ленивый файловый обозреватель на C#

На собеседовании дали небольшое задание. Смысл заключался в написании маленького файлового обозревателя с обязательной ленивой подгрузкой информации о файлах и папках. Всё это должно быть написано на C# и использовать элемент TreeView (WPF).
Как всё должно работать? Создаём дерево, вешаем событие развёртывания узла, добавляем подгрузку информации на текущем каталоге. Далее по порядку.

Шпаргалка по Vim

Небольшая подборка часто употребляемых команд Vim, ИМХО - необходимый минимум. Может быть полезно, сам часто забываю многие нюансы, приходится искать, наконец дошли руки собрать все в одном месте.

Командный режим Esc - возврат в командный режим h,j,k,l - перемещение курсора влево, вниз, вверх, вправо w - перейти к следующему слову e - перейти к концу слова ^ или 0, $ - переход в начало/конец строки

8 июля 2013 г.

Что должен знать Junior .Net Developer, идя на свое первое собеседование?

Мне в последнее время очень часто задают этот вопрос. И я тут решил, что стоит составить детальный список и просто бросать ссылку нуждающимся. Лень - она такая :)
Далее следует компиляция из нескольких заметок, написаных ранее. Информация основана на личных наблюдениях и опыте проведения собеседований.

Итак, примерный список тем: 
  • Основы ООП: инкапсуляция, наследование, полиморфизм. Куда ж без этого.
  • Модификаторы доступа (почему то для многих становится сюрпризом, что их аж целых пять штук)
  • Классы. Абстрактные классы и их ключевые особенности. Анонимные и вложенные классы. Конструктор.
  • GC - просто знать, что это такое.
  • Интерфейсы.