Category Archives: Version control

Git: Перелить локальный репозиторий в новый удалённый (remote)

http://stackoverflow.com/questions/2432764/change-the-uri-url-for-a-remote-git-repository

http://stackoverflow.com/questions/6865302/push-local-git-repo-to-new-remote-including-all-branches-and-tags

Написал Grunt-таск для бэкапа wordpress в репозиторий

Идея — делать бэкапы кода и базы в репозиторий на bitbucket. Запуск через крон. Сам код (если кому интересно) опубликую попозже. А вот полезные ссылки: https://npmjs.org/package/grunt-git (чтобы склонировать проект) https://npmjs.org/package/grunt-contrib-copy (для копирования кода) https://npmjs.org/package/grunt-file-process (для распарсивания конфига, чтобы узнать настройки доступа к базе) https://npmjs.org/package/grunt-mysql-dump (хотел дампить базу, но не взлетело) https://npmjs.org/package/grunt-shell (для дампа базы, для …

Read more

tig для просмотра git-логов в командной строке

Установка

Запускаем команду tig в директории с git-репозиторием. Ждём немного — и вот у нас уже дерево коммитов с ветками. Перемещаемся стрелками ↓↑, затем нажимаем d и смотрим diff, после чего нажимаем q для возврата в главное меню. http://jonas.nitro.dk/tig/screenshots/ http://habrahabr.ru/post/206606/

Git: вывести все файлы с конфликтами

Git: выделить директорию в отдельный репозиторий

Вот эта команда

Ссылки: http://git-scm.com/docs/git-filter-branch https://confluence.atlassian.com/display/BITBUCKET/Split+a+Repository+in+Two#SplitaRepositoryinTwo-UsingGittosplit-outadirectory

Git: автоматически разрулить конфликты в пользу «theirs» для всех файлов

Мне нужно было все конфликты в файлах по определенной маске разрешить в пользу того, что пришло с сервера. Файлов таких, по некоторым причинам, было более 5000, и не все удовлетворяли маске (реально нужно было посмотреть вручную около 20 файлов). Поэтому решил разрулить конфликты в ненужных файлах автоматически. Сначала сохраним пути ко всем файлам, удовлетворяющим маске, …

Read more

Git: patch из одного репозитория в другой

В старом репозитории сохраняем diff:

В новом репозитории

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

https://stackoverflow.com/a/39943727/801426 https://stackoverflow.com/a/2250170/801426

Git: diff с другой веткой

Сначала переключаемся в нужную ветку, потом

Это покажет только файлы. Если нужно посмотреть еще и сами изменения, нужно убрать —name-only

Интеграция PhpStorm с git под Windows 7

Вот как добавить ключи в систему — https://blog.bullgare.com/2013/03/%D0%BF%D1%83%D1%82%D1%8C-%D0%BF%D0%BE-%D1%83%D0%BC%D0%BE%D0%BB%D1%87%D0%B0%D0%BD%D0%B8%D1%8E-%D0%B4%D0%BB%D1%8F-ssh-%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%B9-%D0%B2-windows/. Вот как потом настроить PhpStorm — http://www.jetbrains.com/phpstorm/webhelp/using-git-integration.html. * Только в Version Control → Git обязательно для SSH executable нужно оставить параметр Built-In.

Интерактивное обучение Git в командной строке

http://pcottle.github.com/learnGitBranching/