GIT. Используете ли Вы?
167 повідомлень
#15 років тому
Кто использует систему управления версиями, - поделитесь опытом, знанием и впечатлением
13 повідомлень
#15 років тому
Цитата ("Demiurh"):смысла особого нет
Есть смысл, есть... Особенно когда нужно откатить изменения к определенному моменту в прошлом или посмотреть - "а что это я там такое делал?"

Я использую SVN. Очень полезно

205 повідомлень
#15 років тому
Цитата ("deHimer"):Кто использует систему управления версиями, - поделитесь опытом, знанием и впечатлением
пытаюсь, но с переменным успехом пока что... нада голову перестроить после svn
167 повідомлень
#15 років тому
Все таки есть люди знакомые с этим) Почему бесполезна? Я думаю польза немалая.
Раньше я каждую версию/этап программы хранил в отдельной версии. А тут тебе покажут что и где ты в последний раз наделал
133 повідомлення
#15 років тому
Юзаю SVN. Немного сложновато было настроить синхронизацию между хранилищем и продакшеном, но в целом очень доволен...
771 повідомлення
#15 років тому
А не мог бы кто-нибудь внятно и в двух словах рассказать про ГИТ и о его основных отличиях от СВН? а то многие хвалят, а я всё на свн-е
167 повідомлень
#15 років тому
Что бы не пересказывать, вырежу:Девять причин перейти на Git
Обновление: см. также пост «Всё, что нужно знать про Git».
Когда-то я рекомендовал CVS, если вы пользуетесь системой контроля версий в основном для резервного копирования, и что-нибудь вроде Mercurial, если видите в этом искусство.
Теперь всё изменилось. Я однозначно рекомендую одну систему контроля версий для любых потребностей: Git.
Причины:
0. Я бы даже не стал упоминать это, но ведь кто-нибудь спросит. Git — распределенная система контроля версий (разумеется). Дальнейшее описывает, почему он лучше Mercurial, Bazaar, darcs и др.
1. Репозиторий остаётся в ваших руках. В CVS, например, файлы имели вразумительный формат, и к ним по большой потребности можно было применить /dev/hands или /usr/bin/perl (что мно-о-ого раз спасало автора этих строк).
Ваши возможности в Git на порядок больше, поскольку весь его высокоуровневый интерфейс — это всего лишь набор скриптов, использующих утилиты низкого уровня в лучших традициях Unix. Теми же утилитами удобно править базу данных и вам. (В крайнем случае можно и руками — вся база хранится в зазипованых текстовых файлах простого формата, имя которых является SHA1-хешем содержимого.)
2. За git-commit --interactive можно продать душу. Этот минималистский консольный интерфейс для выбора входящих в коммит изменений лучше всех виденных мною GUI.
3. Двусторонняя синхронизация с CVS и Subversion. Если работодатель или автор любимого плагина имеет консервативные взгляды, вас это не остановит. (Правда, commit'ы в CVS экспортируются наполовину вручную.)
4. Man, it's sane. Логичный и предсказуемый. Скажем, мне нравится концепция index'а (и записи в него по git-add) и отслеживания перемещений по содержимому (команды вроде svn mv всегда доставляли одни проблемы). Естественно, это субъективная оценка.
5. Теперь есть адекватная версия для Windows. Разумеется, это не преимущество перед другими, но до появления MinGW-порта круг применений был ограничен. (Не попадайтесь на провокации и не качайте версию, которая пытается скомпилировать Git при инсталляции! Это всё проделки Ктулху. Инсталлятор нормальных бинарников работает отлично.)
6. Git умеет строить из себя CVS-сервер, так что ваша любимая IDE будет с ним общаться, как с родным. (С другой стороны, под OS X мне удобнее пользоваться командной строкой, чем поддержкой в IDE.)
7. Git имеет красивый веб-интерфейс out of the box. Я привык выбирать продукты, хорошо работающие из коробки, и это для меня хороший знак. (Ср. с убогой умолчательной темой у Mercurial.)
8. Формат репозитория дружелюбен к rsync, обычному HTTP и backup'ам. Коммиты только добавляют новые файлы, не изменяя существующих. (Не считая файлов-ссылок вроде HEAD и refs/heads/master, но их мало и они очень маленькие.) Файлы репозитория можно раздавать через HTTP любым веб-сервером. Эффективно работает rsync. (Однако: после push'а изменений через тупой протокол на сервере нужно выполнить специальную команду Git, обновляющую некоторые файлы.)
9. Как следует из пункта 1, с использованием низкоуровневых утилит можно писать свои скрипты, делающие что-то интересное и новое. Многие этим воспользовались, так что у Git есть расширения (например, для patch queues, если вам сиё актуально) и альтернативные интерфейсы.
Одним словом, что бы вы ни думали про ядро Linux, за создание Git Линуса Торвальдса точно можно уважать.
Недостаток один — в процессе работы (иногда) требуется вовлечение мозга. Впрочем, всё реже и реже — например, магическое заклинание «git-reset --hard HEAD^» / «git-commit -c ORIG_HEAD» теперь стало частью «git-commit --amend». В любом случае, перед применением Git вам придется разобраться в его внутренностях (вся информация есть в tutorial'е и в man'ах).
Смотрим и наслаждаемся: Linus Torvalds on git (Google Tech Talk).
посилання
167 повідомлень
#15 років тому
Цитата ("alexander_vip"):А не мог бы кто-нибудь внятно и в двух словах рассказать про ГИТ и о его основных отличиях от СВН? а то многие хвалят, а я всё на свн-е
Так чем же Git так замечателен? Ну, в двух словах, просто потому что он мощный и распределённый.
это отсюда
посилання
если честно я вряд ли что то насоветую, сам только осваивать начал
52 повідомлення
#15 років тому
Цитата ("Demiurh"):Пытаюсь освоить SVN, но т.к. я один - смысла особого нет.
Мне тоже в одиночку приходится работать над несколькими проектами, но во всех случаях первое, что я делаю для нового проекта - это создание SVN-репозитория. И ни разу об этом не жалею, как раз, наоборот. Многих клиентов уже подсадил на использование SVN. Их, когда они прочувствовали смысл, тоже теперь не разубедишь в полезности использования систем контроля версий. Даже для маленьких "одноразовых" скриптов у меня есть отдельная ветка, к которой иногда обращаюсь и почти всегда нахожу там много полезного

Что касается GIT, то слышал о нем много хорошего, даже однажды попытался воспользоваться. Сходу несколько коммитов сделать получилось, но до конца в системе не разобрался, а потом и надобность в использовании GIT пропала. В принципе, пока значимых для себя недостатков в SVN не вижу, поэтому не горю желанием с него уходить
