За последние 24 часа нас посетили 55717 программистов и 1711 роботов. Сейчас ищут 1047 программистов ...

система контроля версий. Что это такое и с чем ее едят?

Тема в разделе "PHP для новичков", создана пользователем eldor, 11 авг 2015.

  1. eldor

    eldor Активный пользователь

    С нами с:
    3 май 2013
    Сообщения:
    202
    Симпатии:
    20
    Я медленно, но верно (имхо) создаю браузерку. И вот недавно, познавая что-то новое для себя в данной области, наткнулся на новое словосочетание для себя "система контроля версий"(далее СКВ). Общий смысл данного словосочетания для меня понятен, а вот его практическая часть - не совсем... На сколько я понял, СКВ даёт возможность безболезненно заливать на хостинг обновленные файлы со скриптами. А можно ли сделать то же самое самому? Т.е. остановить браузерку на время и перезалить файлы, предварительно протестив их на тестовом сервере.
     
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
  3. VLK

    VLK Старожил

    С нами с:
    15 дек 2013
    Сообщения:
    3.010
    Симпатии:
    58
    Начиная с какой то версии объявить массив стало возможным следующим образом:
    Код (PHP):
    1. $array = [];
    2. // за место $array = array(); 
    соответственно если тебе попадется хостинг ДО, то все закончится ошибкой и код работать не будет, по этому твое СКВ это всего лишь проверка версии, если она ниже необходимой то должно происходить что то типа:
    Код (PHP):
    1. die('чмошная версия РНР'); 
    после того как ты увидишь эту надпись, ты должен бежать к хостеру что бы он обновлял версию или искать новый хостинг, все.
     
  4. eldor

    eldor Активный пользователь

    С нами с:
    3 май 2013
    Сообщения:
    202
    Симпатии:
    20
    В общем понятно. Спасибо за ответы.
     
  5. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    Возможно, имеется ввиду система управления версиями, в этой ситуации речь идет о таких программах как CVS, Subversion aka SVN, Git и еще несколько.
    Их главная функция, от которой происходит название, это сохранение истории всех изменений в файлах проекта. Файлы сохраняются (commit) в хранилище (repository), при этом старая версия файла не стирается. Вместо этого создается новая версия (revision). Система управления версиями позволяет проследить, что менялось в проекте за всё время разработки и в любой момент вернуться к любой прежней версии.
    Система управления версиями очень важна для совместной разработки.
     
  6. eldor

    eldor Активный пользователь

    С нами с:
    3 май 2013
    Сообщения:
    202
    Симпатии:
    20
    Благодарю. Теперь ещё больше осознал, что на изучние СВК не стоит тратить время.
     
  7. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    Да, Deploy это не главное в управлении версиями. Хотя можешь прикинуть, насколько полезной может быть возможность быстро вернуть на хост старую версию игры, если что-то в новой пошло не так.
     
  8. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    [​IMG]
     
  9. eldor

    eldor Активный пользователь

    С нами с:
    3 май 2013
    Сообщения:
    202
    Симпатии:
    20
    Оригинально))))
    Почему зря-зря? Зря?))
    Единственной причиной, которая могла бы меня заставить углубиться в данную тематику (имхо) - это, если какой-нибудь хакер сможет редактировать мои скрипты прямо на сервере без моего ведома, а СКВ это могла бы отследить по дате или по весу и сообщить мне, но такие манипуляции можно сделать и самому.
     
  10. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    А кодишь ты в блокноте?
     
  11. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Потому что, когда в проекте что-то будет запорото, поломано, и нужно будет откатиться на вчерашнюю рабочую версию, станет мучительно больно, когда окажется, что инструментария, который в одно движение мог бы это сделать, не будет. Плюс, обычно, локальное репо синхронизируют с внешним. Даже если мой компьютер завтра распадется на атомы, я без труда вытащу свои проекты с ГитХаба или БитБакета. Со всей историей изменений. А что будете делать вы в подобной ситуации?

    А если, скажем, решили пустить, эксперимента ради, альтернативную ветку разработки. Копировать весь проект? перебивать пути? А если потом нужно будет с 2 или 3 веток совместить наработки в одну единую? Копипастить? Сверять руками? Искать, где что отличается и подгонять? Системы контроля версий позволяют решать такие проблемы как нефиг делать. Все вышеперечисленные. Для того они и существуют.

    Много времени на их освоение не нужно. А вот пользы от них - вагон и телега, при том, что есть не просят.
     
  12. eldor

    eldor Активный пользователь

    С нами с:
    3 май 2013
    Сообщения:
    202
    Симпатии:
    20
    В Notepade.
    Рассказ убедительный. Какой можешь посоветовать для моей задачи? СКВ предлагает хостер или сам каким хочешь таким и пользуешься?
     
  13. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    [​IMG]

    1) Выбирай между SVN, GIT и HG(он же Mercurial). Я пользуюсь именно меркуриалом. Они с GIT-ом в общих чертах почти как братья. SVN стоит особнячком. Советую почитать их обзоры, сравнения. Список только из трех данных систем выдан по причине того, что они гарантированно поддерживаются на 99% хостингов репозиториев.
    2) Про хостера не совсем понял. Есть внешние репозитории. Самые популярные - Github и BitBucket. Я пользуюсь вторым, потому что во-первых роднее, во-вторых, можно делать приватные репозитории. Регаешься, открываешь репозиторий, настраиваешь, получаешь ссылку для выгрузки, выгружаешь по ней через клиент свой проект. Готово. Один раз настроить, после чего останется только кнопочку жмакать, чтобы проект уходил в облако.
     
  14. eldor

    eldor Активный пользователь

    С нами с:
    3 май 2013
    Сообщения:
    202
    Симпатии:
    20
    Я раньше пользовался phpdesigner. Он меня устраивал всем кроме одного - не сворачивал код как notepad... Сделали бы такую функцию - цены не было бы ему... (имхо)


    Спасибо за информацию.
     
  15. Fell-x27

    Fell-x27 Суперстар
    Команда форума Модератор

    С нами с:
    25 июл 2013
    Сообщения:
    12.156
    Симпатии:
    1.771
    Адрес:
    :сердА
    Попробуйте phpStorm. Как по мне - идеальнейшая IDE для веба. И, разумеется, умеет сворачивать код :)
     
  16. eldor

    eldor Активный пользователь

    С нами с:
    3 май 2013
    Сообщения:
    202
    Симпатии:
    20
    Спасибо Вам за совет - попробую)).
     
  17. eldor

    eldor Активный пользователь

    С нами с:
    3 май 2013
    Сообщения:
    202
    Симпатии:
    20
    А на русском есть phpstorm? Что-то с ходу на русском найти не могу...
     
  18. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    eldor лучше использовать на английском, так проще, используй online переводчик, например https://translate.google.com/
     
  19. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.128
    Симпатии:
    1.248
    Адрес:
    там-сям
  20. eldor

    eldor Активный пользователь

    С нами с:
    3 май 2013
    Сообщения:
    202
    Симпатии:
    20
    Да я уже не раз так думал делать, но не очень хочется ещё и на это время тратить... Т.к. программированием занимаюсь в свободное от основной работы время (не считая ещё и домашних дел)... Единственно я пользуюсь переводчиком для хоть какой-то логики для имен переменных и функций, чтобы не сильно путаться.
     
  21. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.128
    Симпатии:
    1.248
    Адрес:
    там-сям
    ну тогда на программирование не трать время. оптимизируй себя )))
     
  22. eldor

    eldor Активный пользователь

    С нами с:
    3 май 2013
    Сообщения:
    202
    Симпатии:
    20
    Программирование для меня хобби))) Так что я не хочу таким образом себя оптимизировать)))
     
  23. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    eldor почти все термины и документация на простом английском, без знания будет всё очень долго учиться, легче выучить 1000 самых используемых английских слов в письме, чем искать документацию на русском или разбираться с IDE на русском.
     
  24. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    eldor, для меня тоже хобби, я как начинал программировать NetBeans у меня был на английском. И это не должно парить.
     
  25. eldor

    eldor Активный пользователь

    С нами с:
    3 май 2013
    Сообщения:
    202
    Симпатии:
    20
    Буду пробовать на английском, если терпения хватит)))