Давно уже хотел купить себе git хранилище, и даже завёл себе аккаунт на Bitbucket, но почему-то я им так и не пользовался. Я залил туда один репозиторий с CyD Network Utilities, но так и не использовал его. Сегодня я решил этот репозиторий удалить.
Судя по ценам, Bitbucket вполне приемлем. На нем бесплатно можно получить репозиторий, которым смогут пользоваться до 5 человек. Приятно. А ведь 5-ю аккаунтами может реально пользоваться 100 человек, так что ограничений почти нет :).
На github цены на много выше, тут бесплатно можно получить только открытый репозиторий. За личные репозитории придётся хорошо платить, за пять личных хранилищ кода придётся отдавать 7 американских долларов в месяц. Дороговато.
Имея собственный виртуальный сервер, вполне логично было бы поднять свой собственный git сервер. И это очень даже просто.
Сначала устанавливаем git, который скорей всего не стоит на сервере. Для этого подключаемся по ssh, и выполняем поступлю команду:
sudo yum install git
У меня на выделенном сервере сорит CentOS, для других дистрибутивов команда может выглядеть немного по другому.
Теперь нужно создать папку, где будут хранится репозитории. Я создал новую папку /var/git.
Теперь в этой папке я создал ещё одну папку myrepo, в которую залью свой первый проект. Я дал к ней полный доступ для всех. Все, кто сможет подключиться к серверу, смогут получить доступ и к репозиторию. Я единоличный пользователь сервера, поэтому могу так делать.
Перешёл в эту папку и проинициализировал новый репозиторий двумя командами:
git init
git config --bool core.bare true
Теперь уж со своего компьютера я перешёл в папку, где у меня уже расположен код сайта, который я хочу положить в этот репозиторий, и выполнил команду:
git clone ssh://mflenov@XX.XX.XX.XX//var/git/myrepo
Я предпочитаю работать через SSH - быстро и безопасно. У пользователя mflenov есть право доступа к серверу и соответственно к папке репозитория, поэтому тут никаких проблем.
Теперь можно работать со своим собственным приватным git сервером.
Кто не в курсе, что такое git, о нем я писал в статье git - современное управление кодом.
Понравилось? Кликни Лайк, чтобы я знал, какой контент более интересен читателям. Заметку пока еще никто не лайкал и ты можешь быть первым
Посмотри в сторону GitLab - это такой миниатюрный гитхаб на своём собственном сервере. Бесплатной версии вполне хватает для небольшой команды. Все-таки веб-интерфейс - это приятнее чем голая консоль
Ну мне Web интерфейс не нужен, я люблю командную строку. Мне с ней проще, удобнее и быстрее. Команды все достаточно простые.
Не понял чем Bitbucket в итоге не угодил. Даже для небольшой команды его достаточно, а для себя так тем более. Бесплатно и доступно всюду где есть инет, так же не надо заботится о бэкапах, в отличии от своего сервера.
Я не знаю, я им просто не пользовался. Предпочитаю свое собственное хранилище
Bitbucket и Github удобно использовать когда нужен gui интерфейс к коду проекта. И когда не хочется содержать свой сервер. Для командной работы не всегда достаточно git'a установленного на удаленном сервере. Так как он не имеет инструментов для управления правами доступа (Хотя если у всех в команде одинаковые права, тогда хватит). Для управления правами доступа придется ставить что-то вроде gitolite и копаться в его настройках, потом проверять правильно ли все настроилось (в Github и Bitbucket это делать удобнее)
Кроме того при командной работе периодически приходится делать code-review. Для этого удобно использовать пулл-реквесты. Обе платформы предоставляют замечательные инструменты для просмотра различий между ветками, и возможность комментировать отдельные участки кода.
Для самостоятельных разработок git'a на сервере вполне достаточно. Но если разработка ведется командой, лучше не пожалеть немного денег и завести аккаунт на Github или Bitbucket.
Кстати, имея репозитарий на Bitbucket'e для личных проектов, я тоже редко использовал его возможности. И в 99% вся работа с ним сводилась к 2-м командам: git push и git pull
Для заметки. Под винду есть бесплатный и простой в установке сервер - https://bonobogitserver.com/
Хотите найти еще что-то интересное почитать? Можно попробовать отфильтровать заметки на блоге по категориям.