Category Archives: Version control

PhpStorm и git: добавить в свою ветку определенный коммит

Для этого в git существует cherry-pick. Как оно работает в PhpStorm http://www.jetbrains.com/phpstorm/webhelp/applying-changes-from-a-specific-commit-to-other-branches-cherry-picking.html

Git diverged

Если при пулле ветки в гите по git ststus пишет, что remote diverged и так далее (т.е. есть расхождения локального и удаленного репозитория), то надо удалить локальную ветку.

Потом взять из origin заново

Альтернативный способ — применить злостный хак:

!это удалит ветку локально! А потом

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

Read more

Создание веток git-репозитория из PhpStorm

Нужно создать локальную ветку и запушить. Ссылки: http://www.jetbrains.com/phpstorm/webhelp/creating-a-new-branch.html http://www.jetbrains.com/phpstorm/webhelp/uploading-a-local-git-repository-push.html http://devnet.jetbrains.net/message/5455304?tstart=0

Работа с git в команде — gitflow

https://github.com/nvie/gitflow. Это надстройка над гитом, которая позволяет автоматизировать работу с репозиториями при обычной работе в коллективе. Ничего сверхъестественного — ветка develop, от которой отходят ветки features (и по завершении в неё мёржатся); ветки вида release/…, они создаются из девелопа для нового релиза; после релиза и тестов на проде он мёржится в master; также есть ветка …

Read more

Конвертирование проекта из SVN в Git

В fedora linux:

После этого в ~/git-repo будет «чистый» git-репозиторий. Ссылки: http://www.johnclarkemills.com/2011/01/01/migrate-from-svn-to-git-with-history/ http://gitready.com/beginner/2009/02/04/converting-from-svn.html http://redlinesoftware.com/blog/2008/2/24/converting-subversion-repositories-to-git http://stackoverflow.com/questions/79165/how-to-migrate-svn-with-history-to-a-new-git-repository http://www.jonmaddox.com/2008/03/05/cleanly-migrate-your-subversion-repository-to-a-git-repository/ http://stackoverflow.com/questions/7784951/how-to-begin-committing-via-git-to-bitbucket-not-seeing-changes http://lists.debian.org/debian-devel/2011/07/msg00522.html http://git.or.cz/course/svn.html Чтобы слить несколько свн-репозиториев в один, можно воспользоваться советом про subtree merge — http://stackoverflow.com/questions/1425892/how-do-you-merge-two-git-repositories

Конвертирование проекта из SVN в Mercurial

В fedora linux:

Удобный графический клиент для git под ubuntu

giggle

Настройка TortoiseHg под Ubuntu

Настройки хранятся в файле ~/.hgrc

Для shelve нужно скачать скриптик. Список доступных команд: http://manpages.ubuntu.com/manpages/lucid/man1/hgtk.1.html Для работы в командной строке нужно поработать с файлом настроек (/etc/mercurial/hgrc.d/hgext) — раскоментировать hgext.hgk для доступности команды hg view, hgext.rebase, hgext.record.

Работа в hg с rsa-ключом под linux

Нужно положить в папку ~/.ssh файл id_rsa (или id_dsa) со сгенерированным ключом. У меня был ключ, сгенерированный puttygen — для работы под windows. Для конвертации достаточно загрузить файл приватного ключа в puttygen и сконвертировать в нужный формат, после чего в linux положить этот файл в указанное место.