Магия git: быстрый поиск кода, разница между версиями, консольное дерево

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

1) В моем рабочем проекте 1000+ файлов, причем в файлах есть не только код, но и другие непотребные вещи (картинки, системные файлы самого гита и прочее). Чтобы быстро найти нужный кусок кода по тексту, я могу использовать git grep.

git grep -ni texttext
даст вам очень быстро информацию о том коде, который вы ищите. Просто взгляните на скриншот:

git_grep

2) Бывает такое, что вы применили изменение через git pull и git status выдает что-то непонятное. Вы хотите понять где вы находитесь и как идут веточки гит, но у вас нет macbook pro и соответсвующего софта, поэтому вы смотрите в свою консоль Ubuntu и думаете о своей неполноценности. Рано! Поставьте себе git color (git config --global color.ui auto) если еще этого не сделали, а теперь попросите git нарисовать вам дерево прямо в консоли:
git log --graph --oneline --decorate

git_graph

Пробежимся по ключам: graph — рисует, oneline — жмет то что выводит гит лог в одну строку, --decorate добавляет дополнительной йнфы (head, релизная ветка и т.д.)

3) Как посмотреть разницу между тем что было, и тем что стало? Очень просто — git diff. Тут вдаваться в подробности не буду, но намекну что diff умная команда и может принимать например значения тэгов. Попробуйте так:
git diff tag1..tag2
То что было удалено, как обычно, красное. А то что добавили? Правильно, зеленое!
Just magick!

comments powered by HyperComments
При копировании материалов обратная ссылка на play-stop.ru желательна обязательна!